Jak zabezpečit vsFTPd pomocí SSL/TLS

Velmi bezpečný FTP démon nebo jednoduše vsFTPd je lehký software s velkou schopností přizpůsobit. V tomto tutoriálu se chystáme zabezpečit již existující instalaci na systému Debian pomocí našeho vlastního certifikátu SSL/TLS s vlastním podpisem. Přestože je napsán pro Debian, měl by fungovat na většině distribucí Linuxu, jako je například Ubuntu a CentOS.


Instalace vsFTPd

Na čerstvém Linuxu VPS musíte nejprve nainstalovat vsFTPd. Ačkoli v tomto návodu najdete základní kroky k instalaci vsFTPd, doporučuji vám přečíst si také tyto dva podrobnější návody: Nastavení vsFTPd na Debian/Ubuntu a Instalace vsFTPd na CentOS . Všechny kroky týkající se instalace jsou zde podrobněji vysvětleny.

Instalace na Debian/Ubuntu:

apt-get install vsftpd

Instalace na CentOS:

yum install epel-release
yum install vsftpd

Konfigurace Otevřete konfigurační soubor: /etc/vsftpd.conf ve svém oblíbeném textovém editoru, v tomto tutoriálu používáme nano.

nano /etc/vsftpd.conf

Do konfigurace vložte následující řádky:

anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES

Dokončete restartováním démona vsFTPd:

/etc/init.d/vsftpd restart

Nyní byste měli být schopni se přihlásit jako jakýkoli místní uživatel přes FTP, nyní pojďme dál a zabezpečte tento software.


Vygenerujte certifikát s vlastním podpisem

Certifikát s vlastním podpisem se obvykle používá v protokolu smlouvy o veřejném klíči, který nyní použijete opensslke generování veřejného klíče a odpovídajícího soukromého klíče. Nejprve musíme vytvořit adresář pro uložení těchto dvou klíčových souborů, nejlépe na bezpečném místě, ke kterému se normální uživatelé nedostanou.

mkdir -p /etc/vsftpd/ssl

Nyní ke skutečnému generování certifikátu, uložíme oba klíče do stejného souboru ( /etc/vsftpd/ssl/vsftpd.pem ):

openssl req -x509 -nodes -days 365 -newkey rsa:4096 -keyout /etc/vsftpd/ssl/vsftpd.pem -out /etc/vsftpd/ssl/vsftpd.pem

Po provedení příkazu budete dotázáni na několik otázek, jako je kód země, stát, město, název organizace atd. použijte své vlastní informace nebo informace o vaší organizaci. Nyní je nejdůležitější řádek Common name, který se musí shodovat s IP adresou vašeho VPS, případně s názvem domény, který na něj ukazuje.

Tento certifikát bude platný 365 dní (~1 rok), bude používat protokol RSA key agreement s délkou klíče 4096 bitů a soubor obsahující oba klíče bude uložen v novém adresáři, který jsme právě vytvořili. Další podrobnosti o délce klíče a jeho vztahu k zabezpečení naleznete zde: Doporučení pro šifrování II .


Nainstalujte nový certifikát do vsFTPd

Abychom mohli začít používat náš nový certifikát a zajistit tak šifrování, musíme znovu otevřít konfigurační soubor:

nano /etc/vsftpd.conf

Musíme přidat cesty k našemu novému certifikátu a souborům klíčů. Protože jsou uloženy ve stejném souboru, mělo by to být stejné i uvnitř konfigurace.

rsa_cert_file=/etc/vsftpd/ssl/vsftpd.pem
rsa_private_key_file=/etc/vsftpd/ssl/vsftpd.pem

Abychom se ujistili, že bude povoleno SSL, musíme přidat tento řádek:

ssl_enable=YES

Volitelně můžeme blokovat anonymní uživatele v používání SSL, protože na veřejném FTP serveru není potřeba šifrování.

allow_anon_ssl=NO

Dále musíme určit, kdy použít SSL/TLS, to umožní šifrování pro přenos dat i pro přihlašovací údaje

force_local_data_ssl=YES
force_local_logins_ssl=YES

Můžeme také specifikovat, jaké verze a protokoly mají být použity. TLS je obecně bezpečnější než SSL, a proto můžeme povolit TLS a zároveň blokovat starší verze SSL.

ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO

Vyžadovat opětovné použití SSL a použití vysokých šifer také pomůže zlepšit zabezpečení. Z manuálových stránek vsFTPd:

