Tento článek popisuje, jak nakonfigurovat chroot jail pomocí distribucí založených na Debian® a RPM Package Manager (RPM).
Tyto pokyny vytvoří chroot jail pomocí následujícího příkladu skupin a uživatelských jmen:
-
Skupina:sftponly
-
Uživatel:ftpuploader
Vytvořit skupinu pro uvězněné uživatele
Pomocí následujících pokynů vytvořte skupinu pro uvězněné uživatele:
-
Vytvořte uvězněnou skupinu pomocí následujícího příkazu:
groupadd sftponly
Poznámka: Tato skupina se používá k omezení nebo uvěznění uživatelů do jejich domovského adresáře.
-
Otevřete /etc/ssh/sshd_config v textovém editoru a upravte soubor pomocí následujících kroků:
-
Zakomentujte následující řádek umístěním znaku čísla (
#
) před řádkem:Před:
Subsystem sftp /usr/libexec/openssh/sftp-server
Po:
#Subsystem sftp /usr/libexec/openssh/sftp-server
-
Na konec konfiguračního souboru přidejte následující řádky:
Subsystem sftp internal-sftp Match Group sftponly ChrootDirectory %h X11Forwarding no AllowTCPForwarding no ForceCommand internal-sftp`
-
-
Ověřte správnost syntaxe v nové konfiguraci a znovu načtěte sshd pomocí následujících příkazů:
sshd –t service sshd reload
Vytvořit uživatele protokolu zabezpečeného přenosu souborů
Pomocí následujících kroků vytvořte uživatele protokolu SFTP (Secure File Transfer Protocol):
-
Vytvořte domovský adresář pro uživatele SFTP pomocí následujícího příkazu:
mkdir -p /home/chroot/ftpuploader/public
-
Vytvořte nového uživatele s domovským adresářem, který nemá přístup k shellu, a přidejte jej do skupiny sftponly pomocí následujícího příkazu:
useradd -d /home/chroot/ftpuploader -s /sbin/nologin -G sftponly ftpuploader
-
Pokud již máte vytvořeného uživatele SFTP, musíte nastavit přístup do prostředí uživatele na /sbin/nologin a přidejte je do skupiny sftponly pomocí následujícího příkazu:
usermod -s /sbin/nologin -G sftponly ftpuploader
-
Nyní nastavte nové heslo pro uživatele SFTP pomocí následujícího příkazu:
Passwd ftpuploader
-
Změňte oprávnění a vlastnictví domovského adresáře pomocí RPM a distribucí založených na Debianu, jak je znázorněno v následujícím kódu:
chown root:root /home/chroot/ftpuploader/ chown ftpuploader:sftponly /home/chroot/ftpuploader/public chmod 711 /home/chroot/ chmod 755 /home/chroot/ftpuploader/ chmod 755 /home/chroot/ftpuploader/public
Poznámka: V předchozích příkazech je skupina sftponly pokud se uživatel stane součástí sftponly skupina.