Centos7 基于vsftpd搭建FTP服务器
文章目录
- 软件安装
- 配置
- vsftp
- selinux
- 用户创建
- 设置防火墙
- 权限设置(用户的操作权限)
- 测试
软件安装
安装
yum install -y vsftpd
文件说明
cd /etc/vsftpd/
核心文件说明
vsftpd.conf (主配置文件,核心配置文件)
ftpusers(黑名单,这个里面的用户不允许访问FTP服务器)
user_list(白名单,允许访问FTP服务器的用户列表)服务配置
开机自启动
chkconfig vsftpd on
启动vsftpd服务、查看服务状态、查看监听的端口
service vsftpd start
ps -ef|grep vsftpd
netstat -nltp | grep 21
配置
vsftp
- 进入目录
cd /etc/vsftpd/ 修改配置文件
vim vsftpd.conf- 禁止匿名登录
anonymous_enable=NO - 禁止切换用户
chroot_local_user=YES 打开被动模式
在配置文件的最后面添加以下配置pasv_enable=YES
#允许使用的端口的下限(记得需要在防火墙中开启此范围的端口)
pasv_min_port=1024
#允许使用的端口的上限(记得需要在防火墙中开启此范围的端口)
pasv_max_port=2048
主动模式,被动模式的区别可 点此 查看
- 禁止匿名登录
重启vsftpd
service vsftpd restart
selinux
vi /etc/sysconfig/selinux
把
SELINUX=enforcing
改成
SELINUX=disabled
保存执行以下指令:
setenforce 0
用户创建
- 创建用户目录
cd /etc/vsftpd/
mkdir ftp
cd ftp
mkdir usera
mkdir userb - 设置文件权限
chmod 757 /etc/vsftpd/ftp/usera/
chmod 757 /etc/vsftpd/ftp/userb/ 创建用户
useradd -s /sbin/nologin -d /etc/vsftpd/ftp/usera/ usera
usera为用户名
/etc/vsftpd/ftp/usera/ 为用户访问的路径设置密码
passwd usera
测试密码使用:123456789
- 删除用户(仅做记录,这里不执行)
userdel -r usera
设置防火墙
配置iptables
vi /etc/sysconfig/iptables
添加以下配置#开启ftp 21端口的
-A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
#ftp被动模式下传输数据允许使用端口的上下限 这里的配置要和vsftpd.conf中配置的一致,否则将无法访问
-A INPUT -p tcp -m state --state NEW -m tcp --dport 1024:2048 -j ACCEPT
重启iptables
systemctl restart iptables.service
权限设置(用户的操作权限)
所谓的用户对ftp中文件的操作权限,即为对应目录的权限
如只允许用户下载(读),那么就执行如下设置:
chmod 755 /etc/vsftpd/ftp/usera/
如允许用户下载删除(读、写),那么就执行如下设置:
chmod 757 /etc/vsftpd/ftp/usera/
测试
window下打开我的电脑,在路径输入框输入: ftp://ip:端口 如: ftp://192.168.1.129:21 输入用户密码
即可对该目录下的文件进行增删改操作
还没有评论,来说两句吧...