Вы сталкивались с LFScript также?
Linux Из Сценария (или 'LFScript') является неофициальной альтернативой для 'Автоматизированного Linux С нуля'. LFScript включает полностью протестированные сценарии, сгенерированные от LFS и книг BLFS, с которыми можно создать полную операционную систему Linux с нуля.
Некоторые дальнейшие базовые дистрибутивы Linux (для проверки через Википедию) включают:
Если единственная причина, Вы планируете выполнить сервер SSH в chroot, состоит в том, чтобы ограничить аутентификацию по паролю некоторыми пользователями, Вам не нужно это: можно сказать sshd позволять пароли только для белого списка пользователей. В /etc/ssh/sshd_config
, используйте a Match
директива:
PasswordAuthentication No
Match User trusted_user_1,trusted_user_2
PasswordAuthentication yes
Если Вы действительно хотите к chroot некоторых пользователей, можно все еще выполнить единственного ssh демона и использовать a ChrootDirectory
директива в sshd_config
(в рамках a Match
директива).
У Вас может быть два ssh демона, слушающие на том же порте, если они слушают на различных адресах. Помещенный a ListenAddress
директива в каждом /etc/ssh/sshd_config
, каждый с IP-адресом (IP-адресами), на котором Вы хотите, чтобы тот сервер послушал (слушают на, не слушает, т.е. это адреса сетевых интерфейсов Вашего сервера). Это имеет ограниченную применимость, только если Ваша машина сервера является узлом, делающим фильтрацию LAN/WAN. Это также означает это вещи как ssh localhost
не будет прозрачно (можно все еще получить доступ к демону, с которым это не слушает на localhost ssh -b
).
Можно заставить ssh демона в chroot послушать на другом порте, с Port
директива в /etc/ssh/sshd_config
. Сохраните блокирующий порт 22 снаружи на Вашем брандмауэре и не блокируйте другой порт, который Вы выбрали для chroot sshd.
Если у Вас есть два демона, слушающие на различных портах (как выше), можно все еще дать иллюзию, что они оба слушают на порте 22. Например, сделайте chrooted ssh, демон слушают на порте 2201 и перенаправляют трафик, происходящий в порт 22 на eth1
портировать 2201:
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 22 -j REDIRECT --to-ports 2201
Затем соединения SSH от localhost или по eth0 для портирования 22 достигнут non-chrooted сервера, в то время как соединения SSH по eth1 для портирования 22 достигнут chrooted сервера. Соединения на порте 2201 достигнут chrooted сервера. Можно использовать другие критерии, чем -i eth
, например, ! -s 10.1.0.0/16 ! -s 127.0.0.0/8
соответствовать всему исходному адресу кроме 10.1.x.y или обратная петля.
sshd
слушает на. С сингломsshd
, можно главным образом настроить разрешенные методы аутентификации для каждого пользователя. Для ограничения интерфейса некоторыми пользователями выполните секундуsshd
слушание на другом порте (который виден на порте 22 с внешней стороны согласно последнему разделу моего ответа). – Gilles 'SO- stop being evil' 12.07.2011, 09:42ifconfig -a
на chroot дистрибутиве это показывает интерфейсы хоста ОС (Сервер Ubuntu). Даже я могу присвоить IP-адрес от chroot OS через ifconfig инструмент. Главная команда также показывает процессы хоста ОС. – nixnotwin 12.07.2011, 10:38