This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
it:bezpecnost:ssh_chroot [2018/03/21 10:45] matt created |
it:bezpecnost:ssh_chroot [2019/08/02 11:18] (current) |
||
---|---|---|---|
Line 16: | Line 16: | ||
</code> | </code> | ||
- | Vytvoříme adresář(v našem případě využijeme již existující /var), který bude emulovat uživatelův / a zajistíme, aby byl vlastněn rootem. Zde vytvoříme adresářovou strukturu a nakopírujeme potřebné soubory. V tomto adresáři bude ve finále uživatel uzamčen. Zvolen byl adresář /var, aby měl webadmin přístup i k logům webu. Nabízí se i adresář /var/www, který je však u web serveru vhodné z bezpečnostních důvodů montovat s parametrem noexec, takže by zde nebylo možné spouštět námi nakopírované binárky. | + | Vytvoříme adresář(v našem případě využijeme již existující ''/var''), který bude emulovat uživatelův ''/'' a zajistíme, aby byl vlastněn rootem. Zde vytvoříme adresářovou strukturu a nakopírujeme potřebné soubory. V tomto adresáři bude ve finále uživatel uzamčen. Zvolen byl adresář ''/var'', aby měl webadmin přístup i k logům webu. Nabízí se i adresář ''/var/www'', který je však u web serveru vhodné z bezpečnostních důvodů montovat s parametrem noexec, takže by zde nebylo možné spouštět námi nakopírované binárky. |
<code> | <code> | ||
Line 45: | Line 45: | ||
Následně překopírujeme binárky příkazů, které bude moci takto omezený uživatel používat. Včetně jimi používaných knihoven. | Následně překopírujeme binárky příkazů, které bude moci takto omezený uživatel používat. Včetně jimi používaných knihoven. | ||
- | </code> | + | <code> |
cp /bin/bash /var/bin | cp /bin/bash /var/bin | ||
cp /bin/ls /var/bin | cp /bin/ls /var/bin | ||
Line 58: | Line 58: | ||
cp <knihovny> /var/lib64 | cp <knihovny> /var/lib64 | ||
cp /lib64/libnss_files.so.2 /var/lib64 | cp /lib64/libnss_files.so.2 /var/lib64 | ||
- | <code> | + | </code> |
Pokud používáme SSHD alespoň ve verzi OpenSSH 4.8p1, vytvoříme pro uživatele osobní konfiguraci v konfiguračním souboru ''/etc/ssh/sshd_config''. | Pokud používáme SSHD alespoň ve verzi OpenSSH 4.8p1, vytvoříme pro uživatele osobní konfiguraci v konfiguračním souboru ''/etc/ssh/sshd_config''. | ||
Line 70: | Line 70: | ||
==== Troubleshoot ==== | ==== Troubleshoot ==== | ||
+ | |||
+ | Chybný překlad mezi uid a jménem => chybí knihovna ''/lib64/libnss_files.so''. | ||
- | -bash-4.1$ scp | + | <code> |
- | unknown user 501 | + | bash-4.1$ scp |
- | + | unknown user 501 | |
- | Chybný překlad mezi uid a jménem => chybí knihovna /lib64/libnss_files.so. | + | </code> |
- | + | ||
- | unable to resolve host address | + | |
- | + | Chybí knihovny a konfigurační soubor | |
- | Chybí knihovny a konfigurační soubor: | + | ''unable to resolve host address'' |
+ | | ||
+ | <code> | ||
/var/lib64/libnss_dns.so | /var/lib64/libnss_dns.so | ||
/var/lib64/libnss_files.so | /var/lib64/libnss_files.so | ||
/var/etc/resolve.conf | /var/etc/resolve.conf | ||
+ | </code> | ||
+ | | ||
+ | ==== winscp prerequisites ==== | ||
- | winscp prerequisites | + | <code> |
- | + | /usr/bin/scp | |
- | /usr/bin/scp | + | /usr/libexec/openssh/sftp-server |
- | /usr/libexec/openssh/sftp-server | + | </code> |