Ограничение ssh к определенному имени хоста

если Ваша почта отправляется пользователям на других доменах, то Ваша почта выходит в незашифрованном Интернете. нет никакого понятия глобальной стандартной схемы шифрования по умолчанию для почты. Вы можете шифровать соединение со своим локальным реле, но Вы не можете сделать предположения мимо этого.

и помните, даже если Вы и Ваши друзья - весь полностью-PKI, знающий, почтовый всегда заканчивается где-нибудь незашифрованный, если кто-то собирается считать его, и что простой текст может пойти везде, где кто-то хочет. секреты и электронная почта не смешиваются.

2
задан 17 February 2013 в 11:43
4 ответа

Не существует такого понятия, как соединение "DNS". Когда клиент получает IP-адрес, он может ТОЛЬКО установить соединение TCP / IP. Сервер видит только IP-адреса, поэтому он не знает, какое имя использовал клиент для поиска сервера.

Причина, по которой у нас есть виртуальные хосты веб-сайта, заключается в том, что клиент передает заголовок, запрашивающий конкретный хост. Фактически, виртуальные хосты не работали с SSL до тех пор, пока SSL (TLS) не был изменен, чтобы разрешить «указание имени сервера» во время начального соединения.

Для «виртуальных хостов» для работы с SSH потребуется способ для клиент для передачи имени хоста при подключении. Но даже если SSH поддерживает такую ​​функцию, вы добавляете нулевую безопасность, требуя конкретного имени хоста. Причина в том, что sshd должен расшифровать пакет атакующего, чтобы запустить фильтр. Пока вы отключите пароли SSH, мало что изменится в расшифровке пакета злоумышленника для сравнения с вашим ключом SSH.

Если вы не хотите, чтобы вас сканировали, переместите порт SSH и / или установите fail2ban. Если вы действительно параноик, вы можете установить средство защиты портов, которое «скрывает» ваш открытый порт от случайного сканера и / или использовать iptables для внесения IP-адресов в белый список.

5
ответ дан 3 December 2019 в 08:54

Что-то мне не хватает, или sshd просто не имеет этого способность?

По сути, DNS не имеет такой возможности. Клиент преобразовывает DNS-имя в IP-адрес, а затем пытается подключиться к нему, поэтому эта информация теряется во время подключения (если только SSH не передает ее таким образом, чтобы сервер мог использовать ее перед входом в систему, что я не думаю, что это так ).

2
ответ дан 3 December 2019 в 08:54

Заимствовано из другого вопроса SF , как насчет этого?

Вы можете использовать директиву AllowUsers в / etc / ssh / sshd_config, например AllowUsers you@ip.add.re.ss

Если вы вносите какие-либо изменения в файл sshd_config, не забудьте перезапустить sshd.

на странице руководства sshd_config

За этим ключевым словом может следовать список пользователей шаблоны имен, разделенные пробелами. Если указано, вход разрешен только для имена пользователей, соответствующие одному из шаблонов. '*' а также '?' может быть используется как подстановочные знаки в шаблонах. Действительны только имена пользователей; а числовой идентификатор пользователя не распознается. По умолчанию логин разрешено для всех пользователей. Если шаблон имеет вид USER @ HOST затем ПОЛЬЗОВАТЕЛЬ и ХОСТ проверяются отдельно, ограничивая вход в систему конкретных пользователей с определенных хостов.

-- original answer ends --

Из того, что я вижу, вы можете определить подстановочный знак, чтобы SSHd прослушивал только пользователей, представляющих с правильным элементом имени хоста, совпадающим с подстановочным знаком, например * @ sub.domain.tld . Бум! Запрещено входить в систему по IP.

НЕ помещайте ничего вроде DenyUsers * до тех пор, пока не будут объявлены ваши AllowUsers / AllowGroups. Списки запрета оцениваются перед списками разрешений и отменяют любые явные разрешения. Я не экспериментировал, но, судя по тому, что я читал в прошлом, вам, вероятно, даже не нужно определять DenyUsers * , если вы явно определяете список разрешений.

Только не забывайте всегда позволять себе. ; -)

1
ответ дан 3 December 2019 в 08:54

Что вы можете сделать, так это иметь на аппарате несколько IP-адресов. Затем каждая из ваших записей A указывает на разные IP-адреса, которые в конечном итоге попадают в одно и то же поле. Тогда вы сможете использовать ListenAddress для ограничения. Не совсем уверен, что вы от этого получите, поскольку в конечном итоге это все равно та же машина.

0
ответ дан 3 December 2019 в 08:54

Теги

Похожие вопросы