Ett säkrare ( jmf. "telnet=klartext", "ssh=krypterat") sätt för att kommunicera mellan datorer, jag vill komma åt min "stationära" (hakan=192.168.100.2) med min "laptop" (zenita=192.168.100.4), här ser du mitt Nätverk, några bra sidor för att förstå vad det igentligen handlar om.
http://www.linuxjournal.com/article/4412 http://www.linuxjournal.com/article/4413 Installera "Slackpaketen" openssh, openssl, openssl-solibs, zlib på båda datorerna. Alla "värden" är naturligtvis "fejkade", men det förstår ni naturligtvis.. ;-)
Filen /etc/tc.d/rc.sshd används för att starta "ssh-demonen" som behövs på den dator du vill åt, se till att den är "körbar" (+x), och att detta finns i din /etc/rc.d/rc.inet2..
# Start the OpenSSH SSH daemon: if [ -x /etc/rc.d/rc.sshd ]; then echo "Starting OpenSSH SSH daemon: /usr/sbin/sshd" /etc/rc.d/rc.sshd start fi ..och naturligvis att du använder dig av den, d.v.s detta i /etc/rc.d/rc.M # Start networking daemons: if [ -x /etc/rc.d/rc.inet2 ]; then . /etc/rc.d/rc.inet2 fi ..så startar den automatiskt vid uppstart. Konfigurationsfilerna tillsammans med dom olika "nycklar" som skapas första gången "sshd" startar finns i /etc/ssh. Jag måste också öppna port 22 i min Brandvägg. Säkerhet När jag får "nyckeln" id_dsa.pub från "titus@zenita" lägger jag den i /home/hakan och skapar en textfil authorized_keys i /home/hakan/.shh/ för att sedan.. $ cat id_dsa.pub >> /home/hakan/.ssh/authorized_keys ..samt ändrar "rättigheter".. $ chmod 600 authorized_keys Sedan ändrar jag min /etc/ssh/sshd_config så det blir lite säkrare.
Utan att ställa in någonting, alltså bara det som är "förvalt" provar jag logga in till min användare "hakan" på "servern"..
$ ssh -l hakan 192.168.100.2 The authenticity of host '192.168.100.2 (192.168.100.2)' can't be established. RSA key fingerprint is ce:3d:67:b7:ce:9b:c4:a1:96:8d:7a:b3:e5:38:d0:8e. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '192.168.100.2' (RSA) to the list of known hosts. ..så här långt kan "vem som helst" komma (servern använder /etc/ssh/ssh_host_rsa_key.pub), nu öppnas en "krypterad" förbindelse så att "hakans lösen" inte sänds i "klartext".. hakan@192.168.100.2's password: "hakans lösen" Last login: Sat Feb 18 21:48:22 2006 Linux 2.6.13. xhost: unable to open display "" hakan@hakan:~$ ..det fungerar, då stänger jag.. hakan@hakan:~$ exit logout Connection to 192.168.100.2 closed. Säkerhet Nu ska jag göra nycklar, jag väljer "dsa-modellen" (-d), för min vanliga användare på "laptopen" (titus@zenita).. titus@zenita:~$ ssh-keygen -d Generating public/private dsa key pair. Enter file in which to save the key (/home/titus/.ssh/id_dsa): ta förval, tryck "enter" Enter passphrase (empty for no passphrase): "blabla" Enter same passphrase again: "blabla" Your identification has been saved in /home/titus/.ssh/id_dsa. Your public key has been saved in /home/titus/.ssh/id_dsa.pub. The key fingerprint is: 0e:ec:ea:0d:37:68:c3:df:62:a8:cb:3f:3e:2f:cd:72 titus@zenita ..och så använder jag "scp" som du kan se nedan under "kopiera filer" (du kan också använda "e-post" eller "nfs", det är ju den "publika" nyckeln så säkerheten är inte så viktig.) för att kopiera id_dsa.pub till "servern". Till slut kopierar jag konfigurationsfilen.. $ cp /etc/ssh/ssh_config /home/titus/.ssh/config ..samt ändrar "rättigheter".. $ chmod 600 config Här ser du min config, då provar jag.. titus@zenita:~$ ssh -l hakan 192.168.100.2 Enter passphrase for key '/home/titus/.ssh/id_dsa': "blabla" Last login: Mon Feb 20 05:51:38 2006 from zenita Linux 2.6.13. xhost: unable to open display "" hakan@hakan:~$ Fungerar.. :-), då är det dags för grafik, som du ser så har jag raden ForwardX11 yes i båda konf-filerna.
Jag börjar med att ge "hakan" rätt att använda "X".. titus@zenita:~$ xhost +hakan hakan being added to access control list titus@zenita:~$ ssh -l hakan hakan Enter passphrase for key '/home/titus/.ssh/id_dsa': "blabla" Last login: Thu Feb 23 18:33:50 2006 from zenita Linux 2.6.13. non-network local connections being added to access control list xhost: must be on local machine to add or remove hosts. hakan@hakan:~$ konqueror X Error: BadAtom (invalid Atom parameter) 5 Major opcode: 20 Minor opcode: 0 Resource id: 0xfe X Error: BadWindow (invalid Window parameter) 3 Major opcode: 2 en massa felmeddelanden, men till slut..
..ser väl bra ut! :-)
Jag märkte sedan att jag inte behövde köra "xhost +hakan", varför begriper jag inte riktigt, så jag vore tacksam för ett klarläggande.
Syntax: scp [ options ] "källfilsträng" "målfilsträng" Jag ska kopiera /home/titus/.ssh/id_dsa.pub på "laptopen" till /home/hakan på "servern". titus@zenita:~$ scp /home/titus/.ssh/id_dsa.pub hakan@hakan:/home/hakan/ Enter passphrase for key '/home/titus/.ssh/id_dsa': "blabla" id_dsa.pub 100% 1114 1.1KB/s 00:00 ..eller tillbaka.. titus@zenita:~$ scp hakan@hakan:/home/hakan/id_dsa.pub /home/titus/ Enter passphrase for key '/home/titus/.ssh/id_dsa': "blabla" id_dsa.pub 100% 1114 1.1KB/s 00:00 ..fungerar utmärkt! :-)
Om detta kan skrivas "spaltkilometrar", mitt enda råd angående det är.. Se till att du vet vad du gör, "tro" inte! ..som du förstår innebär det läsa, läsa, läsa.. ;-)..inte så kul alla gånger men som tur är finns ju också slack-forumet. Till sist, så här svarar det om jag försöker komma in som någon annan.. titus@zenita:~$ ssh hakan Permission denied (publickey,keyboard-interactive). titus@zenita:~$ su Password: "rootlösen" root@zenita:/home/titus# ssh hakan The authenticity of host 'hakan (192.168.100.2)' can't be established. RSA key fingerprint is ce:3g:66:b9:cf:9b:c2:a1:93:8f:7b:a3:e5:38:d0:8e. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'hakan' (RSA) to the list of known hosts. Permission denied (publickey,keyboard-interactive). ..vilket duger för mig. :-)