Někdy je z bezpečnostních důvodů potřeba mít samostatný port pro ssh a sftp na CentOS/RHEL. Zde je krátký návod, jak nakonfigurovat SSH na portu 2222 a SFTP pro práci na portu 22.
1. Od openssh-5.3p1-117.el6.x86_64 pro oddělení portu ssh a sftp na systémech CentOS/RHEL proveďte změny v souboru /etc/ssh/sshd_config soubor a přidejte následující úpravy.
# vi /etc/ssh/sshd_config Port 22 Port 2222
2. Zakomentujte výchozí subsystém a přidejte níže uvedený subsystém.
# vi /etc/ssh/sshd_config Subsystem sftp internal-sftp
Přidejte níže uvedené řádky na konec souboru /etc/ssh/sshd_config
# vi /etc/ssh/sshd_config Match LocalPort 22 AllowTCPForwarding no X11Forwarding no ForceCommand internal-sftp
3. Po provedení úprav stačí uložit a restartovat službu sshd.
# service sshd restart
To umožní port 22 pouze pro připojení sftp. Port 2222 lze použít pro ssh na server.
Ověřit
Ověříme naši konfiguraci. Nejprve zkuste ssh na server s výchozím portem (22). Mělo by selhat, jak je znázorněno v příkladu níže:
# ssh [email protected] [email protected]'s password: This service allows sftp connections only. Connection to 192.168.10.12 closed.
Nyní zkuste ssh poskytnutím portu 2222. Tentokrát by to mělo uspět.
# ssh -p 2222 [email protected] [email protected]'s password: Last login: Mon Apr 17 15:23:58 2018 from ......
Jako poslední ověření zkuste sftp do systému s výchozím portem, tj. 22:
# sftp [email protected] Connecting to 192.168.10.12... [email protected]'s password: sftp>