安装环境
CentO S7 安装ftp服务器
切换到root 用户
su root
查看系统是否已经安装
rpm -qa |grep vsftpd
若出现类似下面的情况说明已经安装
若没有安装 进行安装
yum install -y vsftpd
查看ftp服务器的状态
service vsftpd status
启动FTP服务器 / 重启FTP服务器
启动 service vsftpd start
重启 service vsftpd restart
如果嫌弃每次启动麻烦 可以设置为自启动
chkconfig vsftpd on
修改配置文件
主要几个文件的介绍
/etc/vsftpd/vsftpd.conf vsftpd 的核心配置文件
/etc/vsftpd/ftpusers 黑名单 这里的用户禁止访问
首先打开 vsftpd.conf 文件
(默认是不需要进行修改配置文件就可以使用的)
(修改的目的是为了
禁止匿名登陆
只允许指定用户进行登录
允许用户登录之后可以访问其他目录
vi /etc/vsftpd/vsftpd.conf
禁止匿名登陆
anonymous_enable=NO
允许用户登录可以访问其他目录
chroot_local_user=NO
只允许特定用户进行访问
userlist_enable和userlist_deny两个选项联合起来针对的是:本地全体用户(除去ftpusers中的用户)和出现在user_list文件中的用户以及不在在user_list文件中的用户这三类用户集合进行的设置。
当且仅当userlist_enable=YES时:userlist_deny项的配置才有效,user_list文件才会被使用;当其为NO时,无论userlist_deny项为何值都是无效的,本地全体用户(除去ftpusers中的用户)都可以登入FTP
当userlist_enable=YES时,userlist_deny=YES时:user_list是一个黑名单,即:所有出现在名单中的用户都会被拒绝登入;
当userlist_enable=YES时,userlist_deny=NO时:user_list是一个白名单,即:只有出现在名单中的用户才会被准许登入(user_list之外的用户都被拒绝登入);
创建用户进行登录
useradd -d /var/ftp/test -s /sbin/nologin ftpuser
-d命令是指定用户主目录,
-s /sbin/nologin 是禁止用户登陆系统,
ftpuser是本次新建用户的用户名。
设置密码
passwd ftpuser
修改完配置文件记得重启服务!!!
这个时候可以测试是不是能够连山
在自己的linux系统中
输入命令 ftp localhost
在自己的浏览器中
ftp://localhost
然后输入账号密码
如果在外部想要进行访问 把localhost变为自己的ip
查看自己的ip
ip addr
如果登陆失败 有可能是防火墙的问题 有两种解决方案
1 直接关闭防火墙
2 常规设置在防火墙配置文件中添加21端口, FTP服务器通过port能够访问,pasv不能访问
下面介绍第一种方案 第二种方案没有测试
可以查看https://www.cnblogs.com/i-shu/articles/4938588.html
查看防火墙的状态
firewall-cmd --state
running 正在运行
关闭防火墙
systemctl stop firewalld.service
防火墙默认是自动启动的 如果想要禁止firewall开机启动
systemctl disable firewalld.service
卸载 FTP 服务器
rpm -e vsftpd