CentOS 部署 FTP 服务

安装vsftpd

  • 检测是否已经安装vsftpd

    1
    2
    3
    $ rpm -qa|grep vsftpd
    # 有打印信息说明已经安装,信息格式如下:
    vsftpd-3.0.2-27.el7.x86_64

    如果已经安装,则可以更新,或者删除重新安装

  • 安装

    1
    2
    3
    4
    5
    6
    # 使用 yum 安装 vsftpd
    $ yum install vsftpd
    # 设置开机启动vsftpd服务
    $ chkconfig vsftpd on
    # 启动vsftpd服务
    $ service vsftpd start
  • 配置防火墙

    1
    2
    3
    4
    5
    6
    # 打开/etc/sysconfig/iptables文件
    vi /etc/sysconfig/iptables
    # 在REJECT行之前添加如下代码
    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
    # 保存和关闭文件,重启防火墙
    service iptables restart
  • vsftpd配置

    在/etc/vsftpd/vsftpd.conf文件修改以下配置

    1
    2
    3
    4
    5
    6
    # 禁止匿名用户anonymous登录
    anonymous_enable=NO
    # 设置的文件里,是被chroot的用户(无法向上改变目录)
    chroot_local_user=YES
    # 500 OOPS: vsftpd: refusing to run with writable root inside chroot()错误解决
    allow_writeable_chroot=YES

创建用户

1
2
3
4
5
6
7
8
9
10
11
12
13
# 创建用户
sudo useradd test_user -s /sbin/nologin
# 为用户配置密码,按提示输入两遍密码即可
sudo passwd test_user

# 查看默认密码过期时间
vi /etc/login.defs
# 修改密码过期时间
sudo chage -M 99999 test_user

# 在用户目录下创建目录文件,并赋权给用户
sudo mkdir -p /home/test_user/test_dir
sudo chown test_user:test_user /home/test_user/test_dir

删除用户

1
2
# 删除用户,会连带/home/test_user目录一起删除
userdel -rf test_user

常用命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# 启动 ftp 服务
sudoservice vsftpd start
# 查看 ftp 服务状态
sudoservice vsftpd status 
# 重启 ftp 服务
sudoservice vsftpd restart
# 关闭 ftp 服务
sudoservice vsftpd stop

# 在 CentOS 7.x版本使用以下命令
# 启动 ftp 服务
sudo systemctl start vsftpd.service
# 查看 ftp 服务状态
sudo systemctl status vsftpd.service
# 重启 ftp 服务
sudo systemctl restart vsftpd.service
# 关闭 ftp 服务
sudo systemctl stop vsftpd.service
# 开机启动
sudo systemctl enable vsftpd.service
# 禁止开机启动
sudo systemctl disable vsftpd.service
  • 本文作者: forever杨
  • 本文链接: https://blog.yl-online.top/posts/9c4dd72b.html
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。如果文章内容对你有用,请记录到你的笔记中。本博客站点随时会停止服务,请不要收藏、转载!