GNU/Linux >> Znalost Linux >  >> Cent OS

Jak nastavit Pure-FTPD s MySQL na CentOS a RedHat

Pure-FTPd je bezplatný a bezpečný FTP server. Nenabízí zbytečné zvonky a píšťalky, ale zaměřuje se na efektivitu a snadné použití. Poskytuje jednoduché odpovědi na běžné potřeby a navíc jedinečné užitečné funkce pro osobní uživatele i poskytovatele hostingu.

Tento návod vám pomůže nastavit Pure-FTPD s MySQL jako uživatelskou databázi. Poskytuje také podrobné pokyny k vytvoření uživatele a testování.

Krok 1:Nainstalujte MySQL (přeskočte, pokud již máte)

Nejprve musíme nainstalovat MySQL na náš systém pomocí následujících kroků příkazu.

# yum install mysql mysql-server

kliknutím sem zobrazíte podrobné pokyny pro instalaci mysql.

Krok 2:Instalace Pure-FTPD

Použijte následující příkaz k instalaci pure-ftpd na váš linuxový systém.

# yum install pure-ftpd

Krok 3:Vytvořte uživatele a databázi MySQL

Po instalaci balíčku pure-ftpd umožňuje vytvořit databázi mysql, tabulku a uživatele pro ukládání uživatelských informací.

# 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

Krok 4:Konfigurace Pure-FTPD

Chystáme se nakonfigurovat čistý ftpd tak, aby ukládal přihlašovací údaje uživatele do databáze mysql. Nejprve upravte hlavní konfigurační soubor pure-ftpd

# vim /etc/pure-ftpd/pure-ftpd.conf

a proveďte následující změny.

   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

Po provedení změn v konfiguraci pure-ftpd nechte upravit konfigurační soubor pure-ftpd mysql

# vim /etc/pure-ftpd/pureftpd-mysql.conf

a aktualizujte následující proměnné

   MYSQLUser       pureftpd
   MYSQLPassword   _password_
   MYSQLDatabase   pureftpd
   MYSQLCrypt      md5

Krok 5:Otestujte nastavení Pure-FTPD

V tomto kroku jsme dokončili nastavení čistého ftpd, nyní musíme otestovat naše nastavení vytvořením našeho prvního ftp účtu. Abychom otestovali naše nastavení, musíme nejprve vytvořit uživatele v systému linux. Poté použijeme UID a GID uživatelů k vytvoření našich virtuálních ftp účtů.

Vytvořit uživatelský účet:

# useradd demouser1
# passwd demouser1

Získejte UID a GID tohoto účtu:

# cat /etc/passwd | grep demouser1
demouser1:x:504:505::/home/demouser1:/bin/bash

Podle výše uvedeného výstupu jsme zjistili, že UID usres je 504 a GID je 505.

Vytvořit účet FTP
Umožňuje přihlášení k serveru mysql nebo přístup přes phpMyAdmin a vytvoření vašeho prvního účtu. Pro tento tutoriál používám příkazový řádek.

# 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

Podle výše uvedeného dotazu jsme úspěšně vytvořili náš první ftp účet ftpuser1 s heslem _password_ ,

Připojte se k serveru FTP pomocí nově vytvořeného ftp účtu a pokuste se nahrát testovací soubor.

C:> ftp ftp.tecadmin.net

Connected to ftp.tecadmin.net.
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.tecadmin.net:(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:>

Podle výše uvedených výsledků jsme se úspěšně připojili k uživateli ftp a nahráli testovací soubor. Pojďme zkontrolovat oprávnění těchto souborů na serveru.

# ls -l /home/demouser1/test.txt
-rw-r--r-- 1 demouser1 demouser1 2525 Dec  4 21:39 /home/demouser1/test.txt

Nyní můžete vidět, že soubory získávají oprávnění daného uživatele, které UID, GID jsme použili pro daný FTP účet.


Cent OS
  1. Jak nastavit LogAnalyzer s Rsyslog a MySQL

  2. Jak nastavit Opencart na Rocky Linux/Centos 8 s Apache, PHP, Mysql (LAMP Stack)

  3. Jak nahradit MySQL za MariaDB na CentOS 6

  1. Jak nainstalovat MySQL na CentOS 8

  2. Jak nastavit replikaci MySQL na CentOS

  3. Jak nainstalovat MySQL 5.6 na CentOS 6.x

  1. Jak nastavit FTP server s VSFTPD na CentOS 7

  2. Jak nainstalovat MySQL na CentOS 8

  3. Jak nastavit FTP server s VSFTPD na CentOS 8