Are you a developer? Try out the
SSH - BEZPIECZNA POWŁOKA
SSH jest programem umożliwiającym logowanie na serwerze zdalnym i w przeciwieństwie do
programu telnet posiada mechanizm silnego uwierzytelniania oraz szyfrowania sesji na podstawie
specjalnych kluczy.
Źródło programu zawierające serwer, klienta i dodatkowe oprogramowanie możemy znaleźć na stronie
domowej programu SSH :
Po udanej instalacji w katalogu /etc/ssh zostaną utworzone następujące pliki :
sshd_config - jest plikiem konfiguracyjnym serwera SSH
ssh_config - jest plikiem konfiguracyjnym klienta SSH
ssh_host_key - zawiera klucz prywatny serwera SSH
ssh_host_key.pub - zawiera klucz publiczny serwera SSH
W katalogu /etc/local/bin/ możemy znaleźć następujące programy :
ssh-askpass
- jest prostym programem dla X-Window służącym do wczytywania haseł
scp
- bezpieczny zamiennik dla komendy
rcp
Are you a developer? Try out the
ssh-add
- program służący do wprowadzania kluczy publicznych do agenta autentyfikacji
ssh-agent
- agent autentyfikacji
ssh-keygen
- generator klucza prywatnego i publicznego
ssh
- bezpieczny zamiennik dla
rsh
Katalog /etc/local/sbin zawiera następujące programy :
sshd
- jest serwerem SSH
Serwer SSH możemy uruchamiać zaraz po starcie systemu lub za pomocą superserwera inetd lub
xinetd.
Najważniejsze dyrektywy konfiguracyjne serwera SSH :
RhostsAuthentication no
RhostsRSAAuthentication no
RSAAuthentication yes
wybór metody autentyfikacji
Are you a developer? Try out the
Port
numer poru wykorzystywanego przez ssh
ListenAdress
parametr ten określa adres IP interfejsu, który będzie obsługiwany przez SSH
PermitRootLogin
określa, czy ssh umożliwi logowanie na konto administratora
HostKey /etc/ssh/ssh_host_key
RandomSeed /etc/ssh/ssh_random_seed
położenie pliku z kluczem i parametrem losowym
ServerKeyBits
dyrektywa określająca długość klucza
Are you a developer? Try out the
KeyRegenerationInterval
czas po jakim następuje odnowienie klucza (wartość w sekundach)
IgnoreRhosts
IgnoreRootRhosts
określa czy należy ignorować pliki : .rhosts, które wskazuje na zaufane hosty, z których można się
zalogować bez podawania hasła
RhostsAuthentication
RhostsRSAAuthentication
określa możliwość autentyfikacji za pomocą mechanizmu rhost
X11Forwarding
umożliwia szyfrowanie połączenia graficznego - X Window
XAuthLocation
określa program za pomocą którego należy dokonywać autentyfikacji użytkownika w środowisku
Are you a developer? Try out the
graficznym X Window
PrintMotd
określa możliwość wypisywania komunikatu powitalnego (/etc/motd)
Przykładowy plik konfiguracyjny :
SSH umożliwia również bezpieczne logowanie na zdalnej maszynie bez podawania hasła.
Aby skorzystać z tej możliwości należy wykonać następujące czynności :
zalogować się do systemu lokalnego, z którego będziemy łączyć się za pomocą klienta ssh
uruchomić program
ssh-keygen
, który wygeneruje klucz publiczny
(katalog_domowy/.ssh/identity) i klucz prywatny (/katalog_domowy/.ssh.identity.pub)
(w pytaniu o hasło należy pozostawić hasło puste)
skopiować plik identity.pub do katalogu /tmp komputera zdalnego
scp $HOME/.ssh/identity.pub serwer_zdalny:/tmp
zalogować się do systemu zdalnego
ssg serwer_zdalny
Are you a developer? Try out the
dołączyć plik /tmp/identity.pub do pliku .ssh/authorized_keys w katalogu domowym na
serwerze zdalnym
cat /tmp/identity.pub >> .ssh/authorized_keys
wylogować sie i ponownie zalogować przez ssh bez podawania hasła