LINUX Centos7搭建vsftpd服务

 更新时间:2018年02月27日 10:41:34   作者:彬菌  
本文给大家详细讲述了在LINUX中Centos7搭建vsftpd服务的详细操作方法,需要的朋友参考下。

前言:在数据传输安全方面,被动模式安全性更高,且ftp连接工具都是默认被动模式;在网络安全方面,则是主动模式安全性更高。

安装vsftpd和ftp连接工具

yum -y install vsftpd ftp

修改vsftpd的配置文件

vim /etc/vsftpd/vsftpd.conf

修改:

anonymous_enable=NO //修改为NO
chroot_list_enable=YES //去掉前面的#号
chroot_list_file=/etc/vsftpd/chroot_list //去掉前面的#号
ascii_upload_enable=YES //去掉前面的#号
ascii_download_enable=YES //去掉前面的#号
local_umask=033 //修改权限
listen=YES //设置vsftpd拥有自己的守护进程
listen_ipv6=NO

注意:listen和listen_ipv6不能同时设置YES

添加:

pasv_enable=YES #开启被动模式
pasv_min_port=30000 #被动模式最小端口
pasv_max_port=40000 #被动模式最大端口
pasv_promiscuous=YES #关闭端口安全检查
pasv_address=公网IP地址 #局域网搭建忽略此项
allow_writeable_chroot=YES

cmds_allowed=FEAT,REST,CWD,LIST,MDTM,MKD,NLST,PASS,PASV,PORT,PWD,QUIT,RMD,RNFR,RNTO,RETR,SIZE,TYPE,USER,ACCT,STOR,APPE,CDUP,HELP,MODE,NOOP,REIN,STAT,STOU,STRU,SYST

注意:cmds_allowed参数不能有空格,这里设置权限可以上传,下载,重命名,替换,删除空文件夹,但不可以删除文件;为了安全考虑,被动模式端口最好大于10000,端口范围过小则无法访问ftp服务

设置ftp用户黑名单(把本地用户添加到以下两个文件)

cut -d : -f 1 /etc/passwd>>/etc/vsftpd/ftpusers
cut -d : -f 1 /etc/passwd>>/etc/vsftpd/user_list

注意:如果只在ftpusers添加,登录ftp时会提示用户密码错误,在user_list添加则会提示权限拒绝

建议:两边都加

创建ftp用户(新建的用户不在黑名单内)

useradd -s /sbin/nologin bing //用户名为bing
passwd bing //设置密码

注意:ftp用户的主目录默认在/home/用户名/下面

限制ftp用户不能离开它的home目录

touch /etc/vsftpd/chroot_list
cut -d : -f 1 /etc/passwd>>/etc/vsftpd/chroot_list

防火墙开放ftp,使系统不用完全关闭防火墙

firewall-cmd --zone=public --add-port=21/tcp --permanent
firewall-cmd --zone=public --add-port=30000-40000/tcp --permanent
firewall-cmd --add-service=ftp --permanent
firewall-cmd --reload
firewall-cmd --list-services //查看ftp是否开放
firewall-cmd --zone=public --list-ports //查看已开放的端口

注意:还需要在阿里云控制台的安全组规则添加被动模式的端口范围,否则会导致访问不了ftp服务

配置selinux 允许ftb访问home和外网访问

getsebool -a | grep ftp //查看setenforce的ftp布尔值
setsebool -P ftpd_full_access on
setsebool -P ftpd_connect_all_unreserved on
setsebool -P ftpd_use_passive_mode on
semanage port -a -t ftp_port_t -p tcp 30000-40000
semanage port -l |grep ftp //查看selinux开启的ftp端口

注意:如果semanage命令默认是没有安装的,报错运行以下命令

yum -y install policycoreutils-python //安装selinux端口管理工具

设置home目录权限

chmod 777 /home/bing

启动并设置开机自启

service vsftpd start
systemctl enable vsftpd.service

注意:在windows端访问ftp服务器需要设置被动模式,如下图所示

附加:ftp的卸载

卸载之前备份文件

mkdir /bak
cp -fr /home/bing/* /bak

卸载ftp

yum remove -y vsftpd

删除配置文件

rm -fr /etc/vsftpd

删除ftp用户

userdel -fr bing

本文转载于:https://www.idaobin.com/archives/181.html

相关文章

  • 实例详解Linux下的Make命令

    实例详解Linux下的Make命令

    众所周知在Linux系统下的make 命令是系统管理员和程序员用的最频繁的命令之一。管理员用它通过命令行来编译和安装很多开源的工具,程序员用它来管理他们大型复杂的项目编译问题。下面这篇文章我们将用一些实例来讨论make命令背后的工作机制。有需要的朋友们可以看看。
    2016-12-12
  • Linux中对mysql用户进行管理的操作代码

    Linux中对mysql用户进行管理的操作代码

    这是在Linux里面对MySQL数据库的用户进行管理,其中包括查看全部用户以及权限、赋予增删改查权限、赋予远程连接%权限、删除用户的权限、删除用户、修改密码等,本文给大家详细介绍了Linux中对mysql用户进行管理的操作代码,需要的朋友可以参考下
    2024-11-11
  • Linux内核参数配置与验证详细指南

    Linux内核参数配置与验证详细指南

    在Linux系统运维和性能优化中,内核参数(sysctl)的配置至关重要,本文主要来聊聊如何配置与验证这些Linux内核参数,希望对大家有一定的帮助
    2025-04-04
  • telnet nc命令返回“连接失败”问题及解决

    telnet nc命令返回“连接失败”问题及解决

    当使用nc或telnet命令测试端口连接时,如果返回“connection refused”错误,通常可能是因为:1. 目标端口未被监听,即没有服务在运行于该端口;2. 防火墙策略阻止了该端口的连接;3. 目标主机配置了只允许特定IP或子网的连接,这些情况都会导致连接尝试失败
    2024-10-10
  • Linux中FTP服务器搭建与安全配置方式

    Linux中FTP服务器搭建与安全配置方式

    这篇文章主要介绍了Linux中FTP服务器搭建与安全配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • CentOS7 LNMP+phpmyadmin环境搭建 第一篇虚拟机及centos7安装

    CentOS7 LNMP+phpmyadmin环境搭建 第一篇虚拟机及centos7安装

    这篇文章主要介绍了CentOS7 LNMP+phpmyadmin环境搭建第一篇虚拟机及centos7安装教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • 阿里云ECS实例设置用户root密码和远程连接的方法

    阿里云ECS实例设置用户root密码和远程连接的方法

    这篇文章主要介绍了阿里云ECS实例设置用户root密码和远程连接的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • 关于linux中系统输入输出的管理详解

    关于linux中系统输入输出的管理详解

    这篇文章主要给大家介绍了关于linux中系统输入输出的管理,文中通过示例代码介绍的非常详细,对大家学习或者使用linux具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-04-04
  • Linux 服务器硬件数据的收集及使用案例

    Linux 服务器硬件数据的收集及使用案例

    这篇文章主要介绍了Linux 服务器硬件数据的收集,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-05-05
  • Linux centos下php安装cphalcon扩展的方法

    Linux centos下php安装cphalcon扩展的方法

    这篇文章主要介绍了Linux下php安装cphalcon扩展的方法,需要的朋友可以参考下
    2017-02-02

最新评论