HCRM博客

CentOS 6.5下如何搭建与维护安全的FTP服务器?

在CentOS 6.5操作系统中搭建FTP服务器是一项常见的任务,通常使用vsftpd(Very Secure FTP Daemon)来实现,下面将详细介绍如何在CentOS 6.5上安装和配置vsftpd,包括安装步骤、配置文件修改以及常见问题的解决方法。

一、vsftpd简介

vsftpd是一款运行在Linux操作系统上的FTP服务程序,不仅完全开源而且免费,它具有很高的安全性、传输速度,并支持虚拟用户验证等其他FTP服务程序不具备的特点。

CentOS 6.5下如何搭建与维护安全的FTP服务器?-图1
(图片来源网络,侵权删除)

二、安装vsftpd

1、检查是否已安装vsftpd

  • rpm qa | grep vsftpd

如果未安装,可以使用以下命令进行安装:

  • yum y install vsftpd

2、启动并设置开机启动

  • service vsftpd start
  • chkconfig vsftpd on

3、查看服务状态

  • service vsftpd status

三、配置vsftpd

vsftpd的主要配置文件位于/etc/vsftpd/vsftpd.conf,以下是一些常用的配置参数及其作用:

参数 作用
anonymous_enable=YES 允许匿名用户访问
local_enable=YES 允许本地用户登录FTP
write_enable=YES 允许写入操作
local_umask=022 设置上传后文件的权限掩码
dirmessage_enable=YES 开启目录标语功能
xferlog_enable=YES 开启日志记录功能
connect_from_port_20=YES 设定端口20进行数据连接(主动模式)
xferlog_std_format=YES 设定日志使用标准的记录格式
listen=YES 设定vsftpd服务工作在StandAlone模式下
userlist_enable=YES 设定userlist_file中的用户将不得使用FTP
tcp_wrappers=YES 设定支持TCP Wrappers
guest_enable=YES 启用虚拟用户功能
guest_username=virtualhost 指定虚拟用户的宿主用户
virtual_use_local_privs=YES 设定虚拟用户的权限符合他们的宿主用户
pam_service_name=vsftpd 设定PAM服务下vsftpd的验证配置文件名
user_config_dir=/etc/vsftpd/virtualconf 设定虚拟用户个人Vsftp的配置文件存放路径

四、配置虚拟用户

1、创建虚拟宿主用户

CentOS 6.5下如何搭建与维护安全的FTP服务器?-图2
(图片来源网络,侵权删除)
  • useradd ftpuser s /sbin/nologin

2、修改vsftpd的核心配置文件

  • vim /etc/vsftpd/vsftpd.conf

修改或添加以下配置:

  • anonymous_enable=NO
  • local_enable=YES
  • write_enable=YES
  • local_umask=022
  • anon_upload_enable=NO
  • anon_mkdir_write_enable=NO
  • dirmessage_enable=YES
  • xferlog_enable=YES
  • connect_from_port_20=YES
  • chown_uploads=NO
  • xferlog_file=/var/log/xferlog
  • xferlog_std_format=YES
  • chroot_local_user=YES
  • listen=YES
  • userlist_enable=YES
  • tcp_wrappers=YES
  • guest_enable=YES
  • guest_username=ftpuser
  • virtual_use_local_privs=YES
  • pam_service_name=vsftpd
  • user_config_dir=/etc/vsftpd/virtualconf

3、建立虚拟用户名单文件

  • touch /etc/vsftpd/virtusers

编辑该文件,添加虚拟用户信息,格式如下:

  • virtual1
  • 123456
  • virtual2
  • 123456

4、生成虚拟用户数据库文件

  • db_load T t hash f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.db

5、设定PAM验证文件

CentOS 6.5下如何搭建与维护安全的FTP服务器?-图3
(图片来源网络,侵权删除)

清空并添加以下内容到/etc/pam.d/vsftpd文件中:

  • auth required /lib/security/pam_userdb.so db=/etc/vsftpd/virtusers
  • account required /lib/security/pam_userdb.so db=/etc/vsftpd/virtusers

6、创建虚拟用户配置文件存放路径

  • mkdir /etc/vsftpd/virtualconf

7、重启vsftpd服务

  • service vsftpd restart

五、常见问题及解决方法

1、无法连接到FTP服务器

确保防火墙允许FTP服务的端口(默认是21)。

确保vsftpd服务已经启动并在运行。

检查SELinux设置,可能需要临时关闭SELinux或修改相关策略。

2、无法上传或下载文件

确保配置文件中write_enable参数设置为YES。

确保目录权限正确,特别是上传目录的写权限。

3、虚拟用户无法登录

确保PAM配置文件正确,并且虚拟用户数据库文件存在且格式正确。

确保guest_enableguest_username参数设置正确。

在CentOS 6.5上搭建FTP服务器主要涉及安装vsftpd、修改配置文件以及配置虚拟用户,通过上述步骤,可以实现一个功能完善且安全的FTP服务器,如果在实际操作过程中遇到问题,可以参考上述常见问题及解决方法进行排查和解决。

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/15348.html

分享:
扫描分享到社交APP
上一篇
下一篇