HCRM博客

如何在CentOS上安装和配置Proftpd服务器?

在CentOS系统上安装和配置proftpd是一个相对简单的过程,但需要遵循一系列步骤以确保成功,以下将详细解释如何在CentOS 7.5上安装、配置和使用ProFTPD,包括常见问题的解答。

一、安装ProFTPD

1、安装EPEL存储库:ProFTPD位于EPEL(Extra Packages for Enterprise Linux)存储库中,因此首先需要安装它。

如何在CentOS上安装和配置Proftpd服务器?-图1
(图片来源网络,侵权删除)
  • yum y install epelrelease

2、更新系统:确保所有内容都是最新的。

  • yum y update

3、安装ProFTPD:使用yum命令进行安装。

  • yum y install proftpd

二、配置ProFTPD

1、编辑配置文件:打开/etc/proftpd.conf文件进行配置修改。

  • nano /etc/proftpd.conf

2、更改服务器名称:将ServerName更改为您的服务器主机名。

  • ServerName "Your_Server_Hostname"

3、启用并启动ProFTPD:在CentOS 7上,使用systemctl命令来管理服务。

  • systemctl restart proftpd
  • systemctl enable proftpd

4、防火墙设置:允许传入的FTP连接。

如何在CentOS上安装和配置Proftpd服务器?-图2
(图片来源网络,侵权删除)

Firewalld:

  • firewallcmd permanent addport=21/tcp
  • firewallcmd reload

Iptables:

  • iptables A INPUT p tcp m tcp dport 20:21 j ACCEPT
  • iptablessave > /etc/sysconfig/iptables

三、启用被动连接模式

1、编辑配置文件:添加以下行以启用被动连接模式。

  • nano /etc/proftpd.conf
  • PassivePorts 60000 65535
  • AllowStoreRestart on
  • AllowRetrieveRestart on
  • TimeoutNoTransfer 65535
  • ListOptions "la"
  • TimeoutIdle 65535

2、防火墙设置:为被动端口范围添加规则。

Firewalld:

  • firewallcmd permanent addport=6000065535/tcp
  • firewallcmd reload

Iptables:

如何在CentOS上安装和配置Proftpd服务器?-图3
(图片来源网络,侵权删除)
  • iptables A INPUT p tcp m tcp dport 60000:65535 j ACCEPT
  • iptablessave > /etc/sysconfig/iptables

四、测试FTP服务

1、本地测试:使用netstat命令检查FTP守护进程是否正在运行。

  • netstat plan | grep :21

2、FTP客户端连接:安装ftp客户端并进行连接测试。

  • yum install y ftp
  • ftp localhost

输入有效的用户名和密码进行身份验证,如果无法进入,认证消息将写入/var/log/secure

五、配置SFTP(安全FTP)

1、编辑配置文件:取消注释以下行以加载mod_sftp模块。

  • nano /etc/proftpd.conf
  • LoadModule mod_sftp.c
  • LoadModule mod_sftp_pam.c

2、添加SFTP配置:在配置文件末尾添加以下内容。

  • <IfModule mod_sftp.c>
  • SFTPEngine on
  • SFTPLog /var/log/sftp.log
  • Port 2222
  • SFTPHostKey /etc/ssh/ssh_host_rsa_key
  • SFTPCompression delayed
  • </IfModule>

3、防火墙设置:允许SFTP端口。

Firewalld:

  • firewallcmd zone=public addport=2222/tcp permanent
  • firewallcmd reload

Iptables:

  • iptables A INPUT p tcp dport 2222 j ACCEPT
  • iptablessave > /etc/sysconfig/iptables

4、重启ProFTPD:在CentOS 7上重启服务。

  • systemctl restart proftpd

六、虚拟用户配置

1、创建虚拟用户文件:新建文件并设置权限。

  • touch /etc/ftpd.passwd
  • touch /etc/ftpd.group
  • chmod 440 /etc/ftpd.passwd
  • chmod 440 /etc/ftpd.group

2、编辑配置文件:指定虚拟用户配置文件。

  • nano /etc/proftpd.conf
  • AuthUserFile /etc/ftpd.passwd
  • AuthGroupFile /etc/ftpd.group
  • RequireValidShell off
  • PersistentPasswd off
  • AuthPAM off
  • SystemLog /var/log/proftpd/proftpd.log
  • AuthOrder mod_auth_file.c

3、检测配置文件语法:确保配置正确无误。

  • proftpd t

4、启动并配置开机启动:启动ProFTPD并设置为开机自启。

  • systemctl start proftpd
  • systemctl enable proftpd

七、FAQs问答环节

Q1: 如何修改ProFTPD的监听端口?

A1: 要修改ProFTPD的监听端口,可以编辑/etc/proftpd.conf文件,找到Port指令并更改其值,将监听端口改为2121:

  • Port 2121

然后重启ProFTPD服务以使更改生效:

  • systemctl restart proftpd

确保防火墙规则也相应地更新以允许新的端口。

Q2: ProFTPD支持哪些数据库后端?如何配置?

A2: ProFTPD支持多种数据库后端,包括MySQL、PostgreSQL、LDAP和SQLite等,以下是一个简单的MySQL配置示例:

1、安装必要的软件包

  • yum install proftpdmysql proftpdutils

2、编辑配置文件:取消注释以下行以加载mod_sql和mod_sql_mysql模块。

  • nano /etc/proftpd.conf
  • LoadModule mod_sql.c
  • LoadModule mod_sql_mysql.c

3、添加数据库配置:在配置文件末尾添加以下内容。

  • <IfModule mod_sql.c>
  • SQLBackend mysql
  • SQLEngine on
  • SQLAuthenticate on
  • SQLLogFile /var/log/proftpd/sql.log
  • SQLConnectInfo mysqluser@localhost password dbname
  • SQLUserInfo ftpuser userid passwd uid gid homedir shell
  • SQLGroupInfo ftpgroup groupname gid members
  • SQLMinUserGID 2001
  • SQLMinUserUID 2001
  • </IfModule>

4、重启ProFTPD:使更改生效。

  • systemctl restart proftpd

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

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