Linux搭建、配置ftp
简单理解一下:ftp是一种文件传输协议,vsftpd是遵循了ftp协议的服务端。
开始之前,我先整理一下必要的命令:
systemctl start vsftpd 启动vsftpd
systemctl stop vsftpd 停止vsftpd
systemctl restart vsftpd 重启vsftpd
systemctl start firewalld 开启防火墙
rpm -q 版本号 →查询 rpm -e 版本号→卸载
useradd/userdel 增加用户/删除用户
vim /etc/vsftpd/vsftpd.conf 进入配置文件
1.安装软件与协议
先查询是否有vsftpd和ftp
rpm -q vsftpf / ftp
安装语句:
yum -y install vsftpd /ftp
设置开机自启和开启vsftpd
systemctl enable vsftpd
systemctl start vsftpd
2.配置vsftpd.conf文件和主要步骤(匿名用户)
(1)修改配置文件:vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES #允许匿名用户访问
anon_upload_enable=YES
anon_mkdir_write_enable=YES
一定要确保这三项是YES
(2)查看vsftpd服务状态(绿色的active表示服务正在运行)
systemctl status vsftpd.service ##要一直确保在开启状态
(3)本地访问ftp
ftp localhost
注:无密码登录
220表示服务正常,可以登陆;230表示登陆成功;ls查看FTP服务器文件夹信息;cd进入文档;bye、quit退出ftp
(4)本地电脑测试
看是否成功,不成功会出现下图:
可以关闭防火墙:systemctl stop firewalld.service(注意:为防止机器重启后防火墙服务重新开启,可将防火墙服务永久关闭:systemctl disable firewalld.service)
→→登录云服务器控制台开放21端口后重启服务器即可
也可以选择配置防火墙:
开放防火墙
firewall-cmd --zone=public --add-port=21/tcp --permanent
firewall-cmd --reload
若出现 FirewallD is not running 的错误
解决方法:
查看防火墙是否开启:systemctl status firewalld
开启防火墙:systemctl start firewalld
(5)给权限才可以读写执行文件(重要!!!)
将pub文件夹的权限设置为777:chmod 777 -R /var/ftp/pub
544 是只有读和登录的权限
关闭selinux服务:vim /etc/selinux/config, 将SELINUX=enforcing改为:SELINUX=disabled,如图:
最后,重启系统,让配置生效:shutdown -r now或者reboot
到这里,匿名的ftp就已经搭建好了,你可以去本地电脑访问:ftp://你的IP
成功案例:(你先在pub文件里面新建测试文件test.txt)
问题解决:如果你出现下图
解决:打开IE浏览器,设置——internet选项,看到如图所示界面,把“使用被动FTP......”的√去掉即可。
提示:如果你的电脑老是不能访问,试一下别人的电脑访问
也可以去修改自己电脑设置:https://blog.csdn.net/weixin_42418774/article/details/88319782
然后一定要重启电脑!!!
借鉴图片:https://blog.csdn.net/weixin_37590454/article/details/88047433