linux 中 ftp 简单实现
简介:
ftp个人理解就是 客户端跟服务器端的一个服务器,可以放点东西在上面,实现共享。你可以理解为移动硬盘,不过是在共享网络下面,客户传东西啥的都可以扔到上面;你也可以设置个账户,只有你能上。也就是你的移动硬盘了,理解有点出入,有更好的比喻欢迎回复;
正文
liunx 装一个ftp,我的是子用户。加个sudo
下载
sudo yum -y install vsftpd
创建ftpuser 没有登陆云服务器的权限,但是有登陆ftp的权限
cd /
sudo mkdir ftpfile
cd ftpfile
增加个用户
没有登陆云服务但是有登陆ftp的权限
-s /sbin/nologin 意思是没有登陆云服务的权限
sudo useradd ftpuser(用户名) -d /ftpfile -s /sbin/nologin
修改ftpfile文件夹权限
cd。。
sudo chown -R ftpuser.ftpuser ./ftpfile/
重置下ftpuser密码
sudo passwd ftpuser
输入新密码 ,你可以随意
aB123456@
配置ftp服务器
cd /etc/vsftpd
打开配置文件
sudo vi vsftpd.conf
添加节点 存在那个目录 允许匿名上传 允许用户写的权限,这些配置,直接在文件最后面复制粘贴就好,需要其他权限的,可以百度往上面粘就好,我就不列了
local_root=/ftpfile
anon_root=/ftpfile
allow_writeable_chroot=YES
被动传输端口
pasv_min_port=61001
pasv_max_port=62000
被动传输端口设置 被动传输最小 61001 到最大 62000 ,这根据自己 到时候开放就可以
这些数据都放在最后
修改下节点
搜索
/anonymous_e
设置为no,默认是yes,这个可以不修改,不修改就是默认都可以登陆,如果只是做项目测试,建议就不要修改了,修改后,要使用你设置的账号密码登陆。随意,都可以
搜索/chroot_list打开注释,这个是放用户的,如果不打开,找不到用户
sudo vi /etc/vsftpd/chroot_list
这个如果没有这个文件 会自动创建,把你的用户放进去就可以
在vsftpd 里面创建一个chroot_list放置ftpuser用户
sodu vi chroot_list 把我创建的ftpuser放进去,里面就写一个ftpuser
安全组分别打开 20 21 6100 6200端口
打开防火墙
systemctl start firewalld
查看防火墙状态
sudo systemctl status firewalld
打开端口,打开的就是配置的 被动端口,和默认端口
sudo firewall-cmd --zone=public --add-port=20-21/tcp
sudo firewall-cmd --zone=public --add-port=61001-62000/tcp
重启防火墙:
sudo systemctl restart firewalld
关闭下seliunx 避免外网无法访问
sudo vi /etc/selinux/config
永久关闭重启生效
selinux=disabled
这个状态下 就可以看到,
selinux=disabled
当次生效
sudo setenforce 0
重启下vsftpd
service vsftpd restart
验证y一下
/usr/sbin/sestatus
设置开机启动vsftpd ftp服务
chkconfig vsftpd on
浏览器访问 ftp://ip
如果访问不了,就吧防火墙关了 再打开试试