Изменить настройки соединения SSH без разъединения?

SMTP и ESMTP (базовые протоколы), что доставка почты дескриптора имеет обширный RFCs (исходное существо RFC822 и более современное обновление RFC2822 и Интернет стандарты отслеживают протокол в RFC5322).

Как соглашение о почтовых серверах с ошибками во время доставки варьируется от почтового сервера до почтового сервера. Добавление к сложности является тем, что многие из них настраиваются и легки изменить поведение по умолчанию, обрисованное в общих чертах в RFCs.

Общее эмпирическое правило, данное вышеупомянутые протесты:

Выберите самое высокое предпочтение запись MX, или один наугад, если несколько записей того же предпочтения существуют (несколько раз, случайное поведение является вместо этого циклическим алгоритмом). Если выбранный хост "недостижим" (никакой маршрут для хостинга, соединение, которому отказывают или подобный), попробуйте следующую запись MX того же предпочтения или ниже. Как msw упомянула, они - некоторые, какой интуитивный счетчик - самое высокое предпочтение 0, и записи более высокого количества считают менее предпочтительными.

Это повторяется, пока соединение не устанавливается, ИЛИ всем хостам не удается ответить, в этом случае электронная почта повторно ставится в очередь для более поздней попытки возвращения. Большинство почтовых серверов будет делать попытку этого для определенного количества времени (обычно что-то как 1 - 2 дня), прежде чем оно сдастся и возвратит электронную почту в Неотчете о доставке (NDR).

Если соединение успешно, различные шаги протокола RFC диктуют общее поведение соединения MTAs. От начального баннера, отправленного удаленным почтовым сервером, к каждой различной команде, данной к нему (от EHLO/HELO, через MAIL FROM, RCPT TO и DATA операторы), общее эмпирическое правило:

4xx случайная ошибка, попробуйте еще раз позже

С этим кодом электронная почта повторно ставится в очередь сервером местной почты и доставкой, предпринятой в более позднее время (настроенный в настройках того сервера местной почты)

5xx фатальная ошибка, недоставленная почта

С этим кодом электронную почту считают недоставленной, и локальный почтовый сервер отправки будет (не всегда, но на большинстве серверов) генерируют NDR (Неотчет о доставке).

С точки зрения Вашего вопроса, "Если этот сервер не имеет требуемого почтового адреса", в RCPT TO этап, большинство серверов ответило бы a 5xx код и Ваш сервер местной почты генерировали бы NDR.

Не все почтовые серверы создаются равные

Существуют некоторые протесты к этому. Exchange MS в течение самого долгого времени, принял бы ВСЕ электронные письма независимо от неправильных получателей, unroutable домены и т.д, и затем генерировал бы NDR после факта. Бесспорный ISPs из-за проблем со спамом и явлением, известным как Обратное Рассеяние, даже не генерируйте NDRs, и Ваша почта "тихо перестали работать" (Вы никогда не получаете уведомления о неудавшейся доставке).

Также необходимо учесть, что MTA (Агент передачи почты или почтовый сервер) не всегда, конечная точка доставки и MDAs (агенты доставки почты - такие как procmail) и MUAs (Почтовые Агенты пользователя) или "почтовые клиенты", такие как тандерберд/перспектива и т.д. может быть настроена для "возвращения" тех электронных писем с их собственными подобными NDR ответами. Существуют также такие механизмы как .forward файлы, которые могут заставить MTA перенаправлять электронную почту к другому адресу после принятия электронной почты. Определенные почтовые серверы (я знаю дело обстоит так для Exim), попытается расшириться .forward при RCPT TO этап разговора SMTP и если это расширяется до unroutable ответа адреса с 5xx ряд кодов ошибок упомянут выше.

Поскольку намного более точное и всестороннее объяснение считало упомянутый выше RFCs и документация MTA, который Вы используете (помнящий, что то, как это настроено, может играть роль в, он - поведение).

3
17.09.2014, 00:42
1 ответ

Если вы говорите об openssh, вы можете получить меню выходов ssh, используя последовательность нажатия трех клавиш ~? .

$ ~?
Supported escape sequences:
~.  - terminate connection
~B  - send a BREAK to the remote system
~C  - open a command line
~R  - Request rekey (SSH protocol 2 only)
~^Z - suspend ssh
~#  - list forwarded connections
~&  - background ssh (when waiting for connections to terminate)
~?  - this message
~~  - send the escape character by typing it twice
(Note that escapes are only recognized immediately after newline.)

Это показывает, что ~ C перенаправит вас в командную строку ssh. Оттуда вы можете управлять переадресацией портов.

$ ~C
ssh> ?
Commands:
      -Lport:host:hostport    Request local forward
      -Rport:host:hostport    Request remote forward
      -KRhostport             Cancel remote forward

В противном случае вы можете перейти в локальную оболочку с помощью ~ ^ Z .

6
27.01.2020, 21:14

Теги

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