|
|
BASH script - vstup
|
13.10.2007 18:17
Jan Vaněk
|
Ahoj, programuju si v BASHi script a snazim se tam prihlasit roota prikazem: su , kdyz script spustim prikaz probehne v poradku a chce to po me heslo.
Nevite nekdo, jak to plne automatizovat (nejaky prikaz), aby to provedlo prikaz 'su' a hned za nim to nahrnulo prislusne heslo? Dik za rady... |
|
|
Re: BASH script - vstup
|
13.10.2007 18:53
Aleš Hakl
|
Dalo by se ocekavat, ze to proste nejde. Otazkou je co presne chcete dosahnout. (Asi by bylo vhodne pripomenout, ze podobne jako nelze automatizovat su, tak nejde vytvorit set UID skript) |
|
|
Re: BASH script - vstup
|
14.10.2007 11:41
Jan Vaněk
|
Ano, to je mozne ze to vubec nelze. Ptal jsem se proto, ze jsem se s tim take nesetkal - ale tak co kdyby...
Proste jsem si vytvoril script, ponevadz mam modem D-link a chci se pripojit na vzdalene PC pres ssh tak musim pri kazdem pripojeni udelat prikaz iptables... abych se mohl pripojit - na to jsem si vytvoril script, ve kterem mam hned i prikaz ssh pocitac, coz po me potom chce heslo - tak jsem si myslel, jestli by neslo tam to heslo hrnout hnedka, abych to nemusel pokazde zadavat...
Jinak dekuju za pomoc. |
|
|
Re: BASH script - vstup
|
14.10.2007 12:39
Aleš Hakl
|
Tak ssh je jiny pripad. Jednak by to slo nejakou magii s SSH_ASKPASS (coz bych povazoval za spatny napad) a nebo pouzitim klice (coz je to spravne reseni), timhle by se dalo i emulovat su (ale opet, nepovazoval bych to za nejlepsi napad). Pokud potrebujete jako jeden konkretni uzivatel spoustet jeden konkretni prikaz jako root (nebo obecne jiny uzivatel) bude asi nejjednodussi si v C napsat triradkovy set-UID programek typu:
#include <stdlib.h>
int main(int argc, char**argv){
system("iptables ... bla bla ...");
} |
|
|
Re: BASH script - vstup
|
15.10.2007 17:08
Jiří Lisický
|
Můžete si nastavit sudo (a třeba i bez hesla). Napsat si script, který se bude pouštět přes sudo s právy root. |
|
|
Re: BASH script - vstup
|
14.10.2007 19:42
Martin Kumst
|
Doporucuji pouziti vecicky jmenem expect ;) |
|
|
Re: BASH script - vstup
|
14.10.2007 20:49
Aleš Hakl
|
Expect je vam na automatizaci zadavani hesla po vetsinou na nic. Protoze rozumne programy si pro zadani hesla otevrou /dev/tty at uz je stdin co chce (takle se chova treba ssha nebo koneckoncu libc getpass(3)), pripadne pokud stdin neni terminal, tak nefunguji vubec (to dela treba su).
Navic, kdyby to tedy slo, by byl expect na zadani hesla znacny overkill. |
|
|
Re: BASH script - vstup
|
23.10.2007 18:28
František Bublík
|
Expectem to lze, ba rekl bych ze je na takoveto vecicky delany. Tim <b>netvrdim</b>, ze by se mel uprednostnovat pred ssh klici. Prvni skripty, ktere pri dotazu na expect z googlu vyskoci, resi automaticke prihlasovani pro ftp. No a ssh lze take:
# set Variables
set password [lrange $argv 0 0]
set ipaddr [lrange $argv 1 1]
set scriptname [lrange $argv 2 2]
set arg1 [lrange $argv 3 3]
set timeout -1
# now connect to remote UNIX box (ipaddr) with given script to execute
spawn ssh root@$ipaddr $scriptname $arg1
match_max 100000
# Look for passwod prompt
expect "*?assword:*"
# Send password aka $password
send -- "$password\r"
# send blank line (\r) to make sure we get back to gui
send -- "\r"
expect eof
Zdravim FB |
|
|
Re: BASH script - vstup
|
4.11.2007 20:39
gilhad
|
v Pythonu pouzivam pexpext presne pro tyto ucely - ssh na vzdaleny stroj, nekolik su-cek a vlastni praci. |
|
|
Re: BASH script - vstup
|
5.11.2007 13:01
Ondřej Čečák
|
Navic, kdyby to tedy slo, by byl expect na zadani hesla znacny overkill.
By byl expect na zadani hesla *pravdepodobne* znacny overkill, klice nejsou samozrejmost.
|
|
|
|
|
|
KOMENTARZE
|
Tylko zarejestrowani użytkownicy mogą dopisywać komentarze.
|
|
Szukanie oprogramowania
|
©Pavel Kysilka - 2003-2024 |
maillinuxsoft.cz | Design:
www.megadesign.cz
|