Мне нужна ваша помощь в решении проблемы аутентификации SSH + FreeBSD + jails.
Я (почти) успешно установил тюремную среду на моем компьютере с FreeBSD 8.2.
Мой хост FreeBSD имеет 2 сетевых интерфейса: 192.168.1.41/24 (обычная сеть) и 172.16.100.41/24 (административная сеть).
Его единственная тюрьма настроена для прослушивания IP-адресов 192.168.1.101 и 172.16.100.101. Я настроил sshd
в джейле слушать только через интерфейс администратора (то есть 172.16.100.101).
Все, что описано выше, работает, но я не могу подключиться к тюрьме через SSH с хоста (регистрируется как root
на хосте). После принятия открытого ключа меня просят ввести пароль (который, как мне кажется, root
пароль), и после 3 попыток я всегда получаю сообщение "Permission denied (publickey,keyboard-interactive)"
. Такое же сообщение записывается в тюрьму /var/log/auth.log
.
Все следующие команды дают одинаковый результат:
ssh 172.16.100.101
ssh root@172.16.100.101
ssh -l root 172.16.100.101
Я жду тюрьмы root
пароль должен быть таким же, как у моего хозяина root
пароль, да? Что мне не хватает? Или где мне искать подсказки?
Спасибо за вашу помощь!
Вы должны подтвердить, что пароль установлен правильно, скопировав файлы вручную, как предлагает Роберт Новак, или войдя в тюрьму с помощью jexec ${jailID} /bin/tcsh
и passwd
(ты можешь использовать jls
чтобы узнать идентификатор тюрьмы).
Также убедитесь, что PermitRootLogin yes
в /etc/ssh/sshd_config
.
РЕДАКТИРОВАТЬ: после редактирования или копирования /etc/master.passwd
тебе нужно бежать /usr/sbin/pwd_mkdb -p /etc/master.passwd
чтобы сообщить FreeBSD о необходимости переделать двоичные файлы на основе нового файла (ов).
У каждой тюрьмы должен быть свой собственный файл passwd. Если вы скопировали /etc/master.passwd и / etc / passwd хоста в тюрьмы, то пароли будут идентичны. В противном случае, думаю, вам придется сбросить пароль вручную.