GNU/Linux >> Znalost Linux >  >> Debian

Jak nakonfigurovat SFTP server s Chrootem v Debianu 10

SFTP je zkratka pro Secure File Transfer Protocol / SSH File Transfer Protocol, je to jedna z nejběžnějších metod, která se používá k bezpečnému přenosu souborů přes ssh z našeho lokálního systému na vzdálený server a naopak. Hlavní výhodou sftp je, že nepotřebujeme instalovat žádný další balíček kromě ‘openssh-server “, ve většině linuxových distribucí je balíček „openssh-server“ součástí výchozí instalace. Další výhodou sftp je, že můžeme uživateli umožnit používat pouze sftp, nikoli ssh.

Nedávno byl vydán Debian 10 s kódovým názvem ‚Buster‘, v tomto článku si ukážeme, jak nakonfigurovat sftp s prostředím podobným Chroot ‚Jail‘ v systému Debian 10. Prostředí podobné Chroot Jail zde znamená, že uživatelé nemohou přejít ze svých příslušných domovských adresářů nebo uživatelé nemohou měnit adresáře ze svých domovských adresářů. Níže jsou uvedeny podrobnosti o laboratoři:

  • OS =Debian 10
  • IP adresa =192.168.56.151

Pojďme se vrhnout na kroky konfigurace SFTP,

Krok:1) Vytvořte skupinu pro sftp pomocí příkazu groupadd

Otevřete terminál, vytvořte skupinu s názvem „sftp_users ” pomocí níže uvedeného příkazu groupadd,

[email protected]:~# groupadd sftp_users

Krok:2) Přidejte uživatele do skupiny ‚sftp_users‘ a nastavte oprávnění

V případě, že chcete vytvořit nového uživatele a chcete jej přidat do skupiny ‚sftp_users‘, spusťte následující příkaz,

Syntaxe: #  useradd -m -G sftp_users

Předpokládejme, že uživatelské jméno je „Jonathan“

[e-mail chráněný]:~# useradd -m -G sftp_users jonathan

nastavte heslo pomocí následujícího příkazu chpasswd,

[e-mail chráněn]:~# echo "jonathan:" | chpasswd

V případě, že chcete přidat stávající uživatele do skupiny ‚sftp_users‘, pak spusťte pod příkazem usermod, předpokládejme, že již existující uživatelské jméno je ‚chris‘

[e-mail chráněný]:~# usermod -G sftp_users chris

Nyní nastavte požadovaná oprávnění pro uživatele,

[email protected]:~# chown root /home/jonathan /home/chris/

Vytvořte složku pro nahrávání v domovském adresáři uživatele a nastavte správné vlastnictví,

[chráněno e-mailem]:~# mkdir /home/jonathan/upload[chráněno e-mailem]:~# mkdir /home/chris/upload[e-mailem chráněno]:~# chown jonathan /home/jonathan/upload[chráněno e-mailem] :~# chown chris /home/chris/upload

Poznámka: Uživatelé jako Jonathan a Chris mohou nahrávat soubory a adresáře do složky pro nahrávání ze svých místních systémů.

Krok:3) Upravte konfigurační soubor sftp (/etc/ssh/sshd_config)

Jak jsme již uvedli, že operace sftp se provádějí přes ssh, takže jeho konfigurační soubor je „/etc/ssh/sshd_config “, Před provedením jakýchkoli změn bych navrhoval nejprve provést zálohu a poté upravit tento soubor a přidat následující obsah,

[chráněno e-mailem]:~# cp /etc/ssh/sshd_config /etc/ssh/sshd_config-org[chráněno e-mailem]:~# vim /etc/ssh/sshd_config………#Subsystem      sftp    /usr/lib/ openssh/sftp-serverSubsystem       sftp    internal-sftpMatch Group sftp_users  X11Forwarding no  AllowTcpForwarding no  ChrootDirectory %h  ForceCommand internal-sftp……

Uložte a ukončete soubor.

Chcete-li provést výše uvedené změny v efektu, restartujte službu ssh pomocí následujícího příkazu systemctl

[e-mail chráněn]:~# systemctl restart sshd

Ve výše uvedeném souboru „sshd_config“ jsme zakomentovali řádek, který začíná „Subsystem“ a přidali nový záznam „Subsystem       sftp    internal-sftp“ a nové řádky jako,

Match Group sftp_users“ –> To znamená, že pokud je uživatel součástí skupiny ‚sftp_users‘, aplikujte na tento záznam pravidla, která jsou zmíněna níže.

