SSH 서버 IP 주소 : 192.168.10.197
windows IP 주소 : 192.168.10.196
1) SFTP 접속 허용 / 거부
Subsystem sftp /usr/libexec/openssh/sftp-server
해당 부분이 주석처리 되어 있으면 SFTP 로 접속이 불가능 하고, 주석처리가 되어 있지 않은 상태면 SFTP 접속이 허용된다.
일단 주석처리가 되어 있지 않은 상태에서 SFTP 로 접속을 확인해 본다.
접속이 허용된다.
이제 해당 부분을 주석처리하고 접속을 시도해 보자
이렇게 '#' 을 붙여 주석처리를 수행하고 접속을 시도해본다
( systemctl restart sshd-service ) 를 수행 해야함
단지 주석처리만 했을뿐이지만 sftp 접속이 허용되지 않는다.
2) root 계정으로 로그인 허용 / 거부 설정
해당부분의
#PermitRootLogin yes
부분이 주석처리 되어있으나,
이부분의 설정이 기본적으로 yes 로 동작하며,
yes면 root 접속 허용 / no 면 root접속 거부가 된다.
먼저 주석을 제거하고 수행해본다.
yes 로 설정되어 있기 때문에 root로의 접속이 허용된다.
이번엔 해당 설정을 no 로 하고 접속을 시도해 보자
root 로의 접속이 허용되지 않는것을 확인할수 있다.
3) 특정 유저의 접속을 거부
위와같이 수정한후, hong 계정이 접속 불가능하게 해보자
위와같이 Access 가 거부됨을 확인할수 있다.
4) hosts.deny 파일을 이용한 ip차단
해당 파일에
sshd : 192.168.10.196 ( 윈도우 ip주소 ) 를 적고 sshd 를 재시작한다.
해당 주소의 ip를 거부하니 접속 자체가 차단됨을 알수있다
* 주의 할것! *
이미 세션 연결설정이 된후, ip를 차단한다던가, ssh의 구성설정을 바뀌면,
이미 연결된 세션은 연결이 유지가 된다.
위와같이 IP 를 차단했음에도, 차단하기전에 세션연결이 완료되었기 때문에 접속이 끊기지 않는다.
리눅스에서 ps 명령어를 수행해도 살아있음을 알수있다.
이럴경우 kill 명령어로 연결을 강제 종료 해야한다
kill 로 해당 프로세스를 죽이니 바로 연결이 끊겼다.