一:安装
[root@localhost ~] yum -y install vsftpd #安装vsftpd
[root@localhost ~] yum -y install ftp #安装ftp
[root@localhost ~] vsftpd -v #查看版本号
二:启动服务
[root@localhost ~]# systemctl start vsftpd.service #启动ftp服务
[root@localhost ~]# systemctl status vsftpd.service #查看服务启动状态
● vsftpd.service - Vsftpd ftp daemon
Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; disabled; vendor preset: disabled)
Active: active (running) since 二 2019-09-24 15:49:53 CST; 11s ago
Process: 17932 ExecStart=/usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf (code=exited, status=0/SUCCESS)
Main PID: 17933 (vsftpd)
Tasks: 1
CGroup: /system.slice/vsftpd.service
└─17933 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
9月 24 15:49:53 localhost.fdw systemd[1]: Starting Vsftpd ftp daemon...
9月 24 15:49:53 localhost.fdw systemd[1]: Started Vsftpd ftp daemon.
[root@localhost ~]# netstat -nap | grep ftp #查看端口
tcp6 0 0 :::21 :::* LISTEN 17933/vsftpd
unix 2 [ ] DGRAM 62843 17933/vsftpd
[root@localhost ~]# systemctl stop/restart vsftpd.service #关闭/重启命令
三:配置
# 向防火墙添加ftp服务
[root@localhost ~]# firewall-cmd --permanent --zone=public --add-service=ftp
success
[root@localhost ~]# firewall-cmd --reload # 重启防火墙
success
# 现在应该可以访问ftp服务,若不能,可以测试关闭SELinux 和防火墙
[root@localhost ~]# setenforce 0 # 关闭SELinux
[root@localhost ~]# systemctl stop/disable firewalld.service #关闭/开机不启动 防火墙(不推荐)
Ⅱ 本地用户登录
#本地用户登录, 可以在Linux中创建专门登录ftp服务器的用户
[root@localhost ~]# useradd fdwftp #创建用户 fdwftp
[root@localhost ~]# passwd fdwftp #设置用户 fddftp的密码
#之后登录ftp将进入 /home/fdwftp
#修改目录权限
[root@localhost ~]# chmod -R 775 /home/fdwftp
Linux下默认的用户目录一般为/home/xxx(root用户除外),有些时候我们可能需要修改这个目录,下面我就给大家分享2种修改的方法
-
1、切换到root用户,直接修改/etc/passwd文件,找到你的用户名你一行,如下图所示修改路径,然后保存即可。
-
2
2、切换到root用户,使用usermod命令,例如usermod -d /tmp test (test为你的用户名),使用该命令请确保该用户下没有运行的软件或进程
(PS:第一种方法比较暴力,建议使用第二种方法。 )
Ⅲ 虚拟用户登录
# 在Linux中,不同的用户是有不同的目录访问权限的,首先创建一个目录.作为ftp用户所拥有的目录
[root@localhost ~]# mkdir -p /home/fdwroot/ftpuser
# 执行如下命令 创建用户ftptest,并指定其目录为用户目录中创建的/home/fdwroot/ftpuser/
[root@localhost ~]# useradd -d /home/fdwroot/ftpuser/ -g ftp -s /sbin/nologin ftptest
# -g ftp //表示该用户属于ftp分组
# -s /sbin/nologin //表示该用户不能用来登录客户端(即为 虚拟用户)
# 执行这条命令会有warning 信息,可不予理会
[root@localhost ~]# chown -R ftptest /home/fdwroot/ftpuser/ #该目录拥有者为ftptest
[root@localhost ~]# chown -R 775 /home/fdwroot/ftpuser/ #给该用户添加读写权限
[root@localhost ~]# passwd ftptest #给该用户设置密码