Linux ftp serveriai
FTP serverio kūrimas, pagalba linux aplinkoje:
Linux distribucija: debian.
$ apt-get install pure-ftpd-common pure-ftpd
Sukuriame pureftp grupę:
$ groupadd ftpgroup
Sukuriame pureftp user’į (vartotoją):
$ useradd -g ftpgroup -d /dev/null -s /etc ftpuser
Sukuriame user’į:
$ pure-pw useradd test -u ftpuser -g ftpgroup -d /home/pubftp/test -N 10
10 - tai sukurtam user’iui skirta vieta (MB). Jums reiks atnaujint duombazes:
$ pure-pw mkdb
Paleisti pureftpd:
$ /usr/sbin/pure-ftpd -S 127.0.0.1,21 -c 30 -C 1 -l puredb:/etc/pure-ftpd/pureftpd.pdb -x -E -j -R
FTP yra labai nesaugus protokolas, kuris visus slaptažodžius bei visą informaciją siunčia neužšifruotą. Naudojant TLS (Transport Layer Security) visa informacija gali būti šifruojama, taip FTP tampa daug saugesnis. Šis straipsnis, manau, paaiškins kaip reikia sukonfigūruoti ProFTPd su TLS Ubuntu 8.10 serveryje.
1. Pati pradžia
Šiame tutorial’e aš naudosiu “hostname” server1.example.com, kurio IP adresas - 192.168.0.100. Šie nustatymai turėtų skirtis nuo jūsų, tad pakeiskite į reikiamus.
Kadangi, mes turime visus žingsnius daryti su root teisėmis, todėl, manau, geriausia būtų iškarto “pasiversti į root”.
$ sudo su
2. Instaliuojame ProFTPd ir OpenSSL
OpenSSL yra reikalingas TLS palaikymui, todėl instaliuokime jį naudodami apt-get, rašom:
$ apt-get install proftpd openssl
Jūsų paklaus kelių klausimų, renkamės serverį - standalone. Saugumo atžvilgiu, jūs galite kelias eilutes įrašyti į /etc/proftpd/proftpd.conf (ačiū Reinaldo Carvalho, daugiau informacijos galite rasti čia).
$ vi /etc/proftpd/proftpd.conf
[...]
DefaultRoot ~
IdentLookups off
ServerIdent on “FTP Server ready.”
[...]
3. Kuriame SSL sertifikatą TLS’ui
Norėdami naudoti TLS, mes privalome sukūrti SSL sertifikatą. Aš kūrsiu jį į /etc/proftpd/ssl direktoriją:
$ mkdir /etc/proftpd/ssl
Dabar galime sugeneruoti SSL sertifikatą, naudojant šią komandą:
$ openssl req -new -x509 -days 365 -nodes -out /etc/proftpd/ssl/proftpd.cert.pem -keyout /etc/proftpd/ssl/proftpd.key.pem
Country Name (2 letter code) [AU]: <-- Įrašome savo šalį (pvz: "LT").
State or Province Name (full name) [Some-State]: <-- Įrašome valstiją, privinciją arba tiesiog paliekame taip kaip yra.
Locality Name (eg, city) []: <-- Įrašome miestą.
Organization Name (eg, company) [Internet Widgits Pty Ltd]: <-- Įrašome savo komanijos vardą.
Organizational Unit Name (eg, section) []: <-- Įrašome savo departamento pavadinimą (pvz: "IT departmentas").
Common Name (eg, YOUR name) []: <-- Įrašome savo domeno pavadinimą (pvz: "server1.example.com").
Email Address []: <-- Įrašome el.pašto adresą.
4. Įjungiame TLS palaikymą ProFTPd
Norėdami įjungti TLS, atidarome /etc/proftpd/proftpd.conf
$ vi /etc/proftpd/proftpd.conf
Nuimame komentarą “Include /etc/proftpd/tls.conf” eilutėje.
[...]
#
# This is used for FTPS connections
#
Include /etc/proftpd/tls.conf
[...]
Tada atsidarome /etc/proftpd/tls.conf ir padarome viską taip, kaip yra pavyzdyje:
TLSEngine on
TLSLog /var/log/proftpd/tls.log
TLSProtocol SSLv23
TLSOptions NoCertRequest
TLSRSACertificateFile /etc/proftpd/ssl/proftpd.cert.pem
TLSRSACertificateKeyFile /etc/proftpd/ssl/proftpd.key.pem
TLSVerifyClient off
TLSRequired on
jei jūs naudosite “TLSRequired on”, tada prie FTP galės pasijungti tik su TLS sesijomis (kitaip sakant, niekas kitas, tik FTP klientai, kurie palaiko TLS, negalės pasijungti prie jūsų FTP serverio). Jei uždėsite komentarą arba naudosite “TLSRequired off”, preie jūsų FTP serverio galės pasijungti ir su TLS ir be TLS palaikymų FTP klientai.
Perkrauname ProFTPd:
$ /etc/init.d/proftpd restart
Štai ir viskas. Dabar jau galite jungtis prie savo nuosavo FTP
serverio, tačiau, jeigu jūs nustatėte “TLSrequired on” jums būtinai
reikia susikonfigūruoti FTP klientą, kad jis palaikytų TLS, kaip tai
padaryti - žiūrėkite toliau.
Jeigu iškilo bėdų su TLS, pažiūrėkite log faile, jį galite surasti: /var/log/proftpd/tls.log.




