Како да инсталирате Pure-FTPd со TLS и виртуелни корисници на OpenSUSE Leap 42.1
Pure-FTPd е бесплатен и лесен FTP сервер базиран на Troll-FTPd, развојот започна во 2001 година и работи на многу оперативни системи слични на Unix, вклучувајќи Linux, *BSD, Solaris и HP-UX. Pure-FTPd има многу функции како виртуелни домени, chroot home директориум, виртуелни корисници, TLS/SSL поддршка, виртуелна квота и многу повеќе.
Во ова упатство, ќе ви покажам како да инсталирате и конфигурирате pure-ftpd на OpenSUSE Leap 42.1. Ќе ви покажам како да поставите Pure-ftpd со TLS/SSL, а потоа да поставите виртуелни корисници.
Предуслов
- OpenSUSE Leap 42.1
- Привилегии на root
- OpenSUSE, знаење на Zypper
Чекор 1 - Инсталирајте и конфигурирајте го SuSEfirewall2
SuSEfirewall2 е скрипта за генерирање на конфигурацијата на заштитен ѕид во датотеката /etc/sysconfig/SuSEfirewall2. Ќе инсталираме SuSEfirewall2 и потоа ќе ги отвориме портите за SSH и услугата FTP.
Инсталирајте го SuSEfirewall2 со ципер:
zypper in SuSEfirewall2
Следно, уредете ја конфигурациската датотека /etc/sysconfig/SuSEfirewall2 со vim:
vim /etc/sysconfig/SuSEfirewall2
Додадете ги новите услуги ssh и FTP на линијата 253:
FW_SERVICES_EXT_TCP="ssh ftp"
Зачувај и излези.
Сега стартувајте го SuSEfirewall2 со командата systemctl:
systemctl start SuSEfirewall2
Чекор 2 - Инсталирајте и конфигурирајте Pure-FTPd
Во овој чекор, ќе инсталираме pure-ftpd со OpenSSL за конфигурацијата TLS/SSL и ќе ги конфигурираме корисникот и групата pure-ftpd.
Инсталирајте ги апликациите со zypper како што е прикажано подолу:
zypper in pure-ftpd openssl
Сега додадете ја новата група ftpgroup и новиот корисник за главниот корисник FTP наречен ftpuser во групата.
groupadd ftpgroup
useradd -g ftpgroup -d /dev/null -s /etc ftpuser
Одете во директориумот pure-ftpd и уредете ја конфигурациската датотека pure-ftpd.conf со уредникот vim:
cd /etc/pure-ftpd/
vim pure-ftpd.conf
Променете ја вредноста во линијата 81 во да за оневозможување на анонимниот корисник.
NoAnonymous yes
Откажете ја линијата 131 за да го конфигурирате задниот дел. Pure-ftpd има поддршка за MySQL, PostgreSQL и LDAP како заднина, но во ова упатство ќе користиме PureDB за поддржаниот.
PureDB /etc/pure-ftpd/pureftpd.pdb
Коментирајте ја линијата за автентикација PAMA за да ја оневозможите автентикацијата на PAM на линијата 141 бидејќи ќе користиме PureDB како извор за автентикација.
#PAMAuthentication yes
Зачувај и излези.
Чекор 3 - Конфигурирајте TLS/SSL за Pure-FTPd
Генерирајте нова датотека со сертификат потпишан самостојно во директориумот /etc/ssl/private со командата openssl:
openssl req -x509 -nodes -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem -days 365
Променете ги дозволите на датотеката со сертификат во 0600:
chmod 600 /etc/ssl/private/pure-ftpd.pem
Следно, вратете се во директориумот Pure-ftpd и уредете ја конфигурациската датотека за да овозможите поддршка за TLS/SSL за клиентската врска.
cd /etc/pure-ftpd/
vim pure-ftpd.conf
Откажете ја линијата 439 за да овозможите TLS.
TLS 1
Откажете ја линијата 449 од коментар и додајте нова опција за да ја направите побезбедна.
TLSCipherSuite HIGH:MEDIUM:+TLSv1:!SSLv2:!SSLv3
Откажете ја линијата 445 за да ја дефинирате датотеката со сертификат.
CertFile /etc/ssl/private/pure-ftpd.pem
Зачувај и излези.
Сега стартувајте pure-ftpd со командата systemctl:
systemctl start pure-ftpd
Чекор 4 - Конфигурирајте виртуелни корисници
Pure-FTPd обезбедува функции за креирање и користење на виртуелни корисници наместо реални корисници на системот (Linux). Pure-FTPd обезбедува неколку автентични позадини и конфигурацијата на виртуелниот корисник зависи од задниот дел што го користи серверот. Во чекор 2 го поставивме PureDB како заднина.
Можеме да создадеме нов виртуелен корисник со командата pure-pw обезбедена од pure-ftpd. Во овој чекор, ќе создадеме нов виртуелен корисник со име shiro со директориумот /srv/ftp/shiro како домашен директориум ftp и корисникот е префрлен во тој директориум за да не може да пристапи до другите системски директориуми.
Креирајте го новиот виртуелен корисник со pure-pw:
pure-pw useradd shiro -u ftpuser -d /srv/ftp/shiro
Направете директориум за виртуелниот корисник и сменете го сопственикот на тој директориум во главен корисник FTP.
mkdir -p /srv/ftp/shiro
chown -R ftpuser.ftpgroup /srv/ftp/shiro
Следно, мора да ги зачуваме промените со командата подолу:
pure-pw mkdb
Сега корисничкиот shiro е подготвен за употреба, можеме да користиме FTPp од командната линија или FileZilla за интерфејс GUI за да се поврземе со серверот.
Забелешка:
pure-pw има повеќе командни опции, можете да користите pure-pw help за да ги видите сите корисни команди.
Чекор 5 - Тестирање
Ќе ја користам командата FTP во терминалот за тестирање. Отворете го вашиот терминал и напишете \ftp\:
ftp
Следно внесете ја IP адресата на серверот чисто ftpd:
open 192.168.43.69
Најавете се со корисникот shiro и лозинката и потоа притиснете Enter.
Обидете се да испратите датотека со командата put:
put picture.png mypict.png
Сега ќе ја видите датотеката mypict.png на серверот со командата ls подолу:
ls
Референца
- https://www.novell.com/coolsolutions/feature/11418.html