ChrootDierctory %h ” –> Znamená to, že uživatelé mohou měnit adresáře pouze v rámci svých příslušných domovských adresářů, nemohou překračovat své domovské adresáře, nebo jinými slovy můžeme říci, že uživatelé nemají povoleno měnit adresáře, ve svých adresářích získají prostředí podobné jai a mohou Nepřistupovat do adresářů žádného jiného uživatele a systému.

ForceCommand internal-sftp ” –> Znamená to, že uživatelé jsou omezeni pouze na příkaz sftp.

Krok:4) Otestujte a ověřte sftp

Přihlaste se k jakémukoli jinému systému Linux, který je ve stejné síti jako váš sftp server, a poté zkuste ssh sftp server přes uživatele, které jsme namapovali ve skupině ‚sftp_users‘.

[[e-mail chráněn] ~]# ssh [e-mail chráněný][heslo chráněné e-mailem]:Zápis se nezdařil:Přerušené potrubí[[e-mail chráněn] ~]# ssh [chráněný e-mail][heslo chráněné e-mailem]:Zápis se nezdařil:Přerušené potrubí[[email chráněn] ~]#

Výše potvrzuje, že uživatelé nemají povoleno SSH, nyní zkuste sftp pomocí následujících příkazů,

[[chráněno e-mailem] ~]# sftp [chráněno e-mailem][heslo uživatele chráněno e-mailem]:Připojeno k 192.168.56.151.sftp>
 ls -ldrwxr-xr-x    2 root     1001      6 1001     6 1001      6 1 0-4 pkgs-rw-r--r--    1 kořen     1001          155 září 14 07:52 devops-actions.txtdrwxr-xr-x    2 1001     1002 > 4:219     

Zkusme stáhnout soubor pomocí sftp ‘get ‘ příkaz

 SFTP> Získejte DEVOPS-ACCICE.TXTFETCHING /DEVOPS-ACTIONS.txt k DEVOPS-ACCIONS.TXT / DEVOPS-ACCIONS.txt 100% 155 0.2kb / s 00:00SFTP> SFTP> CD / Etcckloud ne Stat Vzdálený soubor :Žádný takový soubor nebo adresář sftp>
 cd /rootNelze zjistit vzdálený soubor:Žádný takový soubor nebo adresář sftp>

Výše uvedený výstup potvrzuje, že jsme schopni stáhnout soubor z našeho sftp serveru na místní počítač a kromě toho jsme také testovali, že uživatelé nemohou měnit adresáře.

Zkusme nahrát soubor pod „nahrát “,

sftp>
 cd upload/sftp>
 vložte metricbeat-7.3.1-amd64.deb Nahrávání metricbeat-7.3.1-amd64.deb do /upload/metricbeat-7.3.1-amd64.debmetricbeat-7.3.1-amd64.deb 100 %   38 MB  38,4 MB/s   00:01sftp>
 ls -l-rw-r--r--    1 1001     1002     40275654 14. září 09:18 PM/41p.–7.07 

To potvrzuje, že jsme úspěšně nahráli soubor z našeho místního systému na server sftp.

Nyní otestujte server SFTP pomocí nástroje winscp, zadejte adresu IP serveru sftp spolu s přihlašovacími údaji uživatele,

Klikněte na Přihlásit a poté zkuste stáhnout a nahrát soubory

Nyní zkuste nahrát soubory do složky pro nahrávání,

Výše uvedené okno potvrzuje, že nahrávání také funguje dobře, to je vše z tohoto článku. Pokud vám tyto kroky pomohou nakonfigurovat SFTP server s prostředím chroot v Debianu 10, podělte se o své názory a komentáře.


Debian
  1. Jak nastavit SFTP server na Debian 11 Server

  2. Jak nakonfigurovat bránu firewall s CSF na Debianu 9

  3. Jak nakonfigurovat bránu firewall s UFW na Debianu 9

  1. Jak nainstalovat a nakonfigurovat VNC na Debian 9

  2. Jak nastavit FTP server s VSFTPD na Debianu 9

  3. Jak nakonfigurovat Chroot SFTP Server v Linuxu

  1. Jak nainstalovat a nakonfigurovat Foreman 1.16 na serveru Debian 9 / Ubuntu 16.04

  2. Jak nakonfigurovat HAProxy na serveru Debian 9 / Ubuntu 16.04

  3. Jak nainstalovat a nakonfigurovat KVM na Debian 10 (Buster)