В материале "Put your OpenSSH server in SSHjail (http://security.linux.com/article.pl?sid=07/04/11/211209)" представлен патч SSHjail (http://paradigma.pt/~gngs/sshjail/) для OpenSSH, позволяющий изолировать некоторых пользователей в chroot окружениях.
Настройки хранятся в /etc/sshjail.conf, возможно определение нескольких chroot окружений с привязкой к ним групп пользователей.
Другие подобные патчи:
- Патч для помещения пользователей в chroot, при обнаружении маски "/./" в имени домашнего каталога в /etc/passwd (http://chrootssh.sourceforge.net/) (старая версия (http://mail.incredimail.com/howto/openssh/));
- Патч для FreeBSD, помещает в chroot или jail по логину или группе (http://garage.freebsd.pl/patches/openssh-chroot.patch);
- Патч для помещения избранных пользователей в chroot (openssh-3.5p1) (http://majikal.dyn.dhs.org/projekts/openssh_chroot_patch/). Добавляет директивы ChrootDir, ChrootAll, ChrootUsers, NoChrootUsers;
- Патч sftp-server для запрещения выхода за рамки домашнего каталога (http://groups.google.com.ru/groups?selm=blch1t%241eaj...).
- chroot+sftp hack (http://www.coding-zone.com/chroot+sftp-server.patch) - делает chroot при соединении по SFTP, если в пути к домашней директории пользователя указано /./;
URL: http://security.linux.com/article.pl?sid=07/04/11/211209
Новость: http://www.opennet.me/opennews/art.shtml?num=10580
Раньше это делалось с помощью pam_chroot...
и сейчас тоже делается, но изобретатели велосипедов не спят... ;)
>Раньше это делалось с помощью pam_chroot...А как именно это делается на FreeBSD, можете рассказать?
Отличная вещь если все работает так как написано на сайте автора. Поддержку pam прикручивать не хочется, а вариант с /./ в passwd это даже не велосипед, это апгрейд круглого колеса до квадратного, чтобы по шпалам было удобнее ездить.
Вот только сдается мне, старая проблема с необходимостью класть юзеру в хоум бинарники и либы для sftp-server осталась. Остается лишь поностальгировать по временам когда www.ssh.com раздавалбесплатно свой софт для некоммерческого использования.
А сейчас он не раздаёт разве? На ftp.ssh.com лежит ssh-3.2.9.1.tar.gz. К нему, правда, для нормальной работы нужен патч
$ cat patch-3.2.9.1.diff
diff -uNr ssh-3.2.9.1.orig/lib/sshreadline/sshreadline.c ssh-3.2.9.1/lib/sshreadline/sshreadline.c
--- ssh-3.2.9.1.orig/lib/sshreadline/sshreadline.c 2003-12-03 08:17:20.000000000 -0500
+++ ssh-3.2.9.1/lib/sshreadline/sshreadline.c 2004-02-02 11:18:46.000000000 -0500
@@ -500,8 +500,9 @@
new_term.c_lflag &= ~(ECHO | ICANON);
new_term.c_cc[VMIN] = 1;
new_term.c_cc[VTIME] = 1;
- if (tcsetattr(fd, TCSAFLUSH, &new_term) < 0)
+ fast: if (tcsetattr(fd, TCSAFLUSH, &new_term) < 0)
{
+ if (EINTR == errno) goto fast;
ssh_warning("tcsetattr failed in ssh_rl_set_tty_modes_for_fd: "
"fd %d: %.200s", fd, strerror(errno));
return -1;
@@ -561,8 +562,9 @@
{
fcntl(fd, F_SETFL, fcntl_flags);- if (tcsetattr(fd, TCSAFLUSH, saved_tio) < 0)
+ fast1: if (tcsetattr(fd, TCSAFLUSH, saved_tio) < 0)
{
+ if (EINTR == errno) goto fast1;
ssh_warning("tcsetattr failed in ssh_rl_restore_tty_modes_for_fd: "
"fd %d: %.200s", fd, strerror(errno));
return -1;
просвятите незнающего, чем ssh лучше openssh?
>просвятите незнающего, чем ssh лучше openssh?
OpenSSH is a derivative of the original and free ssh 1.2.12 release by
Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo
de Raadt and Dug Song removed many bugs, re-added newer features and cre-
ated OpenSSH. Markus Friedl contributed the support for SSH protocol
versions 1.5 and 2.0.
Так что опенссх лучше, а не ссх
бился, бился как чрутился так и чрутится дальше и спокойно выходит за пределы корня...
может у кого получилось?
работает однако на Debian Etch. Хорошая статья
На FreeBSD 6.2 не работает.(не chroot-ится), Кому удалось проделать это на FreeBSD, поделитесь нюансами!!!