linux系统中部署ftp服务器
vsftp服务
一.在服务端:
1.yum install vsftpd lftp -y 安装服务
2.systemctl start vsftpd 打开sftpd服务
3.netstart -antlupe | grep ftp 查看端口
4.systemctl status firewalld 查看火墙状态
5.firewall-cmd --get-services 查看
6.firewall-cmd --permanent --add-service=ftp 针对ftp的防火墙策略
7.firewall-cmd --reload 重新加载防火墙
8.firewall-cmd --list-all 查看防火墙策略
9.systemctl enable vsftpd 针对ftp的防火墙策略开机关闭
10.vim /etc/yum.repos.d/rhel_dvd.repo 配置文件
内容:
[rhel_dvd]
gpgcheck = 0
enabled = 1
baseurl = http://172.25.254.250/rhel7
name = Remote classroom copy of dvd
在客户端测试:
lftp 服务端ip
进入后ls查可显示内容,登陆成功。
二.匿名.本地用户登陆.写:
修改selinux安全子系统的配置文件:
1.getenforce 查看
2.编辑配置置文件: vim /etc/sysconfig/selinux
内容:
SELINUX=disabled
3.reboot 重启
服务端:
1.rpm -qc vsftpd 查看vsftpd服务配置文件
2.vim /etc/vsftpd/vsftpd.conf 配置文件
3.anonymous_enable=no|yes 是否允许匿名用户登陆
4.local_enable=no|yes 是否允许本地用户登陆
5.write_enable=no|yes 是否允许用户写的权限
6.systemctl restart vsftpd 重启服务
测试端:
lftp 服务端ip
进入后ls查,可以显示内容登陆成功。
三.匿名用户上传:
在服务端:
1.vim /etc/vsftpd/vsftpd.conf 编辑配置文件
内容:
anon_upload_enable=YES 允许匿名用户上传
2.chmod 755 /var/ftp/pub 修改权限
3.chgrp ftp /var/ftp/pub 更改文件所属组

2.systemctl restart vsftpd 重启服务

在客户端测试:lftp 服务端ip
进入后ls查,可以显示内容,登陆成功。
注意:用户登录的读写权限时注意以下报错:
530报错为密码输入错误
550报错为当前用户没有权限
553报错为文件权限不够
500报错为文件权限太大
四.用户删除,建立目录
1.anon_other_write_enable=YES 允许匿名用户可以删除
2.anon_mkdir_write_enable=YES 允许匿名用户可以建立目录
3.chroot_local_user=YES 开启白名单
4.chroot_local_user=NO 开启黑名单
5.userlist_enable=YES 打开表示黑名单功能开启
6.userlist_deny=NO 临时黑名单变白名单
7.cd /etc/vsftpd/ ls
chroot_list ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh
永久黑名单 临时黑名单
五.虚拟用户登陆ftp:
1.建立用户数据库:vim /etc/vsftpd/users
内容:
users1
123
users2
123
2.cd /etc/vsftpd/进入目录将users文件加密:db_load -T -t hash -f users users.db
3.创建vsftp用于存储文件根目录,以及虚拟用户系统的本地文件:vim /etc/vsftpd/vsftpd.conf
4.建立用户的PAM文件:
yum search pam 查找pam的安装包
rpm -qc pam.x86_64 查找pam.x86_64的配置文件
vim /etc/pam.d/vsftpd 查看PAM文件的写法
vim usercheck 编辑users的PAM配置文件
5.配置虚拟用户独立的家目录:-p表示上层目录不存在的话自动建立。
编辑配置文件:vim /etc/vsftpd/vsftpd.conf