[Sysadmins] SSH вход по ключу и паролю в зависимости от интерфейса

Alexander Yereschenko ave4600 на gmail.com
Пн Дек 7 20:36:04 MSK 2015


Доброе!

Спросил на форуме
https://forum.altlinux.org/index.php?topic=2659.msg272543#msg272543
Но продублирую и здесь

Хочется странного: на машинке, которая работает и как шлюз в инет, стоит
nx-server. Хочется настроить shhd так, чтобы извне для себя (для
админства) был доступ только по ключу, а из локалки и (самое главное -
тут, как я понял, без вариантов) для nx с локалхоста - по паролю.

Настроил доступ по ключу - работает.

В sshd_config c помощью:
====
ListenAddress 192.168.0.1:22
ListenAddress 127.0.0.1:22
ListenAddress внешний_IP:другой_порт
====
сделал для доступа снаружи нестандартный порт.

По образцу на http://www.opennet.ru/openforum/vsluhforumID10/4945.html
Добавил в sshd_config :
(глобально запрещаем вход по паролю, но с локалки и локалхоста разрешаем)
====
PasswordAuthentication no
.....
Match User user на 192.168.0.*
          PasswordAuthentication yes
Match User user на 127.0.0.1
          PasswordAuthentication yes
====
Но почему-то доступ существует только по ключу. Соответственно,
авторизация через nx не работает.
Куда копать? Как осуществить желаемое?

Т.е. стоит задача сделать по-умолчанию доступ только по ключу, но при
этом доступ от localhost должен быть по паролю.
Как я понимаю описания, nx-клиент коннектится к серверу через ssh по
ключу как пользователь nx (это судя по логам проходит), а потом уже
nx-сервер от имени конкретного пользователя (в данном случае user)
коннектится локально через ssh, а вот тут он умеет только по паролю. И
вот это уже и не проходит, так как sshd тупо ждет только ключ, не смотря
на запись Match. Ну и с локалки user тоже не может войти по паролю.

-- 
Alexander



Подробная информация о списке рассылки Sysadmins