GNU/Linux >> Znalost Linux >  >> Linux

Ssh – Omezení uživatele Ssh/scp/sftp na adresář?

Existuje jednoduchý způsob, jak omezit uživatele SCP/SFTP na adresář? Všechny metody, se kterými jsem se setkal, vyžadují, abych nastavil chroot jail zkopírováním binárních souborů, ale nemyslím si, že by to bylo nutné.

Přijatá odpověď:

SSH Nativně podporuje chrooting uživatele SFTP. Stačí dodat

ChrootDirectory

V konfiguračním souboru sshd a restartujte sshd.

Pokud děláte pouze sftp, nemusíte dělat nic víc. Bohužel to nefunguje pro scp. Pro interaktivní shell budete muset zkopírovat binární soubory a uzly /dev do chrootu.

Příklad konfigurace pouze pro jednoho uživatele, testuser:

Match User testuser
    ChrootDirectory /home/testuser
    ForceCommand internal-sftp

Několik věcí, které je třeba si uvědomit z manuálové stránky sshd_config:

    All components of the pathname must be root-owned directories that are not
    writable by any other user or group.  After the chroot, sshd(8) changes the
    working directory to the user's home directory.

Pro více informací vyhledejte ChrootDirectory v man sshd_config.


Linux
  1. Jak povolit SFTP a zakázat SSH?

  2. Ssh a oprávnění k domovskému adresáři?

  3. Jak SSH do konkrétního adresáře?

  1. Nastavte SFTP a Zabraňte SSH na Ubuntu 20.04

  2. 11 Užitečné příkazy „ssh“ a „scp“ v Linuxu

  3. Nelze spustit X aplikací přes SSH v Linuxu

  1. oprávnění odepřeno pro soubor autorizovaný_klíč

  2. Jak ssh jako jiný uživatel

  3. ssh tunelování pouze přístup