co to jest FTP?
FTP (File Transfer Protocol) to protokół sieciowy klient-serwer, który umożliwia użytkownikom wymianę plików do iz komputerów zdalnych.
FTP używa zwykłego tekstu do przesyłania danych i dostępu do danych. Istnieje kilka różnych serwerów FTP open-source dostępnych dla platformy systemu operacyjnego Linux. Najczęściej używanymi serwerami FTP są VSFTPD, ProFTPD i PureFTPD. Protokół FTP używa portu numer 21 do połączenia i portu 20 do przesyłania danych. W trybie pasywnym używane są dodatkowe porty.
w tym samouczku dowiemy się, jak skonfigurować i skonfigurować VSFTPD. Jest bardzo bezpieczny i stabilny i dostępny w repozytorium pakietów CentOS 8.
Zainstaluj serwer FTP VSFTP
aby zainstalować pakiet VSFTPD na CentOS 8, otwórz terminal lub połącz się z serwerem przez SSH jako użytkownik root i wpisz następujące polecenie:
# dnf install –y vsftpd
po zainstalowaniu pakietu Uruchom i włącz usługę VSFTPD za pomocą następującego polecenia:
# systemctl enable vsftpd# systemctl start vsftpd
Pobierz kopię oryginalnego pliku konfiguracyjnego /etc/vsftpd/vsftpd.conf wpisując następujące polecenie:
# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bk
teraz Edytuj plik konfiguracyjny, używając następującego polecenia:
# vim /etc/vsftpd/vsftpd.conf
znajdź i ustaw w nim następujące dyrektywy:
anonymous_enable=NO # disable anonymous users(Unknown users)local_enable=YES # allow local userswrite_enable=YES # allow ftp write commandslocal_umask=022 # set default umaskdirmessage_enable=YES # enable messages on change directoryxferlog_enable=YES # enable logging of uploads and downloadsconnect_from_port_20=YES # ensure PORT transfer connections from port 20 xferlog_std_format=YES # keep standard log formatlisten=NO # prevent vsftpd run in stand-alone modelisten_ipv6=YES # allow vsftpd to listen on IPv6 socketpam_service_name=vsftpd # set PAM Service name to vsftpd
Konfiguracja listy użytkowników w serwerze FTP
domyślnie wszyscy użytkownicy znajdujący się w pliku user_list znajdującym się w /etc/vsftpd/user_list mogą korzystać z usług FTP.
aby ograniczyć użytkowników w środowisku chrootowanym, użyj następujących dyrektyw:Reklama
chroot_local_user=YES # Create chrooted environment for usersallow_writeable_chroot=YES # Allow write permission to a user on chroot jail directory
aby ograniczyć użytkownika do katalogu domowego, użyj następujących dyrektyw:
userlist_enable=YES # enable vsftpd to load usernamesuserlist_deny=NO # allow access to users in the user list
jeśli chcesz zapewnić ogólny dostęp do naszego systemu, dodaj tę dyrektywę do swojego pliku konfiguracyjnego:
chroot_list_enable=YESchroot_list_file=/etc/vsftpd/chroot_list #users in this file list have an overall access
Zapisz i zamknij plik konfiguracyjny.
teraz Utwórz chroot_list w katalogu / etc / vsftpd/, używając następującego polecenia:
# touch /etc/vsftpd/chroot_list
dodają tylko tych użytkowników z tej listy, którym chcesz zapewnić ogólny dostęp do systemu.
Utwórz użytkownika, aby uzyskać dostęp do usług FTP
aby utworzyć użytkownika do korzystania z usługi FTP, użyj następującego polecenia:
# useradd user1# passwd user1
Dodaj tego użytkownika do pliku user_list aby ograniczyć użytkownika do jego katalogu domowego, użyj następującego polecenia:
# vim /etc/vsftpd/user_list
Wpisz” i ” dla insert i wpisz tę nazwę Użytkownika, jak pokazano na rysunku:
naciśnij ESC i wpisz: wq! do zapisania pliku.
jeśli chcesz zapewnić konkretnemu użytkownikowi ogólny dostęp do systemu dodaj tego użytkownika w/etc/vsftpd / chroot_list.
Uruchom ponownie usługę VSFTPD:
# systemctl restart vsftpd
Sprawdź status usługi FTP za pomocą następującego polecenia:
# systemctl status vsftpd
Skonfiguruj zaporę dla FTP
aby zezwolić na usługę FTP przez zaporę, użyj następującego polecenia:
# firewall-cmd - - add-service = ftp - - permanent# firewall-cmd - - reload
testowanie serwera FTP z komputera z systemem Windows
aby połączyć się z serwerem FTP, potrzebujesz oprogramowania klienckiego. Najczęściej używanym oprogramowaniem dla FTP jest FileZilla, WINSCP itp. Używam FileZilla do połączenia.
Otwórz oprogramowanie klienta FTP, wprowadź następujące dane, aby się połączyć:
Host — > adres IP lub nazwa hosta.
nazwa użytkownika: nazwa użytkownika FTP (w moim przypadku jest to user1)
hasło
Port: 21
po pomyślnym połączeniu możesz przesyłać/pobierać pliki zgodnie z potrzebami.
wniosek
w tym samouczku dowiedzieliśmy się, jak skonfigurować serwer FTP na Centos 8, Jak ograniczyć użytkowników do ich katalogu domowego i jak przyznać im dostęp do odczytu/zapisu. Widzieliśmy również, jak dać konkretnemu użytkownikowi ogólny dostęp do systemu.