Jak nainstalovat a nakonfigurovat server FTP s virtuálními uživateli Pure-FTPd +

Jsem jedním z těch, kteří rádi inovují a učí se nové věci, nedávno jsem musel instalovat a konfigurovat FTP server a rozhodl jsem se to udělat jinak, než jsem to dělal vždycky.

V tomto případě jsem zvolil FTP službu s virtuálními uživateli, kteří budou uloženi v zašifrovaném souboru (uživatelské jméno, heslo, nastavení atd.), to vše pomocí Pure FTPd.

Zde vám ukážu, jak na to... no, začneme 

Nejprve určete, že příkazy v tomto výukovém programu jsou určeny pro distribuce, jako je Debian nebo na nich založené, avšak pokud někdo na svém serveru používá jinou distribuci, musí nainstalovat stejné balíčky a použít níže uvedená nastavení, jedinou věc, kterou potřebujete je třeba změnit příkaz install.

Všechny příkazy, které budou číst, budou provedeny jako root, pokud si přejete, můžete před každý řádek přidat „sudo“.

1. Nejprve musíme nainstalovat Pure FTPd:

apt-get install pure-ftpd

Výstup ukončí něco takového:

instalací-pure-ftpd

2. Služba je již aktivovaná, ale je k ničemu, pokud jsme ji správně nenakonfigurovali. Řekněme, že máme dlouhý, ale téměř standardní konfigurační soubor; obsahuje obvyklé věci, jako je zákaz přístupu anonymních uživatelů atd.

cd /etc/pure-ftpd/ && wget http://ftp.desdelinux.net/pure-ftpd.conf

3. Předpokládejme, že naše FTP složka je /var/www/ftp/ a chceme vytvořit uživatele, který bude moci nahrávat informace do složky /var/www/ftp/sysadmin/. V terminálu napište následující:

pure-pw useradd sysadmin -u 2001 -g 2001 -d /var/www/ftp/sysadmin/

To znamená následující:

pure-pw: Příkaz používaný k manipulaci s uživateli Pure-FTPd
useradd: Označujeme, že přidáme uživatele
sysadmin: Uživatel, kterého chci vytvořit
-u 2001: ID uživatele tohoto uživatele
-g 2001: GroupID daného uživatele
-d / var / www / ftp / sysadmin /: Složka, která bude domovem daného uživatele, tj. kam bude nahrávat věci

Při zadávání předchozího řádku požádá o heslo daného uživatele.

Musí mít dříve vytvořenou složku sysadmin uvnitř / var / www / ftp /

4. Nyní je třeba aktualizovat soubor uživatelské databáze. Chcete-li to provést, přejděte do složky /etc/pure-ftpd/ (cd /etc/pure-ftpd) a do terminálu zadejte následující příkaz:

pure-pw mkdb

5. Nyní musíme spustit Pure-FTPd, ale s uvedením, že budeme používat soubor virtuálních uživatelů. Nejprve zastavme službu:

/etc/init.d/pure-ftpd stop

Pak se ujistíme, že se standardně nespustí normálně:

chmod -x /etc/init.d/pure-ftpd

A nyní zahajujeme službu po svém:

/usr/sbin/pure-ftpd -j -lpuredb:/etc/pure-ftpd/pureftpd.pdb

6. Pokud zkusíte použít aplikaci jako FileZilla, uvidíte, že se k vytvořenému uživateli můžete bez problémů připojit; nebudete však moci nic kopírovat ani vytvářet adresáře. Je to proto, že složka /var/www/ftp/sysadmin/ (v tomto příkladu domovský adresář uživatele) nemá odpovídající oprávnění. To lze opravit pomocí:

chown -R 2001:2001 /var/www/ftp/sysadmin/

Pamatujte, že Uid a Gid 2001 je uživatel uživatele, kterého jsme vytvořili, vytvořili jsme jej příkazem v předchozím kroku 3 

7. Chcete-li službu zastavit, jednoduše stiskněte [Ctrl]+[C] na stejném terminálu nebo na jiném terminálu proveďte následující:

killall pure-ftpd

Nyní označíme, že se služba spustí automaticky se systémem při spuštění serveru, upravíme soubor /etc/rc.local a před poslední řádek, který říká „exit 0“, vložíme příkaz, kterým spustíme Služba FTP:

/usr/sbin/pure-ftpd -j -lpuredb:/etc/pure-ftpd/pureftpd.pdb

Jinými slovy by to vypadalo takto:

rc-local-pure-ftpd

Soubor můžete upravit pomocí nano, vi nebo preferovaného editoru, nebo pokud chcete, zkopírujte a vložte tento příkaz, který vám usnadní práci:

perl -pi -e "s[exit 0][/usr/sbin/pure-ftpd -j -lpuredb:/etc/pure-ftpd/pureftpd.pdb]g" /etc/rc.local && echo "exit 0" >> /etc/rc.local

…ano ano… jak čtete, „usnadnit“, je to rozsáhlý příkaz ano, ale pouze nahrazuje text perlem a neškodnou ozvěnou 

8. Jakmile je to hotové, restartujte server a uvidíte, že služba pure-ftpd je nyní spuštěna a připravena ke spuštění 

Jak odstranit uživatele?

Jak jsem již zmínil, příkaz pure-pw potřebujeme k manipulaci s uživateli. Pro smazání uživatele (například sysadmin) bychom použili následující:

cd /etc/pure-ftpd/
pure-pw userdel sysadmin
pure-pw mkdb

Pamatujte, že kdykoli provedete změnu u kteréhokoli uživatele, musíte znovu vygenerovat soubor virtuální databáze uživatelů, který je umístěn v / etc / pure-ftpd / a je generován / aktualizován pomocí pure-pw mkdb

Každopádně, přátelé, myslím, že toho není mnoho k přidání, pozývám vás, abyste si přečetli pomoc pure-pw, protože nám umožňuje mnohem víc, než to, co jsem vám zde ukázal (toto je jen krátký a téměř základní návod).

Před rokem nebo dvěma jsem byl jedním z těch, kteří vše propojili s OpenLDAP nebo MySQL, ale postupem času jsem si uvědomil, že tolik připojení k databázím, které jsou servery jako takové, generuje spotřebu, kterou si často nemůžeme dovolit. životaschopné alternativy, jako je použití databází ve vlastních souborech aplikace, jako v tomto případě Pure-FTPd .pdb 

Jakékoli pochybnosti nebo otázky se pokusím pomoci, jak jen mohu.

Zdravím a ... šťastné hackování!


Přidat jako preferovaný zdroj v Googlu