Kilka porad dotyczących konfiguracji serwera SSH.

Ważne opcje w pliku /etc/ssh/sshd_config:

  1. Port 9022 – Zmiana portu – pamiętajmy otworzyć nowy port na firewallu, ogranicza ruch hackerów mocno
  2. LogLevel VERBOSE – generuje więcej detali w pliku /var/log/auth.log
  3. PermitRootLogin no – zabrania logowania się bezpośrednio do root-a, można to uczynić logując się na innego użytkownika a następnie poleceniem su root zalogować się na konto administratora
  4. PasswordAuthentication no – wyłącza logowanie się za pomocą użytkownika i hasła. UWAGA! Zanim to zmienisz sprawdź, czy potrafisz logować się do systemu za pomocą pliku certyfikatu (wymaga to przygotowania pary kluczy, o tym w innym poście)
  5. X11 Forwarding no – bez komentarza

Ograniczamy dostęp do SFTP tylko do katalogu HOME (koniec pliku, remujemy Subsystem i dodajemy swój). Właścicielem katalogu /home musi być root, grupa ftpusers będzie miała ograniczony dostęp. Należy wyremować domyślną linię Subsystem i dodać inną. Jednak spowoduje to, że SSH przestanie działać bo tam też zmieni się katalog Chroot i nie będzie dostępu do programów. Więc dodajemy te wpisy tylko w przypadku uruchamiania SFTP bez możliwości SSH:

1
2
3
4
5
6
7
8
#Subsystem sftp /usr/lib/openssh/sftp-server

Subsystem sftp internal-sftp
Match Group ftpusers
    ChrootDirectory /home
    AllowTCPForwarding no
    X11Forwarding no
    ForceCommand internal-sftp