SSH входят в систему через IPv6, успешный при использовании IPv4 для того же отклоненного разрешения “Урожаев хоста”

У меня есть Дуга Linux virtualbox сервер, работающий на моем основном сервере дома. Я запускаю его бездисплейный (никакая графическая голова) и затем ssh в поле от моего ноутбука или основного сервера.

nohup vboxheadless --startvm ArchLinux >/tmp/ArchLinux.headless.out 2>&1 &

Я настроил VM, чтобы загрузиться и автоматически настроить сети. Можно также настроить слушателя VNC для соединения использования это. Но я нахожу ssh более удобный для отправки команд к VM.

6
24.04.2013, 22:03
3 ответа

После вещей, становящихся более странным и более странным (см. поток комментариев в моем вопросе), я наконец понял это. Первые вещи сначала: процесс аутентификации перестал работать в pam_access.so однако не из-за некоторой неверной конфигурации в /etc/security/access.conf поскольку это было предложено.

Для понимания, почему, мы должны посмотреть на установку этого поля в особенности: Это действует как маршрутизатор к IPv4, который идет исходно по ссылке PPP и IPv6, который является по 6in4 туннель. Также это поле действует как DNS рекурсивный сопоставитель, и здесь это становится интересным. Я действительно настраивал сопоставитель способом, который поиски реверса IPv4 разрешены, рекурсивно запустив с корневых серверов IPv4, и поиски реверса IPv6 запускаются с корневых серверов IPv6. Эта установка действительно работала, когда я сначала установил ее.

Теперь мой ISP вводит изображения и людей, которые не понимают, как усиление DNS набрасывается на работу. Короче говоря: Я знаю наверняка, что моя путаница ISP с входящими пакетами DNS наугад, т.е. некоторые вещи должна быть разрешена через их собственные сопоставители в течение некоторого времени теперь при разрешении других адресов DNS рекурсивно на собственных работах – официальная причина состоит в том, чтобы смягчить нападения усиления DNS, но они делают ее неправильно then^1.

Так как я не хотел в основном изменять свою установку, я просто бросил сопоставители DNS своего ISP в конце моего локального сопоставителя DNS как нерекурсивные вперед, поэтому если рекурсивная попытка разрешения испытывает таймаут, это пробует сопоставители моего ISP. Это работает до сих пор. Но когда я действительно настраивал это, я сделал маленькую ошибку: Я ввел сопоставители DNS ISP для работы только от хостов в моем локальном объеме, т.е. 192.168.0.0/16, но забыл о localhost, иначе мой маршрутизатор, который является хостом, в который я попробовал к SSH, для которого сопоставитель не примет сопоставители ISP во внимание.

pam_access.so делает попытку обратного поиска на адресе коллег; и это закрывает круг: Поскольку для поиска реверса IPv6 к корневым серверам IPv6 DNS получили бы доступ, пакеты пойдут, хотя 6in4 туннелируют без моего питания ISP с ними, получая ответ. Но поиск реверса IPv4 не был бы сделан по сопоставителям ISP моим собственным, которое не получит ответа и в конечном счете сообщило бы о NXHOST (или он будет работать в тайм-ауте). Так или иначе pam_access.so не будет видеть что-то, что он любит и просто говорит, что "Вы не должны передавать".

После того, как я исправил ту конфигурацию сопоставителя, все теперь работает как очарование снова. Но я действительно должен ступить на пальцы ног ISP теперь …

Относительно того, как я действительно разрешал его? Ну, путем дергания регистрирующегося многословия, сильно учащегося /var/log/everything видеть в который развернутые вещи порядка. Когда я видел, что мой сопоставитель регистрировал обратные попытки поиска, я знал то, что продолжалось.


1: с точки зрения смягчения усиления DNS это - полная ерунда, потому что я действительно тестировал, и исходящие пакеты DNS проходят очень хорошо – однако это - пакеты, которые они должны отфильтровать. На самом деле каждый ISP конечного клиента должен отбросить все пакеты UDP, какой адрес отправителя не соответствует тем из их клиентов

5
27.01.2020, 20:29

Конфигурация sshd на сервере является одной из самых интересных вещей посмотреть на то, если у Вас есть подобные проблемы. Это обычно находится в /etc/ssh/sshd_config.

Существует хороший шанс что в Вашем файле конфигурации существует раздел:

Match Address 10.*.*.*,192.168.0.*
    PasswordAuthentication no

Это имеет некоторые правила, специфичные для этих подсетей ( Address в Вашем файле будет, скорее всего, отличаться). Эти правила только касаются адресов IPv4, если это - единственный, которые соответствуют (и не IPv6), и правила в соответствии только относятся к подобранному IP-адресу. Таким образом в зависимости от того, соединяетесь ли Вы через IPv4 и IPv6, sshd имеет различные правила.

Не все вещи могут быть установлены в a Match, но их достаточно, чтобы смочь иметь значение:

AllowAgentForwarding, AllowTcpForwarding, AuthorizedKeysFile,
AuthorizedPrincipalsFile, Banner, ChrootDirectory, ForceCommand,
GatewayPorts, GSSAPIAuthentication, HostbasedAuthentication,
HostbasedUsesNameFromPacketOnly, KbdInteractiveAuthentication,
KerberosAuthentication, MaxAuthTries, MaxSessions,
PasswordAuthentication, PermitEmptyPasswords, PermitOpen,
PermitRootLogin, PermitTunnel, PubkeyAuthentication,
RhostsRSAAuthentication, RSAAuthentication, X11DisplayOffset,
X11Forwarding, X11UseLocalHost
1
27.01.2020, 20:29
  • 1
    Это было бы хорошей подсказкой, если бы был a Match директива. Я добавил sshd_config целевой системы к моему вопросу. Поскольку Вы видите, что это действительно очень минимально, и никакой броский материал не продолжается там. Также отметьте это PasswordAuthorization no не предотвращает интерактивную клавиатуру. И проблема сохраняется аутентификации с открытым ключом, используется (т.е. работает по IPv6, но не по IPv4). –  datenwolf 24.04.2013, 22:04

Я столкнулся с той же проблемой, выровнял iptables с ip6tables , а затем исправил эту проблему.

-1
27.01.2020, 20:29

Теги

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