Potrebno je obezbediti da se mozemo logovati na udaljenu masinu bez lozinke. Zbog toga moramo napraviti svoj tajni i javni kljuc za povezivanje ssh protokolom (koga koriste scp/sftp klijenti). To cemo uraditi komandom ssh-keygen koja dolazi uz openssh paket mnogih linux distribucija (ako ne i svih):
# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/sf/.ssh/id_rsa):
Created directory '/home/sf/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/sf/.ssh/id_rsa.
Your public key has been saved in /home/sf/.ssh/id_rsa.pub.
The key fingerprint is:
...
Ovim smo napravili tajni (id_rsa) i javni (id_rsa.pub) kljuc. Taj javni kljuc potrebno je uneti u .ssh direktorijum (ne zaboraviti tacku na pocetku), u fajl authorized_keys (ako ne postoji, napraviti ga). Javni kljuc mozete prekopirati sa jedne na drugu masinu na nacin koji vam je najlaksi, ja obicno posaljem scp-om fajl:
# scp .ssh/id_rsa.pub user@server:
Ne zaboravite da treba da stoji dvotocka iza imena servera, pa putanja koju zelite.
i nakon toga otici na server i kopirati sadrzaj tog fajla u authorized_keys:
# ssh user@server
Password: *****
# cat id_rsa.pub>>.ssh/authorized_keys
Postupak za ssh kljuc sa dsa enkripciju je identican, sa malom razlikom sto se umesto rsa koristi dsa (ssh-keygen -t dsa). Ovo sve vazi za ssh protokol verzije 2.
Ovim smo omogucili da uradimo scp ili sftp sa date masine na server. Upotreba:
scp fajl user@server:/apsolutna/putanja/naziv_fajla
sftp user@server:/direktorijum
pwd
put *.*
quit
Ukoliko server nema scp mogucnosti (primer: windows freesshd), ovo vam moze posluziti za secure prenos fajlova na server, kome ste pre toga dostavili svoj kljuc... u ovom primeru cete u skriptama koristiti sftp za povezivanje sa windows serverom. U slucaju da morate da koristite sftp, koristicete ovako nesto u skriptama:
sftp user@server:/nula <<EOF
cd 1
rm *.*
cd ..
cd 2
rm *.*
put *.jpg
quit
EOF
Ovim cete na serveru u direktorijumu /nula/1 i /nula/2 obrisati sve, a potom iz tekuceg direktorijuma prebaciti sve jpeg-ove u /nula/2
Ukoliko nesto nisam ispustio, ovo bi trebalo da je sve.