Portál AbcLinuxu, 5. května 2025 15:05

Dotaz: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář

26.3.2012 20:28 Petr S.
Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
Přečteno: 850×
Odpovědět | Admin
Ahoj, vytvořil jsem novou skupinu
groupadd sftp
nového uzivatele
useradd -G sftp aaa
nastavil mu heslo
passwd aaa
id aaa
uid=1001(aaa) gid=1002(aaa) groups=1002(aaa),1001(sftp)
vytvořím domovský adresář
mkdir /home/virt/aaa
cd /home/virt
ls -la

drwxr-xr-x 3 root root 4096 Mar 26 19:37 .
drwxr-xr-x 5 root sftp 4096 Mar 26 18:55 ..
drwxr-xr-x 2 root root 4096 Mar 26 19:37 aaa
změním vlastníka
chown aaa:sftp aaa
ls -la

drwxr-xr-x 3 root root 4096 Mar 26 19:37 .
drwxr-xr-x 5 root sftp 4096 Mar 26 18:55 ..
drwxr-xr-x 2 aaa  sftp 4096 Mar 26 19:37 aaa
v souboru /etc/passwd mám
aaa:x:1001:1002::/home/virt/aaa:/bin/sh
a i když se teď přihlásím sftp aaa@server, dostanu se uplně všude a můžu všechno číst (změny dělat nemůžu), co e tedy špatně? Díky


Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

26.3.2012 20:49 petr_p | skóre: 59 | blog: pb
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
Odpovědět | | Sbalit | Link | Blokovat | Admin
Dotaz: SFTP & chroot.
Prcek avatar 26.3.2012 20:52 Prcek | skóre: 43 | Jindřichův Hradec / Brno
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
No tak přece někdo fundovaný, tak ten můj blábol radši ani nečtěte :-).
Člověk je takový, jak vypadá... A já vypadám jako pravá, nefalšovaná děvka!!!
26.3.2012 20:52 Petr S.
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
to neresi muj pridat, porad jsem v rootu
26.3.2012 21:14 petr_p | skóre: 59 | blog: pb
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
Řeší. Musíš SSH démonovi říct, aby uživateli změnil kořen (ChrootDirectory).
26.3.2012 21:17 Petr S.
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
A jak mi neprozradíš? ;)
26.3.2012 21:34 petr_p | skóre: 59 | blog: pb
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
Přečti si odkaz, tam to je.
26.3.2012 21:25 Petr S.
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
Jen doufám, že mě nepradíš tenhle nesmysl.. :-D Nechci po každém přidání usera editovat 100 souborů ;)
Match User aaa
      ChrootDirectory /home/virt/aa
Řešení 2× (Lol Phirae, Michal Vyskočil)
26.3.2012 21:38 petr_p | skóre: 59 | blog: pb
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
Doporučuji přečíst si sshd_config(5). Tam bys se dozvěděl, že ChrootDirectory umožňuje substituci za domovský adresář přihlašovaného uživatele a že Match lze aplikovat i na skupiny.
27.3.2012 10:19 Petr S.
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
A co tím chceš jako říct? Co mi pomůže Match Group Xy když mám problém, že neudržím uživatele ve svém adresáři, jesště jsem opravdu neviděl, že dokázal nastavit zobrazení adresářů pro jednotlivé usery když mají společnou group :-D
27.3.2012 10:42 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
¡ChrootDirectory!
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
27.3.2012 11:10 Petr S.
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
Tak jsem dal do konfigurace ssh tohle
Match group sftp
    ChrootDirectory     /var/www/%u
    ForceCommand        internal-sftp
    X11Forwarding       no
    AllowTcpForwarding  no
vytvořil si 3 usery a 3 adresaře ve /var/www

