`
chenjian_791
  • 浏览: 20693 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

CentOS FTP服务(vsftpd)配置

阅读更多
根据很多人对CentOS FTP服务的不解,我觉得应该对CentOS FTP服务做出一定的解释。

1.安装

一般在CentOS上都自动安装了vsftd,若没有安装则可以使用以下步骤进行安装
yum -y install vsftpd
touch /var/log/vsftpd.log # 创建vsftp的日志文件
在CentOS中,这样就可以完成了一个简单的匿名FTP的搭建。你可以通过访问ftp://yourip来进行,不过这个FTP没有任何权限。

2.基于匿名的FTP架设

参考其他关于Vsftpd的CentOS FTP服务配置文章。

3.基于虚拟用户的FTP架设

所谓虚拟用户就是没有使用真实的帐户,只是通过某种手段达到映射帐户和设置权限的目的。

1)我们在/etc/vsftpd/vsftpd.conf中做如下CentOS FTP服务配置:
anonymous_enable=NO 设定不允许匿名访问
chroot_list_enable=YES 使用户不能离开主目录
xferlog_file=/var/log/vsftpd.log 设定vsftpd的服务日志保存路径。注意,该文件默认不存在。必须要手动touch出来
ascii_upload_enable=YES
ascii_download_enable=YES 设定支持ASCII模式的上传和下载功能。

local_enable=YES 设定本地用户可以访问。注:如使用虚拟宿主用户,在该项目设定为NO的情况下所有虚拟用户将无法访问。
pam_service_name=vsftpd PAM认证文件名。PAM将根据/etc/pam.d/vsftpd进行认证
以下这些是关于Vsftpd虚拟用户支持的重要CentOS FTP服务配置项目。默认vsftpd.conf中不包含这些设定项目,需要自己手动添加CentOS FTP服务配置。
guest_enable=YES 设定启用虚拟用户功能。
guest_username=ftp 指定虚拟用户的宿主用户。-CentOS中已经有内置的ftp用户了
user_config_dir=/etc/vsftpd/vuser_conf 设定虚拟用户个人vsftp的CentOS FTP服务文件存放路径。存放虚拟用户个性的CentOS FTP服务文件(配置文件名=虚拟用户名)

2)创建chroot list,将用户ftp加入其中:
touch /etc/vsftpd/chroot_list
echo ftp >> /etc/vsftpd/chroot_list

3)进行认证:
首先,安装Berkeley DB工具,很多人找不到db_load的问题就是没有安装这个包。
yum install db4 db4-utils
然后,创建用户密码文本/etc/vsftpd/vuser_passwd.txt ,注意奇行是用户名,偶行是密码
ftpuser1
ftppass1
ftpuser2
ftppass2
接着,.生成虚拟用户认证的db文件
db_load -T -t hash -f /etc/vsftpd/vuser_passwd.txt /etc/vsftpd/vuser_passwd.db
随后,编辑认证文件/etc/pam.d/vsftpd,全部注释掉原来语句
再增加以下两句
auth required pam_userdb.so db=/etc/vsftpd/vuser_passwd
account required pam_userdb.so db=/etc/vsftpd/vuser_passwd
最后,创建虚拟用户个性CentOS FTP服务文件
mkdir /etc/vsftpd/vuser_conf/
vi /etc/vsftpd/vuser_conf/ftpuser1
内容如下:
local_root=/opt/var/ftp1 虚拟用户的根目录(根据实际修改)
write_enable=YES 可写
anon_umask=022 掩码
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES

4.启动vsftp服务器
mkdir /opt/var/ftp/ftpuser1
chmod 777 /opt/var/ftp/ftpuser1
service vsftpd start


常见错误:

1.553 Could not create file
一般都是SELinux的问题,设置SELinux的一个值,重启服务器即可。
setsebool -P ftpd_disable_trans 1
service vsftpd restart

2.500 OOPS: bad bool value in config file for: write_enable
注意你的CentOS FTP服务文件中保证每一行最后没有任何空格,一般出错就是在多余的空格上。



更改端口号:listen_port=端口号 (需要自己添加)

欢迎信息:ftpd_banner=欢迎信息



====================================================================

权限问题:

当virtual_use_local_privs=YES时,虚拟用户和本地用户有相同的权限;
当virtual_use_local_privs=NO时,虚拟用户和匿名用户有相同的权限,默认是NO。

当virtual_use_local_privs=YES,write_enable=YES时,虚拟用户具有写权限(上传、下载、删除、重命名)。

当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=YES,
anon_upload_enable=YES时,虚拟用户不能浏览目录,只能上传文件,无其他权限。

当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,
anon_upload_enable=NO时,虚拟用户只能下载文件,无其他权限。

当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,
anon_upload_enable=YES时,虚拟用户只能上传和下载文件,无其他权限。

当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,
anon_mkdir_write_enable=YES时,虚拟用户只能下载文件和创建文件夹,无其他权限。

当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,
anon_other_write_enable=YES时,虚拟用户只能下载、删除和重命名文件,无其他权限。


一些RadHat版本是默认打开SeLinux的。这个东西有加强安全性的同时很讨厌,比如让配置好的vsftpd无法正常登录。

#setsebool -P ftpd_disable_trans 1

重启FTP服务~



IP限制的方法

vsftpd中的配置需要 tcp_wrappers=YES

/etc/hosts.allow 中加入允许的IP

vsftpd : IP1 IP2 : allow

/etc/hosts.deny 中屏蔽所有IP

vsftpd : ALL : deny

重启服务 service xinetd restart (此服务应该开机启动!)
分享到:
评论

相关推荐

    Centos7.9安装配置vsftpd

    在 CentOS 7.9 上安装和配置 vsftpd 需要遵循以下步骤:关闭防火墙、关闭 SELinux、创建 FTP 目录、安装 vsftpd、配置 vsftpd 和测试 vsftpd。通过遵循这些步骤,可以实现匿名用户的上传和下载操作,从而满足业务...

    Centos 8 vsftpd多用户FTP服务器配置完美方案——同时解决PORT和PASV模式

    Centos 8 vsftpd 多用户 FTP 服务器配置完美方案 在CentOS 8系统中,配置vsftpd多用户FTP服务器,实现多虚拟用户FTP连接,并同时解决FTP PORT和PASV模式下的问题。 vsftpd简介 vsftpd是非常流行的FTP服务器软件,...

    centos7部署vsftpd.docx

    部署 VSFTPD 服务器需要安装软件包、启动和启用服务、配置防火墙、创建 FTP 用户、配置 SELinux 和配置 VSFTPD 服务器。遵循这些步骤,可以轻松地在 CentOS 7 上部署 VSFTPD 服务器,满足 FTP 文件传输的需求。

    centos7上安装与卸载vsftpd服务器

    ### CentOS 7 上安装与卸载 vsftpd ...通过以上步骤,您就可以在 CentOS 7 上成功安装并配置 vsftpd 服务器了。这些配置项涵盖了 vsftpd 的基本功能,包括安全性和性能优化等方面,可以满足大多数应用场景的需求。

    CentOS 7.0 使用Vsftpd服务传输文件.zip

    **CentOS 7.0 使用Vsftpd服务传输文件** Vsftpd(Very Secure FTP Daemon)是一款在Linux系统中广泛使用的FTP服务器软件,以其高度的安全性和可配置性而备受推崇。在CentOS 7.0操作系统中,我们可以利用Vsftpd来...

    CentOS vsftpd配置解析及实例

    标题与描述均聚焦于“CentOS vsftpd配置解析及实例”,这暗示着文章将深入探讨如何在CentOS操作系统上配置vsftpd(Very Secure FTP Daemon),以搭建一个功能全面的FTP服务器。以下是对该主题的详细分析: ### 1. ...

    Centos下使用vsftpd安装ftp服务v1.2

    安装完成后,启动vsftpd服务并设置开机启动: ``` sudo systemctl start vsftpd sudo systemctl enable vsftpd ``` 4. 为vsftpd建立虚拟账户 为了实现更灵活的权限管理,可以使用虚拟账户。虚拟账户与系统用户不...

    centos中配置vsftpd服务器

    在CentOS Linux系统下配置vsftpd(Very Secure FTP Daemon)是一项重要的网络服务配置任务。本文将详细介绍如何在CentOS Server 5.5上安装与配置vsftpd版本2.3.4。vsftpd以其高度的安全性和速度成为Unix-like系统中...

    centos FTP服务器的架设和配置

    以上就是配置一个完整的CentOS FTP服务器的关键步骤,确保在调整配置后重启vsftpd服务以使更改生效。请注意,为了保证服务器的安全,务必定期更新系统和软件,并遵循最小权限原则来分配用户权限。

    centos7.2-vsftpd安装配置步骤

    在 CentOS 7.2 系统中安装与配置 VSFTPD 服务,并实现虚拟用户登录功能,可以有效地增强 FTP 服务的安全性和灵活性。虚拟用户登录允许管理员为每个用户指定一个独立的登录目录,这有助于隔离不同用户的数据访问权限...

    阿里云ECS CentOS7 Linux配置FTP-vsftpd.docx

    - 修改完配置文件后,使用命令`service vsftpd restart`重启vsftpd服务使配置生效。 #### 安全组配置 为了确保客户端能够正常访问FTP服务器,还需要进行阿里云安全组的配置: 1. **打开阿里云安全组**: - 登录...

    CentOS安装FTP及配置用户.doc

    下面我们将介绍如何在 CentOS 系统上安装 vsftpd 作为 FTP 服务器,并配置用户。 一、vsftpd 介绍 vsftpd 是一款在 Linux 发行版中最受推崇的 FTP 服务器程序。特点是小巧轻快,安全易用。vsftpd 的名字代表”very...

    vsftpd搭建ftp服务器 centos7.5 .zip

    保存并退出配置文件后,重启vsftpd服务以应用更改: ```bash sudo systemctl restart vsftpd ``` 为了测试FTP服务器是否正常工作,可以在同一台机器上使用`ftp`命令尝试连接: ```bash ftp localhost ``` 如果...

    CentOS下FTP配置

    Vsftpd服务需要特定的用户来运行FTP服务。在示例中,创建了两个用户:`vsftpd` 和 `virtusers`。`vsftpd` 用户用于服务本身,而 `virtusers` 用户通常用于虚拟主机配置。 ```bash sudo useradd vsftpd -s /sbin/...

    centos 6.3 配置vsftpd

    根据提供的文件信息,我们可以详细解析如何在 CentOS 6.3 中配置 vsftpd(Very Secure FTP Daemon)服务。以下步骤将逐步指导您完成整个过程。 ### 安装vsftpd 首先确认系统是否已安装 vsftpd。可以使用 `rpm -q ...

    centos7.0 vsftpd配置

    网上搜了很多vsftpd的配置,都没弄好,自己记录了一下搭建vsftpd及增加用户的过程

    Centos7 ftp安装配置

    vsftpd 是一个常用的 FTP 服务器软件,本文将详细介绍如何在 Centos7 操作系统中安装和配置 vsftpd 服务器。 一、安装 vsftpd 首先,需要使用 yum 包管理工具安装 vsftpd 服务器。使用以下命令安装 vsftpd: ``` ...

    linux的centOS7.5(1804)版本的vsftpd+ftp客户端rpm安装包

    在本场景中,我们关注的是如何在CentOS 7.5上安装并配置VSFTPD(Very Secure FTP Daemon)服务器,以及FTP客户端。这两个组件可以通过提供的RPM(Red Hat Package Manager)安装包进行安装。 首先,VSFTPD是一个...

    centos7下的vsftpd-3.0.4的rpm包

    VSFTPD(Very Secure FTP Daemon)是一款在Linux系统中广泛使用的FTP服务器软件,以其高度的安全性和可配置性而著名。标题中的"centos7下的vsftpd-3.0.4的rpm包"指的是适用于CentOS 7操作系统的VSFTPD 3.0.4版本的...

Global site tag (gtag.js) - Google Analytics