Slackware8 升級為 Slackware 12,
舊的系統使用 wuftpd2.6.2, 想把他換掉, 使用 Slackware12 內附的 vsftpd.
裝好了, /etc/passwd 及 /etc/shadow 也 Copy 到新系統上了,
ssh 連線及其他也都 OK, 就 vsftpd 跑起來卻無法登入, 搞了快 3 天~~~!@#$%^&*
結果咧~ 結果咧~ 結果咧~咧~咧~咧~咧~
FAQ:
Q) Help! Local users cannot log in.
A) There are various possible problems.
A1) By default, vsftpd disables any logins other than anonymous logins. Put local_enable=YES in your /etc/vsftpd.conf to allow local users to log in.
A2) vsftpd tries to link with PAM. (Run "ldd vsftpd" and look for libpam to find out whether this has happened or not). If vsftpd links with PAM, then you will need to have a PAM file installed for the vsftpd service. There is a sample one for RedHat systems included in the "RedHat" directory - put it under /etc/pam.d
A3) If vsftpd didn't link with PAM, then there are various possible issues. Is the user's shell in /etc/shells? If you have shadowed passwords, does your system have a "shadow.h" file in the include path?
A4) If you are not using PAM, then vsftpd will do its own check for a valid user shell in /etc/shells. You may need to disable this if you use an invalid shell to disable logins other than FTP logins. Put check_shell=NO in your /etc/vsftpd.conf.
在 Slackware8, /bin/sh 有列在 /etc/shells 裡,
在 Slackware12, /bin/sh 從 /etc/shells 拿掉了
在 /etc/passwd, 使用者帳號的 Shell 都是 /bin/sh
# ls -l /bin/sh
lrwxrwxrwx 1 root root 4 2008-01-xx xx:xx /bin/sh -> bash
就這麼簡單, 盧了 3 天~~!@#$%^& 江西!!
文章定位: