2015년 11월 25일 수요일

[LiNuX] sftp 만 접근 가능한 계정 생성


계정을 생성 하면서 ssh 접근은 막고, 파일의 업로드, 다운로드를 위해 sftp 만 접근 하도록 해야 할 일이 생겼다.

root@localhost:~# useradd -m -s /bin/false <계정명>

root@localhost:~# useradd -m -s /bin/false testers

-s 옵션은 로그인 셸을 지정 하는 것인데, /bin/false 또는 /sbin/nologin, 데비안의 경우 /usr/sbin/nologin 을 지정 하여 계정을 생성 하면, sftp만 접근이 되는 계정이 생성 된다.

만약 이미 생성된 계정의 로그인 쉘을 변경 하고 싶다면, 아래를 참고 하여 root 권한으로 /etc/passwd 파일을 수정 한다.

testers:x:1006:1006::/home/testers:/bin/false

이렇게 생성된 계정은 ssh 로그인을 할 수가 없다. 아래는 root 권한으로 확인해본 결과 이다.

root@localhost:~# su - testers
root@localhost:~# ls
root@localhost:~# whoami
root

참고로, sftp 를 이용하여 상위 디렉토리인 /home 으로 이동 하지 못하게 하는 방법은 아래 와 같다.

root@localhost:~# chmod 711 /home

배포판 마다 다를 수도 있겠지만, /home의 경우 755(rwxr-xr-w)의 권한을 가지고 있다.

댓글 없음 :

댓글 쓰기