Root 계정으로 SSH에 로그인하지 못하도록 비활성화하는 방법을 이전 글에서 살펴보았습니다.
Ubuntu(우분투)에서 특정 IP에서만 SSH에 로그인하도록 허용하고 싶은 경우가 있을 것입니다. 이와 관련하여 다음 글에서 다루고 있습니다.
예를 들어, ssh-key로 192.168.2.5에서만 루트 로그인을 허용하고 다른 모든 IP의 루트 로그인을 금지하려는 경우:
/etc/ssh/sshd_config에 다음 코드를 추가합니다.
## Block root login to every one ##
PermitRootLogin no
## No more password login ##
PermitEmptyPasswords no
PasswordAuthentication no
## Okay allow root login with public ssh key for 192.168.2.5 ##
Match Address 192.168.2.5
PermitRootLogin yes
-T 옵션을 전달하여 sshd 구성을 확인합니다.
$ sshd -T
sshd 서버를 리로드/재시작합니다.
$ sudo /etc/init.d/ssh reload
또는 Debian/Ubuntu Linux의 경우:
$ sudo systemctl reload ssh
CentOS/RHEL/Fedora Linux의 경우:
$ sudo systemctl reload sshd
OpenBSD의 경우:
$ doas /etc/rc.d/sshd restart
FreeBSD의 경우:
$ sudo service sshd restart
다음 글도 참고해보시기 바랍니다.
- Can I block root ssh access from external notwork, but not from the local LAN (로컬 랜이 아닌 외부 네트워크에서의 루트 SSH 액세스를 차단할 수 있는가?)