回覆列表
  • 1 # 使用者491056538225

    pam驗證出了問題,nologin使用者無法使用shell登陸。解決辦法如下:

    1、查詢pam驗證檔案的位置(vsftpd配置檔案最底部)

    sudo vim /etc/vsftpd/vsftpd.conf

    應該會看到pam_service_name=vsftpd

    使用find命令查詢檔案位置

    sudo find / -name "vsftpd"

    在出現的結果中,找出帶pam的 ——> /etc/pam.d/vsftpd

    2、修改pam認證方式

    sudo vim /etc/pam.d/vsftpd

    找到:auth required pam_shells.so

    在之前加上#號註釋掉。

    3、重啟vsftpd

    sudo systemctl restart vsftpd。

    補充:

    1、第一步可直接跳過,加上去的原因是:

    無法登陸時經常出現的530錯誤,網上有很多奇怪的處理方式,要麼不管用,要麼安全性較差,特別是建議修改/etc/passwd檔案中的 /sbin/nologin為/bin/bash的,這將使該使用者可以直接登陸shell而進入系統。還有一些說是更改vsftpd.conf中的pam_service_name等於任意值,經驗證這是絕對不行的(你可將所有配置都調整正確,只修改此處進行試驗)。寫在這裡,以便更多人看到後能夠節約時間。

    2、與vsftpd配置無關但與ftp配置相關的sftp。

    vsftpd與sftp的配置幾乎不相關(關聯銜接處在:vsftpd.conf中設定ssl_enable後,就轉交由openssh的vsftpd處理驗證了)。在後續配置sftp時,驗證方式是在/etc/ssh/sshd_config檔案中修改的。在配置sftp出現登陸成功後又退出的錯誤時,要跳出vsftpd來思考。附圖參考

  • 中秋節和大豐收的關聯?
  • 有什麼好聽的想念的歌?