저는 Ubuntu 10.04 LTS 서버를 실행하고 있으며 FTP에서만 서버에 액세스할 수 있는 사용자를 생성하고 싶습니다.
지금까지 내가 한 일은 다음과 같습니다.
- 설치하다
vsftpd
- 새 사용자를 생성하면 기본 로그인 셸이 다음으로 설정됩니다.
/bin/false
서버의 일반 사용자는 FTP를 통해 홈 폴더에 액세스할 수 있지만, 원격 셸 액세스를 설정하여 제거한 사용자 /bin/false
도 FTP를 통해 로그인할 수 없습니다.
쉘 액세스가 서버에 어떤 영향을 미치는지 이해할 수 없습니까 vsftpd
? 쉘을 다시 활성화하지 않고 FTP 액세스를 활성화하는 방법은 무엇입니까?
업데이트:
알아냈어요이 참조내가 사용해야하고 /sbin/nologin
(Ubuntu에있는 것 같음 /usr/sbin/nologin
) FTP 액세스에 영향을 미치지 않아야한다고 제안하지만 내 경우에는 작동하지 않습니다.
답변1
내 질문에 대답하는 것이 좋은 습관인지는 모르겠지만 ftp 로그인을 활성화하는 간단한 솔루션을 찾았습니다.
한 줄을 추가해야 해요
/usr/sbin/nologin
이 수정 후 FTP 서버는 쉘이 /usr/sbin/nologin으로 설정된 사용자의 로그인을 허용하기 시작합니다. 그래서 그들은 ssh를 통해 로그인할 수 없지만 ftp에서 내가 원하는 방식으로 정확하게 작동합니다.
도움이 되는 의견을 보내주셔서 감사합니다.
답변2
사용자 셸 /bin/false
(또는 다른 잘못된 셸)을 /bin/false
다시 설정한 다음 /etc/shells
.
나는 하나를 보았다기본/usr/sbin/nologin
보안 질문이 로 설정되었습니다 /etc/shells
. 모든 데몬과 셸 로그인에 FTP(및 기타) 액세스 권한을 부여합니다 /usr/sbin/nologin
.