我在 Ubuntu 14.04 LTS Linux 机器上安装了 vsftpd。当我尝试使用 URL 进行本地连接时ftp://本地主机我确实看到了一个身份验证对话框。然而,在我输入用户名和密码后,身份验证框立即返回,再次要求我输入登录详细信息。
使用说明: 我是确实使用以下命令在测试之间重新启动 vsftpd 服务:sudo 服务 vsftpd 重新启动。此外,我的使用/安全环境是为我的本地网络提供一个简单的集中式文件共享存储库。我并不想将 FTP 服务器开放给网络或任何其他系统,但希望开放给本地网络上位于同一单独路由器后面的那些站点。
如果我尝试使用最新版本的 FileZilla 从本地网络上的另一个站点登录,我会收到连接超时错误消息。我认为这是有点儿无法正常工作,因为如果我尝试使用普通 FTP(无 SSL)进行连接,我会收到 530 错误,告诉我非匿名用户必须使用 SSL。但是,当我尝试使用 SSL 进行连接时,我又遇到了超时。
我已经使用此链接中的设置设置了 vsftpd:
http://ubuntuforums.org/showthread.php?t=518293&p=3138955#post3138955
我使用过的是:
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=YES
ssl_sslv3=YES
和:
# Show hidden files and the "." and ".." folders.
# Useful to not write over hidden files:
force_dot_files=YES
# Hide the info about the owner (user and group) of the files.
# hide_ids=YES
# Connection limit for each IP:
max_per_ip=2
# Maximum number of clients:
max_clients=20
我在 Linux 论坛上找到了这个,用于设置 FTP 根目录:
# FTP root directory.
local_root=/home/roschler/Documents/ftproot
我在 Linux 论坛上关于 vsftpd 的帖子中发现了这一点:
tcp_wrappers=YES
我有一个允许的用户列表,但是我现在禁用了它。
#userlist_deny=NO
#userlist_enable=YES
#userlist_file=/etc/vsftpd.allowed_users
当我看着/var/log/vsftpd.log我确实看到了来自本地主机和同一网络上的远程站的每次连接尝试。奇怪的是,我不看到任何错误消息。没有连接失败、身份验证失败,什么都没有。只是:
Tue Feb 23 21:44:52 2016 [pid 5325] CONNECT: Client
接下来是 IP 地址。
但到目前为止还没有登录成功。有人能告诉我如何让它工作吗?是:
- 防火墙问题?如果是,为什么当我尝试使用非 SSL FTP 远程登录时会收到 530 错误消息?
- 目录权限问题,因此当 vsftpd 尝试切换到 FTP 目录时内部失败?
- 什么?