Bezpieczne konfigurację serwera PROFTPD na CentOS 7 z TLS

Bezpieczne konfigurację serwera PROFTPD na CentOS 7 z TLS

Cel

Celem jest najpierw skonfigurowanie podstawowego serwera PROFTPD na Centos 7. Po uzyskaniu podstawowej konfiguracji serwera FTP dodamy tryb pasywny FTP i zwiększymy bezpieczeństwo, dodając bezpieczeństwo warstwy transportowej (TLS).

Na koniec dodajemy opcjonalną anonimową konfigurację, aby umożliwić anonimowego użytkownika zalogowanie się do serwera FTP bez nazwy użytkownika i hasła.

Wersje systemu operacyjnego i oprogramowania

  • System operacyjny: - Centos Linux Wydanie 7.5.1804
  • Oprogramowanie: - PROFTPD Wersja 1.3.5e

Wymagania

Uprzywilejowany dostęp do systemu Ubuntu jako root lub przez sudo Wymagane jest polecenie.

Trudność

ŚREDNI

Konwencje

  • # - Wymaga, aby podane polecenia Linux są wykonywane z uprawnieniami root bezpośrednio jako użytkownik root lub za pomocą sudo Komenda
  • $ - Biorąc pod uwagę polecenia Linux, które mają być wykonywane jako zwykły użytkownik niepewny

Instrukcje

Podstawowa konfiguracja FTP

Zacznijmy od podstawowej instalacji i konfiguracji serwera Proftp. Obejmuje to instalację, definicję reguł zapory i testowanie klientów.

Konfiguracja serwera

Serwer PROFTPD FTP jest częścią repozytorium EPEL. Dlatego pierwszym krokiem jest włączenie repozytorium EPEL, a następnie zainstalowanie serwera PROFTPD:

# Yum Zainstaluj Epel-Rellease # Yum Instaluj PROFTPD 

Następnie uruchom serwer PROFTPD i potwierdź jego prawidłowy start, sprawdzając otwarty port 21

# usługa proftpd start # ss -nlt 

Następnie musimy przetrwać całość w zaporze serwera, aby umożliwić ruch przychodzący w porcie 21

# firewall-cmd --add-port = 21/tcp --Permanent # firewall-cmd--relad 


Aby potwierdzić otwarty port przychodzący 21 wykonać:

# Firewall-Cmd-List-porty 
Konfigurowanie serwera Basig FTP za pomocą PROFTPD w Centos 7

Na tym etapie każdy istniejący użytkownik systemu jest w stanie zalogować się do nowo skonfigurowanego serwera PROFTPD. Opcjonalnie możemy utworzyć nowego użytkownika E.G. Lubos z dostępem do katalogu /var/ftp-share:

# useradd lubos -s /sbin /nologin -d /var /ftp -share # passwd lubos # chmod -r 750 /var /ftp -share # setsebool -p zezwolenie 

Połączenie klienta

W tym momencie powinniśmy być w stanie wykonać połączenie FTP ze zdalnego komputera klienta. Najłatwiejszym testem jest użycie ftp Komenda.

Biorąc pod uwagę, że nasz serwer PROFTPD można rozwiązać za pośrednictwem ftp.Linuxconfig.org Nazwa hosta i użytkownika Lubos jest istniejący wykonanie:

$ ftp ftp.Linuxconfig.Org podłączony do FTP.Linuxconfig.org. Gotowy serwer 220 FTP. Nazwa (ftp.Linuxconfig.ORG: Lubos): Lubos 331 Hasło wymagane dla Lubos Hasło: 230 użytkownika Lubos zalogowany w zdalnym systemie systemu to UNIX. Korzystanie z trybu binarnego do przesyłania plików. ftp> 
NOTATKA: Należy pamiętać, że w tym momencie jesteśmy w stanie tylko tworzyć „aktywne połączenia FTP”! Każda próba utworzenia „pasywnego połączenia FTP” zawiedzie.

Konfiguracja FTP trybu pasywnego



Konfiguracja serwera

Aby umożliwić naszemu serwerowi FTP zaakceptowanie również pasywnego połączenia FTP, wykonaj następujące polecenia, aby włączyć połączenia pasywne w efemerycznym zakresie portu zarejestrowanego IANA:

echo "Passiveports 49152 65534" >> /etc /Proftpd.conf 

Uruchom ponownie serwer PROFTPD:

# Usługa PROFTPD RESTART 

Otwórz zaporę dla portów w zasięgu 49152-65534:

# firewall-cmd --add-port = 49152-65534/tcp --Permanent # firewall-cmd--relad 

Potwierdź, że porty zostały poprawnie otwarte:

# Firewall-Cmd-List-porty 
Skonfiguruj serwer PROFTPD, aby odbierać pasywne połączenia FTP.

Połączenie klienta FTP

Jak wcześniej możemy teraz przetestować połączenie pasywne FTP za pomocą ftp Komenda. Upewnij się, że tym razem korzystasz z -P opcja, jak pokazano poniżej:

$ ftp -P ftp.Linuxconfig.Org podłączony do FTP.Linuxconfig.org. Gotowy serwer 220 FTP. Nazwa (ftp.Linuxconfig.ORG: Lubos): Lubos 331 Hasło wymagane dla Lubos Hasło: 230 użytkownika Lubos zalogowany w zdalnym systemie systemu to UNIX. Korzystanie z trybu binarnego do przesyłania plików. FTP> LS 227 Wprowadzanie Tryb pasywny (192 168,1,111,209,252). 150 Otwarcie połączenia danych trybu ASCII dla listy plików 226 Przenieś kompletne ftp> 

