vsFTPd telepítése
Hozzon létre egy önaláírt tanúsítványt
Telepítse az új tanúsítványt a vsFTPd-ben
Erősítse meg a telepítést
A Very Secure FTP démon, vagy egyszerűen csak vsFTPd egy könnyű szoftver, amely nagyszerűen testreszabható. Ebben az oktatóanyagban egy már létező telepítést fogunk biztosítani egy Debian rendszeren saját önaláírt SSL/TLS tanúsítványunk segítségével. Annak ellenére, hogy Debianra írták, működnie kell a legtöbb Linux disztribúción, mint például az Ubuntu és a CentOS.
vsFTPd telepítése
Egy friss Linux VPS-en először telepítenie kell a vsFTPd-t. Bár ebben az oktatóanyagban megtalálja a vsFTPd telepítésének alapvető lépéseit, azt javaslom, hogy olvassa el ezt a két részletesebb oktatóanyagot is: a vsFTPd beállítása Debian/Ubuntu rendszeren és a vsFTPd telepítése CentOS rendszeren . Ott alaposabban elmagyarázzuk a telepítéssel kapcsolatos összes lépést.
Telepítés Debian/Ubuntu rendszerre:
apt-get install vsftpd
Telepítés CentOS-en:
yum install epel-release
yum install vsftpd
Konfiguráció
Nyissa meg a konfigurációs fájlt: /etc/vsftpd.conf kedvenc szövegszerkesztőjében, ebben az oktatóanyagban használjuk nano.
nano /etc/vsftpd.conf
Illessze be a következő sorokat a konfigurációba:
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
A vsFTPd démon újraindításával fejezze be:
/etc/init.d/vsftpd restart
Mostantól be kell tudnia jelentkezni bármely helyi felhasználóként FTP-n keresztül, most menjünk tovább, és biztosítsuk ezt a szoftvert.
Hozzon létre egy önaláírt tanúsítványt
Az önaláírt tanúsítványt általában egy nyilvános kulcsra vonatkozó megállapodási protokollban használják, opensslés most egy nyilvános kulcsot és egy megfelelő priv��t kulcsot állítanak elő. Először is létre kell hoznunk egy könyvtárat a két kulcsfájl tárolására, lehetőleg olyan biztonságos helyen, amelyhez a normál felhasználók nem férhetnek hozzá.
mkdir -p /etc/vsftpd/ssl
Most a tanúsítvány tényleges generálásához mindkét kulcsot ugyanabban a fájlban ( /etc/vsftpd/ssl/vsftpd.pem ) fogjuk tárolni :
openssl req -x509 -nodes -days 365 -newkey rsa:4096 -keyout /etc/vsftpd/ssl/vsftpd.pem -out /etc/vsftpd/ssl/vsftpd.pem
A parancs végrehajtása után feltesz néhány kérdést, például országkódot, államot, várost, szervezet nevét stb. használja saját vagy szervezeti adatait. Most a legfontosabb sor a közös név, amelynek meg kell egyeznie a VPS IP-címével, vagy egy domain név, amely rá mutat.
Ez a tanúsítvány 365 napig (~1 évig) lesz érvényes, 4096 bites kulcshosszúságú RSA kulcsszerződéses protokollt használ, és a mindkét kulcsot tartalmazó fájl az újonnan létrehozott könyvtárban kerül tárolásra. A kulcs hosszával és a biztonsággal való kapcsolatával kapcsolatos további részletekért lásd: Encryption II ajánlások .
Telepítse az új tanúsítványt a vsFTPd-ben
Új tanúsítványunk használatának megkezdéséhez és ezáltal a titkosítás biztosításához újra meg kell nyitnunk a konfigurációs fájlt:
nano /etc/vsftpd.conf
Hozzá kell adnunk az elérési utat az új tanúsítvány- és kulcsfájljainkhoz. Mivel ugyanabban a fájlban vannak tárolva, a konfiguráción belül is azonosnak kell lennie.
rsa_cert_file=/etc/vsftpd/ssl/vsftpd.pem
rsa_private_key_file=/etc/vsftpd/ssl/vsftpd.pem
Hozzá kell adnunk ezt a sort, hogy megbizonyosodjunk arról, hogy az SSL engedélyezve lesz:
ssl_enable=YES
Opcionálisan letilthatjuk az anonim felhasználókat az SSL használatában, mivel a nyilvános FTP-kiszolgálókon nincs szükség titkosításra.
allow_anon_ssl=NO
Ezután meg kell határoznunk, hogy mikor használjuk az SSL/TLS-t, ez lehetővé teszi mind az adatátvitel, mind a bejelentkezési adatok titkosítását
force_local_data_ssl=YES
force_local_logins_ssl=YES
Azt is megadhatjuk, hogy milyen verziókat és protokollokat használjunk. A TLS általában biztonságosabb, mint az SSL, ezért engedélyezhetjük a TLS-t, ugyanakkor blokkolhatjuk az SSL régebbi verzióit.
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
Az SSL újrafelhasználásának megkövetelése és a magas titkosítások használata szintén segít a biztonság javításában. A vsFTPd kézikönyvoldalairól:
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
Fejezze be a vsftpddémon újraindításával
/etc/init.d/vsftpd restart
Erősítse meg a telepítést
És ennyi, most már képesnek kell lennie csatlakozni a szerverhez, és meg kell győződnie arról, hogy minden működik. Ha FileZillát használ, a csatlakozáskor meg kell nyílnia egy párbeszédpanelnek, amely tartalmazza a szervezet adatait (vagy bármit, amit a tanúsítvány generálásakor megadott korábban). Ekkor a kimenetnek ehhez hasonlóan kell kinéznie:
Status: Connection established, waiting for welcome message...
Status: Initializing TLS...
Status: Verifying certificate...
Status: TLS connection established.
Ha többet szeretne megtudni a vsFTPd-ről, tekintse meg a kézikönyv oldalait:
man vsftpd