require_ssl_reuse If set to yes, all SSL data connections are required to exhibit SSL session reuse (which proves that they know the same master secret as the control channel). Although this is a secure default, it may break many FTP clients, so you may want to disable it. For a discussion of the consequences, see http://scarybeastsecurity.blogspot.com/2009/02/vsftpd-210-released.html (Added in v2.1.0).

ssl_ciphers This option can be used to select which SSL ciphers vsftpd will allow for encrypted SSL connections. See the ciphers man page for further details. Note that restricting ciphers can be a useful security precaution as it prevents malicious remote parties forcing a cipher which they have found problems with.

require_ssl_reuse=YES
ssl_ciphers=HIGH

Dokončete restartováním vsftpddémona

/etc/init.d/vsftpd restart

Potvrďte instalaci

A to je vše, nyní byste měli být schopni se připojit k vašemu serveru a potvrdit, že vše funguje. Pokud používáte FileZilla, mělo by se po připojení otevřít dialogové okno obsahující informace o vaší organizaci (nebo cokoli, co jste zadali při generování certifikátu dříve). Výstup by pak měl vypadat takto:

Status: Connection established, waiting for welcome message...
Status: Initializing TLS...
Status: Verifying certificate...
Status: TLS connection established.

Chcete-li se dozvědět více o vsFTPd, podívejte se na jeho manuálové stránky:

man vsftpd

Zanechat komentář

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Umělá inteligence není v budoucnosti, je zde přímo v současnosti V tomto blogu si přečtěte, jak aplikace umělé inteligence ovlivnily různé sektory.

Útoky DDOS: Stručný přehled

Útoky DDOS: Stručný přehled

Jste také obětí DDOS útoků a nemáte jasno v metodách prevence? Chcete-li vyřešit své dotazy, přečtěte si tento článek.

Přemýšleli jste někdy, jak hackeři vydělávají peníze?

Přemýšleli jste někdy, jak hackeři vydělávají peníze?

Možná jste slyšeli, že hackeři vydělávají spoustu peněz, ale napadlo vás někdy, jak takové peníze vydělávají? Pojďme diskutovat.

Revoluční vynálezy od Googlu, které vám usnadní život.

Revoluční vynálezy od Googlu, které vám usnadní život.

Chcete vidět revoluční vynálezy Google a jak tyto vynálezy změnily život každého dnešního člověka? Pak si přečtěte na blogu a podívejte se na vynálezy od Googlu.

Friday Essential: Co se stalo s auty řízenými umělou inteligencí?

Friday Essential: Co se stalo s auty řízenými umělou inteligencí?

Koncept aut s vlastním pohonem, která vyrazí na silnice s pomocí umělé inteligence, je snem, který už nějakou dobu máme. Ale přes několik slibů nejsou nikde vidět. Přečtěte si tento blog a dozvíte se více…

Technologická singularita: vzdálená budoucnost lidské civilizace?

Technologická singularita: vzdálená budoucnost lidské civilizace?

Jak se věda vyvíjí rychlým tempem a přebírá mnoho našeho úsilí, stoupá také riziko, že se vystavíme nevysvětlitelné singularitě. Přečtěte si, co pro nás může znamenat singularita.

Funkcionality vrstev referenční architektury velkých dat

Funkcionality vrstev referenční architektury velkých dat

Přečtěte si blog, abyste co nejjednodušším způsobem poznali různé vrstvy v architektuře velkých dat a jejich funkce.

Evoluce ukládání dat – Infografika

Evoluce ukládání dat – Infografika

Způsoby ukládání dat se mohou vyvíjet od narození dat. Tento blog se zabývá vývojem ukládání dat na základě infografiky.

6 úžasných výhod toho, že máme v životě zařízení pro chytrou domácnost

6 úžasných výhod toho, že máme v životě zařízení pro chytrou domácnost

V tomto digitálním světě se chytrá domácí zařízení stala klíčovou součástí života. Zde je několik úžasných výhod chytrých domácích zařízení o tom, jak náš život stojí za to žít a zjednodušit jej.

Aktualizace doplňku macOS Catalina 10.15.4 způsobuje více problémů než řešení

Aktualizace doplňku macOS Catalina 10.15.4 způsobuje více problémů než řešení

Apple nedávno vydal doplňkovou aktualizaci macOS Catalina 10.15.4, která opravuje problémy, ale zdá se, že aktualizace způsobuje další problémy, které vedou k zablokování počítačů mac. Přečtěte si tento článek a dozvíte se více