nastavil každému
chown root:sftp /var/petr
chmod 700 /var/petr
a restartoval ssh server. Příhlásím se a procházím celý disk, tak co na tom jako funguje, mě tedy určitě ne!
27.3.2012 11:18 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
Proč Vám to nefunguje se asi dozvíte v logu, ale /var/petr a /var/www/petr není určitě totéž.
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
27.3.2012 11:24 Petr S.
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
Aha, jsem nevěděl, že najdu v logu důvod, proč nejsou uživatlé ve svém adresáři, když to žádnou chybu nehází ;)
27.3.2012 12:02 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
Hlásíte na ten server pomocí sftp?
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
27.3.2012 12:13 Petr S.
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
Nerozumím otázce :( Jestli se na ten server přihlásím? Ano, přihlásím
27.3.2012 18:25 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
Normálně to funguje:

zajímavé části sshd_config
Subsystem sftp internal-sftp
PermitRootLogin no
PidFile /var/run/sshd2.pid
Port 9922
AuthorizedKeysFile      .ssh/authorized_keys-second

Match User imega
    ChrootDirectory     /test/%u
    ForceCommand        internal-sftp
    X11Forwarding       no
    AllowTcpForwarding  no
Přihlášení:
…>sftp -oPort=9922 imega@rabbit
Connecting to rabbit...
SSH second say HALLO
Password:
sftp> pwd
Remote working directory: /
sftp> ls
kuk
sftp> cd ..
sftp> pwd
Remote working directory: /
sftp> ls -l
-rw-r--r--    1 imega    users           0 Mar 27 15:53 kuk
sftp> exit
…
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
27.3.2012 11:21 Petr S.
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
EDIT: omluva, uklepl jsem se, jsem rozčílený když mě někdo přesvědčuje o něřem co si ani sám nezkusí!
nastavil každému 
chown root:sftp /var/www/petr
chmod 700 /var/www/petr
27.3.2012 12:11 tlamik | skóre: 21 | Karvina
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
ja s tim taky trochu laboroval a napul se mi to povedlo, dokazu uzivatele uveznit v adresari /home, na ktery v sshd_configu delam chroot. Pouziti ChrootDirectory /home/%u vyzaduje aby users home vlastnil root atp.... (fatal: bad ownership or modes for chroot directory ...)
27.3.2012 20:07 petr_p | skóre: 59 | blog: pb
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
Jak to víte? Já přes chrootované SFTP zpřístupňuji registr oznámení veřejných činitelů a chroot funguje. Ostatně i tady se se našli tací, kterým to funguje. Nakonec proč by OpenSSH takovou konfiguraci mělo, když by nefungovala?
27.3.2012 20:00 petr_p | skóre: 59 | blog: pb
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
mám problém, že neudržím uživatele ve svém adresáři

Na to sis doteď nestěžoval.

27.3.2012 20:02 Lol Phirae | skóre: 23
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
Udržet moč mělo vyšší prioritu. :-D
Prcek avatar 26.3.2012 20:50 Prcek | skóre: 43 | Jindřichův Hradec / Brno
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zřejmě všechny adresáře na disku mají práva pro "ostatní" nastavena na r-x, takže kdokoliv může číst a vstupovat do adresáře. Podívej se, jak máš nastavené práva na složku /root. Ta by měla být nastavena tak, aby do jejího obsahu měl právo jen majitel, tedy root. Takže bych na všech adresářích odebral práva r a x, ale nevím, jestli je to ideální řešení. Třeba ti někdo poradí něco systémovějšího, tohle je jen takový nápad, nikdy jsem to nepotřeboval.
Člověk je takový, jak vypadá... A já vypadám jako pravá, nefalšovaná děvka!!!
26.3.2012 21:25 Petr
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zkus pouzit restricted shell, podle popisu by mel umet i uveznit uzivatele.
Description-en: Restricted shell allowing scp, sftp, cvs, svn, rsync or rdist
 rssh is a restricted shell, used as a login shell, that allows users to
 perform only scp, sftp, cvs, svnserve (Subversion), rdist, and/or rsync
 operations.  It can also optionally chroot user logins into a restricted
 jail.
pepe_ avatar 27.3.2012 17:04 pepe_ | skóre: 48
Rozbalit Rozbalit vše Re: Jak nastavit mového uživatele aby se nedostal mimo svůj adresář
Odpovědět | | Sbalit | Link | Blokovat | Admin

http://www.abclinuxu.cz/poradna/unix/show/243704#28

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.