PAM으로 mysql DB에 연결하는 가상 사용자와 vsftpd를 성공적으로 사용했습니다. 이제 성공적인 vsftpd 연결로 사용자 디렉토리 생성을 자동화하고 싶습니다.
다음은 /etc/pam.d/vsftpd 구성입니다.
#%PAM-1.0
session optional pam_keyinit.so force revoke
auth required pam_mysql.so verbose=1 user=root passwd=mypass host=localhost db=mydb table=mytable usercolumn=username passwdcolumn=password crypt=3
account required pam_mysql.so verbose=1 user=root passwd=mypass host=localhost db=mydb table=mytable usercolumn=username passwdcolumn=password crypt=3
session required pam_mkhomedir.so skel=/home/skel/ umask=0022 debug
pam_mkhomedir을 추가하면 로그에 다른 메시지가없는 디렉토리를 만들 수 없다는 메시지 만 표시됩니다. 따라서 분명히 적용되지 않습니다. 필요한 게 더 있습니까?
내 /etc/vsftpd/vsftpd.conf :
# No ANONYMOUS users allowed
anonymous_enable=NO
# Allow 'local' users with WRITE permissions (0755)
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=NO
xferlog_enable=YES
connect_from_port_20=YES
# define a unique user on your system which the
# ftp server can use as a totally isolated and unprivileged user.
nopriv_user=vsftpd
chroot_local_user=YES
listen=YES
# here we use the authentication module for vsftpd to check users name and passw
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
userlist_deny=YES
# here the vsftpd will allow the 'vsftpd' user to login into '/home/vsftpd/$USER directory
guest_enable=YES
guest_username=vsftpd
local_root=/home/vsftpd/$USER
user_sub_token=$USER
virtual_use_local_privs=YES
download_enable=NO
force_local_data_ssl=NO
force_local_logins_ssl=NO
# PASV - passive ports for FTP
pasv_enable=YES
pasv_min_port=14000
pasv_max_port=14100
vsftpd.conf에서 이것이 필요하다는 게시물을 보았으므로 이것을 시도했습니다.
session_support=YES
그러나 이제 로그가 표시하는 것처럼 더 이상 인증하지 않는 것 같습니다.
Mar 24 00:46:16 ip-10-212-239-40 vsftpd[1962]: pam_keyinit(vsftpd:session): Unable to look up user "user1"
Mar 24 00:46:16 ip-10-212-239-40 vsftpd[1962]: pam_mkhomedir(vsftpd:session): User unknown.
디렉토리를 이미 만든 경우에도 마찬가지입니다. 이제 아무도 들어갈 수 없습니다.
어떤 아이디어?