Portál AbcLinuxu, 4. května 2025 15:32
#!/usr/bin/expect
set PASSWORD "1234"
spawn "./syncdata.sh"
expect "password:"
send "$PASSWORD\r"
interact
Cron tento script spustí, ale zastavi sa pri zadavani hesla. No keď tento script spustim manualne, tak mi to pekne beží. Zada si to automaticky heslo a synchronizuje. Kde môže byť chyba ? Ďakujem.
Cron príkaz: 1 0 1 1 * /Users/Apple/transfer.exp
~/.ssh/authorized_keys
.ssh/authorized_keys/
? Nemá tam co pohledávat.
Pokud jsi do toho klíče uložil heslo, tak ho samozřejmě při přihlašování bude vyžadovat. Pro tento účel se dělá klíč bez hesla s jiným názvem. Aby se toho nedalo zneužít, tak se do klíče na serveru přidá příkaz, který se má provést při přihlášení na server. Nic jiného se na něm neprovede.
Doporučuji ten klíč pojmenovat jinak, než "id_dsa". Například "zalohovani". Bude se tedy nacházet v souboru .ssh/zalohovani.pub
. Pokud budeš chtít zálohovat, spustíš to na lokálu takto:
ssh -i zalohovani user@servera na serveru se provede příkaz, který se nachází v souboru
.ssh/authorized_keys
na řádku s tvým veřejným klíčem. Těch klíčů tam může být totiž víc, na každém řádku jeden.
userclient
na client
masine pripaja ako user
na server
.
odtestuj najskor spravnost passwordless pripojenia pod userlinet
z client
pomocou ssh -vvv user@server
.
over si
ssh-keygen,
malo by tak byt by defualt). maximalne dovolene: pub key 644, private 600, owner je userclient
~client/.ssh/authorized_keys
sa nachadza spravne pubkey, napriklad:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDaeuha+94Ug1hD8bCc.......<trimmed output>.............
userclient
viac klucov, mozes ten spravny specifikovat cez ssh -i /path/to/the/key
ssh-copy-id
, který nakopíruje vytvořený veřejný klíč na server přes ssh. Přiložil jsem ho (54 rádek). je z openSUSE. Netuším, jestli se třeba na OS X nemusí přiohnout nějaké proměnné prostředí.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.