如何在CentOS和RedHat中安装Pure-FTPd与MySQL

Pure-FTPd是一个自由和安全的FTP服务器。它没有无用花俏的功能,但侧重于效率和易用性。它提供了简单的命令,以满足需求,为个人用户和托管服务提供商提供独特的实用功能。 纯-ftpd的-与MySQL的 该如何引导将帮助您设置Pure-FTPd与MySQL作为用户数据库。还提供了详细的指示来创建用户和测试。

第1步:安装MySQL(如果已经安装,那么跳过这一步)

首先,我们需要使用命令下面的步骤我们的系统上安装MySQL。
# yum install mysql mysql-server
请点击这里了解对mysql安装的详细说明。

第2步:安装Pure-FTPd

使用下面的命令在Linux系统上安装Pure-FTPd。
# yum install pure-ftpd

第3步:创建MySQL用户和数据库

安装Pure-FTPd包后,让我们创建用于存储用户信息的mysql数据库,表和用户。
# mysql -u root -p
Enter password:

mysql> CREATE DATABASE pureftpd;
mysql> GRANT ALL ON pureftpd.* to 'pureftpd'@'localhost' IDENTIFIED BY '_password_';
mysql> FLUSH PRIVILEGES;
mysql> use pureftpd;
mysql> CREATE TABLE `users` (
  `ID` int(11) NOT NULL AUTO_INCREMENT,
  `User` varchar(32) NOT NULL DEFAULT '',
  `Password` varchar(64) NOT NULL DEFAULT '',
  `Uid` int(3) NOT NULL DEFAULT '500',
  `Gid` int(3) NOT NULL DEFAULT '500',
  `Dir` varchar(255) NOT NULL DEFAULT '',
  `QuotaSize` int(4) NOT NULL DEFAULT '50',
  `Status` enum('0','1') NOT NULL DEFAULT '1',
  `ULBandwidth` int(2) NOT NULL DEFAULT '100',
  `DLBandwidth` int(2) NOT NULL DEFAULT '100',
  `Date` date NOT NULL DEFAULT '0000-00-00',
  `LastModif` varchar(255) NOT NULL DEFAULT '',
  PRIMARY KEY (`ID`),
  UNIQUE KEY `User` (`User`),
  KEY `Uid` (`Uid`),
  KEY `Gid` (`Gid`),
  KEY `Dir` (`Dir`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;

mysql> quit

第4步:配置Pure-FTPd

我们要配置Pure-FTPd存储在MySQL数据库用户的登录信息。首先编辑Pure-FTPd的主配置文件
# vim /etc/pure-ftpd/pure-ftpd.conf
并进行以下更改。
   ChrootEveryone              yes
   MaxClientsNumber            50
   MaxClientsPerIP             2
   VerboseLog                  yes
   AnonymousOnly               no
   NoAnonymous                 yes
   MaxIdleTime                 15
   MySQLConfigFile             /etc/pure-ftpd/pureftpd-mysql.conf
   PAMAuthentication    	no
   UnixAuthentication     	no
在Pure-FTPd配置更改后,让编辑Pure-FTPd mysql的配置文件
# vim /etc/pure-ftpd/pureftpd-mysql.conf
和更新以下变量
   MYSQLUser       pureftpd
   MYSQLPassword   _password_
   MYSQLDatabase   pureftpd
   MYSQLCrypt      md5

第5步:测试Pure-FTPd的设置

到了这一步,我们已经完成了Pure-FTPd的设置,现在,我们需要创建我们的第一个FTP帐户来测试我们的设置。为了测试我们的设置,我们首先需要创建Linux系统的用户。之后,我们将使用该用户的UID和GID创建我们的虚拟FTP帐户。 创建用户帐户:
# useradd demouser1
# passwd demouser1
获得此帐户的UID和GID:
# cat /etc/passwd | grep demouser1
demouser1:x:504:505::/home/demouser1:/bin/bash
根据上面的输出中,我们发现,usres UID是504和GID是505。 创建FTP帐户 通过phpmyadmin让登录到MySQL服务器或访问并创建您的第一个帐户。在本教程中,我使用的命令行。
# mysql -u root -p
Enter password:

mysql> INSERT INTO `users` (`User`, `Password`, `Uid`, `Gid`, `Dir`, `QuotaSize`,
`Status`, `ULBandwidth`, `DLBandwidth`, `Date`, `LastModif`)
VALUES ('ftpuser1', md5('_password_'), '504', '505', '/home/demouser1',
'20', 2, '10', '10', now(), '');
mysql> quit
根据上面的查询,我们已经成功地创建了第一个FTP帐户 ftpuser1 连接到FTP服务器使用新创建的FTP帐户,并尝试上传测试文件。
C:> ftp ftp.youcl.com

Connected to ftp.youcl.com.
220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------
220-You are user number 1 of 50 allowed.
220-Local time is now 21:39. Server port: 21.
220-This is a private system - No anonymous login
220-IPv6 connections are also welcome on this server.
220 You will be disconnected after 15 minutes of inactivity.
User (ftp.youcl.com:(none)): ftpuser1
331 User ftpuser1 OK. Password required
Password:
230 OK. Current restricted directory is /
ftp> put test.txt
200 PORT command successful
150 Connecting to port 57216
226-File successfully transferred
226 0.004 seconds (measured here), 0.65 Mbytes per second
ftp: 2593 bytes sent in 0.00Seconds 2593.00Kbytes/sec.
ftp> bye
221-Goodbye. You uploaded 3 and downloaded 0 kbytes.
221 Logout.
C:>
根据上述结果,我们已经成功地连接到FTP用户,并上传测试文件。让我们检查服务器上的文件。
# ls -l /home/demouser1/test.txt
-rw-r--r-- 1 demouser1 demouser1 2525 Dec  4 21:39 /home/demouser1/test.txt
现在,你可以看到,文件中获取其UID,GID,我们已经成功的在CentOS和RedHat中安装Pure-FTPd。
赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