Ubuntu Sever FTP服务配置
warning:
这篇文章距离上次修改已过1634天,其中的信息可能已经有所变动。
近期为实验室制作网站,分了一个古董服务器,为了提高效率,就选择了在虚拟机上安装 Ubuntu server,因为其字符界面,比较令人痛苦。。但也借这个机会学习了很多新知识。
Ftp服务器并没有用选项超多的pure,而是选用了普通的vsftpd。
使用 sudo apt-get install vsftpd 安装好了vsftpd
打开配置文件:
sudo vim /etc/vsftpd.conf
简要说下我的配置
- #独立模式启动
- listen=YES
- #允许匿名用户访问
- anonymous_enable=NO
- #允许本地(系统)用户登录
- local_enable=YES
- write_enable=NO
- #是否采用端口20进行数据传输
- connect_from_port_20=YES
- #指定本地(系统)用户登录转向目录
- #这里如果不指定路径,初始将会进入到用户的"/"目录下。
- local_root=/var/www
确认本机ftp命令可以连接上以后,通过端口映射21端口为8821端口以便本机访问。
但是用filezilla连接的时候,总是报错:
响应: 200 Switching to Binary mode.
命令: PASV
响应: 227 Entering Passive Mode (10,0,2,15,39,33).
命令: LIST
错误: 连接超时
错误: 读取目录列表失败
使用主动模式链接会出现500错误。
命令: PORT 127,0,0,1,43,123
响应: 200 PORT command successful. Consider using PASV.
命令: LIST
响应: 500 OOPS: vsf_sysutil_bind
错误: 读取目录列表失败
响应: 500 OOPS: priv_sock_get_cmd
错误: 连接被服务器关闭
无奈网上到处寻觅,有人说在配置中添加以下几句话:
pasv_enable=YES
pasv_min_port=10000
pasv_max_port=10020
port_promiscuous=YES
经实验证明还是不顶用。
无奈改NAT方式为桥连,是虚拟机分配到ip地址,ftp得以访问,为什么呢。。才疏学浅不得解。。
Great ingiths! That's the answer we've been looking for.