Jak ograniczyć użytkowników SFTP do katalogów domowych za pomocą więzienia Chroot
- 1843
- 46
- Juliusz Sienkiewicz
W tym samouczku będziemy omawiać, jak ograniczyć Sftp użytkownicy do ich katalogów domowych lub konkretnych katalogów. Oznacza to, że użytkownik może uzyskać dostęp tylko do jego/jej katalogu domowego, a nie całego systemu plików.
Ograniczanie użytkowników katalogów domowych jest niezbędne, szczególnie w środowisku współdzielonego serwera, dzięki czemu nieautoryzowany użytkownik nie zaprezentował się do plików i folderów drugiego użytkownika.
Ważny: Należy również pamiętać, że celem tego artykułu jest dostarczenie wyłącznie dostępu do SFTP, a nie loginów SSH, poprzez ten artykuł będzie miał uprawnienia do przesyłania plików, ale nie wolno wykonywać zdalnej sesji SSH SSH.
Sugerowane przeczytanie: Ogranicz dostęp użytkownika SSH do określonego katalogu za pomocą więzienia chrooted
Najprostszym sposobem na to jest stworzenie chrootowanego środowiska więzienia dla SFTP Access. Ta metoda jest taka sama dla wszystkich systemów operacyjnych UNIX/Linux. Korzystając z środowiska chrooted, możemy ograniczyć użytkowników do ich katalogu domowego lub do określonego katalogu.
Ogranicz użytkowników do katalogów domowych
W tej sekcji utworzymy nową grupę o nazwie sftpgroup i przypisz prawidłową własność i uprawnienia do kont użytkowników. Istnieją dwie możliwości ograniczenia użytkowników do domu lub konkretnych katalogów, zobaczymy obie strony w tym artykule.
Utwórz lub modyfikuj użytkowników i grupy
Na przykład ograniczmy istniejącego użytkownika Tecmint
, do jego/jej katalogu domowego nazwanego /Home/Tecmint
. W tym celu musisz stworzyć nowy sftpgroup grupa używa GroupAdd polecenie jak pokazano:
# grupaadd sftpgroup
Następnie przypisz użytkownika „Tecmint” Do sftpgroup Grupa.
# usermod -g sftpgroup tecmint
Na przykład możesz utworzyć nowego użytkownika za pomocą polecenia useradd Senthil
i przypisz użytkownika do Sftpusers Grupa.
# adduser senthil -g sftpgroup -s /sbin /nologin # passwd tecMint
Zmodyfikuj plik konfiguracyjny SSH
Otwórz i dodaj następujące wiersze do /etc/ssh/sshd_config
plik konfiguracyjny.
Podsystem SFTP Wewnętrzna SFTP Grupa dopasowania SFTPGroup ChrootDirectory /Home ForceCommand Internal-SFTP x11fording NO bez dopuszczalnych informacji NO
Zapisz i wyjdź z pliku, uruchom ponownie usługę SSHD, aby wdrożyć nowe zmiany.
# Systemctl restart SSHD lub # Service SSHD restart
Jeśli odbywasz wielu użytkowników do tego samego katalogu, powinieneś zmienić uprawnienia katalogu domowego każdego użytkownika, aby uniemożliwić wszystkim użytkownikom przeglądanie katalogów domowych użytkowników.
# CHMOD 700 /HOME /TECMINT
Sprawdź logowanie użytkowników SSH i SFTP
Teraz nadszedł czas, aby sprawdzić login z systemu lokalnego. Spróbuj ssh swój system zdalny z systemu lokalnego.
# ssh [chroniony e -mail]
Tutaj,
- Tecmint - Nazwa użytkownika systemu zdalnego systemu.
- 192.168.1.150 - Adres IP systemu zdalnego systemu.
Przykładowy wyjście:
Hasło [e -mail chronione]: nie można chdir do katalogu domowego /home /tecMint: brak takiego pliku lub katalogu ta usługa pozwala tylko na połączenia SFTP. Połączenie z 192.168.1.150 zamkniętych.
Następnie dostęp do systemu zdalnego za pomocą SFTP.
# sftP [chroniony e -mail]
Przykładowy wyjście:
Hasło [chronione e -mail]: podłączone do 192.168.1.150. sftp>
Sprawdźmy aktualny katalog roboczy:
SFTP & GT PWD Zdalny katalog roboczy: / sftp & gt ls Tecmint
Tutaj, Tecmint
to katalog domowy. CD do Tecmint katalog i utwórz wybrane pliki lub foldery.
SFTP & GT CD Tecmint Zdalny katalog roboczy: / Test SFTP & GT MKDIR Tecmint
Ogranicz użytkowników do konkretnego katalogu
W naszym poprzednim przykładzie ograniczamy istniejących użytkowników do katalogu domowego. Teraz zobaczymy, jak ograniczyć nowego użytkownika do niestandardowego katalogu.
Utwórz grupę i nowych użytkowników
Utwórz nową grupę sftpgroup
.
# grupaadd sftpgroup
Następnie utwórz katalog grupy SFTP i przypisz uprawnienia dla użytkownika root.
# mkdir -p/sftpusers/chroot # chown root: root/sftpusers/chroot/
Następnie utwórz nowe katalogi dla każdego użytkownika, do którego będą mieli pełny dostęp. Na przykład utworzymy Tecmint
Użytkownik i jego nowy katalog domowy z prawidłowym uprawnieniem do grupy przy użyciu następującej serii poleceń.
# adduser TecMint -g sftpgroup -s/sbin/nologin # passwd tecmint # mkdir/sftpusers/chroot/tecmint # chown tecMint: sftpgroup/sftpusers/chroot/tecMint/ # chmod 700/sftpusers/chroot/tecMint/tecMint/
Skonfiguruj SSH dla SFTP Access
Zmodyfikuj lub dodaj następujące wiersze na końcu pliku:
#SubSystem SFTP/usr/libexec/openssh/sftp-server Podsystem SFTP SFTP Grupa dopasowania SFTP SFTPGROUP ChrootDirectory/Sftpusers/Chroot/ForceCommand Internal-SFTP x11 wdroże
Zapisz i wyjdź z pliku. Uruchom ponownie usługę SSHD, aby wejść w życie zapisane zmiany.
# Systemctl restart SSHD lub # Service SSHD restart
To wszystko, możesz sprawdzić, logując się na serwerze zdalnego SSH i SFTP za pomocą powyższego kroku w Verify SSH i SFTP Login.
Pamiętaj, że ta metoda wyłączy dostęp do powłoki, tj.e Nie możesz uzyskać dostępu do sesji powłoki systemu zdalnego za pomocą SSH. Możesz uzyskać dostęp tylko do systemów zdalnych za pośrednictwem SFTP i przesyłać pliki do i z systemów lokalnych i zdalnych.
Wniosek
Teraz wiesz, jak ograniczać użytkowników katalogów domowych za pomocą środowiska chroot w Linux. Jeśli uznasz to za przydatne, udostępnij ten artykuł w sieciach społecznościowych i daj nam znać w sekcji komentarzy poniżej, jeśli istnieją inne metody ograniczania użytkowników katalogów domowych.
- « Jak zainstalować najnowsze Magento CMS w Ubuntu i Debian
- 3 sposoby na listę wszystkich zainstalowanych pakietów w Rhel, Centos i Fedora »