Wszystko działa zgodnie z oczekiwaniami!

Bezpieczny serwer FTP z TLS

Konfiguracja serwera

W przypadku, gdy planujesz korzystać z serwera FTP poza siecią lokalną, zaleca się korzystanie z pewnego rodzaju szyfrowania. Na szczęście konfiguracja PROFTPD z TLS jest niezwykle łatwa. Po pierwsze, jeśli już nie jest dostępne, zainstaluj Openssl pakiet:

# instalacja Yum OpenSSL 

Następnie utwórz certyfikat za pomocą następującego polecenia. Jedyną wymaganą wartością jest Nazwa zwyczajowa która jest nazwą hosta twojego serwera FTP:

# OpenSsl req -x509 -nodes -Newkey RSA: 1024 -Keyout/etc/pki/tls/certs/proftpd.pem -out/etc/pki/tls/certs/proftpd.PEM Generowanie 1024 -bitowego klucza prywatnego RSA… ++++++… ++++++ pisanie nowego klucza prywatnego do '/etc/pki/tls/certs/Proftpd.PEM '----- Zaraz zostaniesz poproszony o wprowadzenie informacji, które zostaną włączone do Twojego żądania certyfikatu. To, co zamierzasz wejść, to tak zwana nazwa wyróżniająca lub DN. Istnieje sporo pól, ale możesz zostawić puste pola na niektórych polach, jeśli wejdziesz, będzie wartość domyślna.', pole pozostanie puste. ----- Nazwa kraju (2 kod literowy) [XX]: Nazwa stanu lub prowincji (pełna nazwa) []: Nazwa lokalizacji (np. Miasto) [Domyślne miasto]: Nazwa organizacji (np. Firma) [Domyślna firma Ltd]: Nazwa jednostki organizacyjnej (np. Sekcja) []: nazwa zwyczajowa (np. nazwa lub nazwa hosta twojego serwera) []:ftp.Linuxconfig.org Adres e -mail []: 

Następnie, jako użytkownik root, otwórz /etc/sysconfig/proftpd Korzystanie z ulubionego edytora tekstu i zmiany:

Od: do: proftpd_options = "-dtls" 

Po przygotowaniu uruchom ponownie serwer PROFTPD:

# Usługa PROFTPD RESTART 


Połączenie klienta

Tym razem używamy FileZilla jako naszego klienta testowania FTP:

Utwórz nowe połączenie FTP. Aby przetestować TL, upewnij się, że wybierzesz poprawne Szyfrowanie I Typ logowania. Klient FTP ostrzeże cię przed Nieznany certyfikat. Kleszcz Zawsze ufaj i uderz OK.

TLS Szyfrowane połączenie.

Skonfiguruj anonimowego użytkownika FTP

Konfiguracja serwera

Aby umożliwić anonimowego użytkownika zalogowanie się do serwera FTP otwarte /etc/sysconfig/proftpd Korzystanie z ulubionego edytora tekstu i zmiany:

Od: proftpd_options = "-dtls" do: proftpd_options = "-dtls -danonimia_ftp" 

Powyżej zakładamy, że wcześniej włączasz TLS. Po gotowaniu uruchom ponownie serwer FTP:

# Usługa PROFTPD RESTART 

Połączenie klienta

Korzystanie z FileZilla jako naszego klienta testowania FTP:

Jak Typ logowania wybierać Anonimowy

Anonimowe połączenie FTP udane.

Załącznik

Blokuj/odrzuć dostęp do FTP użytkownika

Jeśli musisz zablokować/odmówić dostępu do serwera FTP dowolnego użytkownika systemu, dodaj jego nazwę użytkownika do /etc/ftpusers. Jedna nazwa użytkownika na linię. Takie postępowanie, każda próba się zalogowania nie powiedzie się 530 błąd logowania:

$ ftp ftp.Linuxconfig.Org podłączony do FTP.Linuxconfig.org. Gotowy serwer 220 FTP. Nazwa (ftp.Linuxconfig.Org: Lubos): Lubos 331 Hasło wymagane do Lubos hasło: 530 login Nieprawidłowy. Logowanie nie powiodło się. Zdalny typ systemu to UNIX. Korzystanie z trybu binarnego do przesyłania plików. ftp> 

Powiązane samouczki Linux:

  • Rzeczy do zainstalowania na Ubuntu 20.04
  • Rzeczy do zrobienia po zainstalowaniu Ubuntu 20.04 Focal Fossa Linux
  • Skonfiguruj serwer FTP w systemie Linux
  • Wprowadzenie do automatyzacji, narzędzi i technik Linuksa
  • Jak skonfigurować VSFTPD na Debian
  • Linux Pliki konfiguracyjne: Top 30 Najważniejsze
  • Jak skonfigurować serwer FTP/SFTP i klient na Almalinux
  • Lista klientów FTP i instalacja na Ubuntu 22.04 Linux…
  • Czy Linux może uzyskać wirusy? Badanie podatności Linuksa…
  • Mint 20: Lepsze niż Ubuntu i Microsoft Windows?