흐르는 시간의 블로그...

출처 : http://anipage.tistory.com/766

출처 : http://rootrator.tistory.com/tag/ssh%EC%B0%A8%EB%8B%A8

ssh 로그인 할때 root 로 직접 로그인 하지 못하도록 막는 방법입니다.

#vi /etc/ssh/sshd_config

아래부분의 주석을 해제하고 no 로 수정

PermitRootLogin no

#/etc/rc.d/init.d/sshd restart 프로세스 재시작

------------------------------------------------------------------------------------

------------------------------------------------------------------------------------

간혹 특정 서버의 Sucure로그를 보면 해외IP로 무수히 많은 SSH접근을 시도한 흔적이 있었다.


그래서 특정 IP또는 특정 계정만 접속이 가능하도록 설정을 하였다.

먼저 특정 IP만 SSH가 가능하도록 설정을 하기 위해선

일단 SSH를 전부 차단하도록 하자.

[root@localhost ~]# vi /etc/hosts.deny

sshd : ALL

위 설정으로 모든 호스트(IP)는 ssh 사용이 불가능하다.

이후에

[root@localhost ~]# vi /etc/hosts.allow

sshd : xxx.xxx.xxx. : ALLOW (C클래스 단위 ssh접속 허용)
sshd : xxx.xxx.xxx.xxx : ALLOW (단일 호스트 ssh 접속허용)


hosts.deny와 hosts.allow는 deny가 먼저 적용 된 후에 allow가 적용이 된다.

이제 ssh서비스를 재시작하면 끝.


계정을 차단하기 위해선 pam을 이용해야 한다.

[root@localhost ~]# vi /etc/pam.d/sshd

account required pam_access.so

해당 줄을 추가 해준다음

[root@localhost ~]# vi /etc/security/access.conf

-:ALL EXCEPT 계정1, 계정2:ALL

위 내용추가한 후에는 access.conf에 정의해준 계정 이외엔 SSH접속이 불가능하다.