一、搭建服务器
1、准备工作
(1)给服务器创建一个目录
mkdir /home/ftpServer/ftprepository
(2)创建匿名访问目录
新建一个目录anonymous,用来存放用户上传的文件,并修改目录的权限:
cd /home/ftpServer/ftprepository
mkdir anonymous
chmod 755 anonymous
在ftpftprepository目录下创建一个普通文件,用来做下载测试,如test.txt(假如其内容为:HelloWorld):
touch test.txt
echo "HelloWorld' > test.txt
(3)创建用户访问目录
cd /home/ftpServer/ftprepository
mkdir FAE
chmod 777 anonymous
2、安装ftp服务器
apt-get install vsftpd
3、配置vsftpd.conf文件
vi /etc/vsftpd.conf
(1)设置匿名用户
修改以下设置,允许匿名用户:
write_enable=YES
anonymous_enable=YES
no_anon_password=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_root=/home/ftpServer/ftprepository/anonymous
(2)限制用户只能访问有权限的目录
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
(3)开启允许ftp用户访问列表
userlist_enable=YES
userlist_deny=NO
(4)防止报500错误
seccomp_sandbox=NO
(5)保存退出
4、创建登录用户
(1)添加用户
useradd -d /home/ftpServer/ftprepository -s /bin/bash ftpuser
(2)设置用户密码
passwd ftpuser
(3)设置ftp目录用户权限
chown ftpuser:ftpuser /home/ftpServer/ftprepository
(4)添加vsftpd 登录用户
#新建文件/etc/vsftpd.user_list,用于存放允许访问ftp的用户:
touch /etc/vsftpd.user_list
vim /etc/vsftpd.user_list
在/etc/vsftpd.user_list中添加允许登录ftp的用户ftpuser
(5)添加vsftpd登录用户对目录树的权限
新建文件/etc/vsftpd.chroot_list,设置可列出、切换目录的用户:
touch /etc/vsftpd.chroot_list
vim /etc/vsftpd.chroot_list
5、重启服务器
重新加载/etc/vsftpd.conf 配置文件
/etc/init.d/vsftpd restart
二、遇到的问题
1、无法登录:ftp: connect: Connection refused
从头到位检查了好几遍,后来发现是,同时ipv4和ipv6同时运行服务器报错。vsftpd.conf文件里的#listen_ipv6=YES被取消注释了。于是将上面那句注释掉,就可以了。我的网是ipv6的,但是注释掉不影响,依然可以ipv4和ipv6都可以。但是如果listen=YES和listen_ipv6=YES同时在就会报错。
2、客户端登录ftp服务器时会报FTP over TLS警告。
登录后状态提示的错误内容。在网上找到了一个回答:在Linux终端中把ftp_home_dir这个状态开启。
apt-get install policycoreutils
setsebool ftp_home_dir = 1
sestatus -b|grep ftp //执行这步后会看到:ftp_home_dir on
service vsftpd restart
今天的文章Ubuntu 搭建Ftp服务器分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/32936.html