The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"ssh: Установить PasswordAuthentication в зависимости от сети"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Информационная безопасность (Шифрование, SSH, SSL)
Изначальное сообщение [ Отслеживать ]

"ssh: Установить PasswordAuthentication в зависимости от сети"  +/
Сообщение от ilway (ok) on 30-Сен-11, 17:41 
Доброго времени суток.
ОС: Centos 5, вопрос в следующем:
можно ли установить в параметрах sshd PasswordAuthentication = (yes/no) в зависимости от ip хоста, от которого пришел запрос на соединение?
Хотелось бы увидеть: внутри локальной сети допускается авторизация по паролю, из внешней сети - только по ключу.
Пока в /etc/ssh/sshd_config
PermitRootLogin without-password
PasswordAuthentication yes
, но, хотелось бы допускать пользователей снаружи сети только по ключу, без пароля (хотя бы для того, чтобы рестартануть апач).
Внешний ip заранее неизвестен, так что hosts.allow не подходит

Не представляю где копать... pam?
Помогите советом, пожалуйста

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "ssh: Установить PasswordAuthentication в зависимости от сети"  +/
Сообщение от Cristian (ok) on 30-Сен-11, 17:57 
Как вариант, запустить два демона sshd. Один демон завесить на внутреннем интерфейсе (авторизация по паролю). Второй демон sshd смотрит в интернет, и авторизация на нем сугубо по ключу.

Плюсы данного решения в том, что вы можете контролировать пользователей интранета и интернета отдельно на разных демонах sshd, изменяя их конфигурации по отдельности.
+ можно настроить work time-ы через cron.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "ssh: Установить PasswordAuthentication в зависимости от сети"  +/
Сообщение от ilway (ok) on 30-Сен-11, 18:05 
> Как вариант, запустить два демона sshd. Один демон завесить на внутреннем интерфейсе
> (авторизация по паролю). Второй демон sshd смотрит в интернет, и авторизация
> на нем сугубо по ключу.
> Плюсы данного решения в том, что вы можете контролировать пользователей интранета и
> интернета отдельно на разных демонах sshd, изменяя их конфигурации по отдельности.
> + можно настроить work time-ы через cron.

Спасибо за быстрый ответ. Тоже думал об этом, но как о последнем решении. Сервер стоит во внутренней сети, все пакеты пока приходят через один интерфейс, но не суть - можно добавить алиас или VLAN ,относящийся к DMZ.

Work time не подходит в моем случае - как правило ssh используется при авариях, чтобы помощник тот же апач перезапустил.

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

2. "ssh: Установить PasswordAuthentication в зависимости от сети"  +/
Сообщение от Cristian (ok) on 30-Сен-11, 18:05 
Если у вас интерфейс один, тогда можно завесить демоны на разные порты (например 22/23) а на NAT-сервере/устройстве сделать правило переброса (Internet IP, port 22) -> (Server sshd port 23).
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

4. "ssh: Установить PasswordAuthentication в зависимости от сети"  +/
Сообщение от ilway (ok) on 30-Сен-11, 18:14 
> Если у вас интерфейс один, тогда можно завесить демоны на разные порты
> (например 22/23) а на NAT-сервере/устройстве сделать правило переброса (Internet IP, port
> 22) -> (Server sshd port 23).

Как таковой, проблемы в доведении до ssh того факта, что к нему стучатся из внешней сети нет (алиасы ethX:Y, vlan, port-map), теоретически было интересно управиться одним демоном, который бы определял разные границы аутентификации, о чем и вопрос был. Может, надо покопаться в pam (там я не силен) или есть какая-то группа опций для конкретной маски ip - это было бы интересно...
Спасибо за ответ!

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

5. "ssh: Установить PasswordAuthentication в зависимости от сети"  +/
Сообщение от shadow_alone (ok) on 30-Сен-11, 19:35 
В sshd_config есть директива Match
Почитайте, например тут - http://www.gossamer-threads.com/lists/openssh/dev/42757

Через эту директиву Вы можете разрешать/запрещать определенным юзерам варианты авторизации и не только.

А ограничение по IP сделайте общей директивой AllowUsers или AllowGrous с указанием IP - user@192.168.0.*

Используя в совокупности эти 2-е директивы, вы как раз, решите Вашу задачу.


Match group internalusers
PasswordAuthentication yes

а глобально


AllowUsers admin technik@192.168.0.*
PasswordAuthentication no

ну и technik должен быть в группе internalusers

почитайте еще вот это - http://serverfault.com/questions/286159/how-to-disabled-pass...

Или еще проще, просто


Match user technik@192.168.0.*
PasswordAuthentication yes

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

6. "ssh: Установить PasswordAuthentication в зависимости от сети"  +/
Сообщение от ilway (ok) on 03-Окт-11, 14:26 
[skipped]

> почитайте еще вот это - http://serverfault.com/questions/286159/how-to-disabled-pass...
> Или еще проще, просто
>

 
> Match user technik@192.168.0.*
>  PasswordAuthentication yes
>

ОГРОМНЕЙШЕЕ ВАМ СПАСИБО! Это то, что надо!

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру