Это не совсем задокументированное поведение, но в целом это расширение. Все три команды, которые были расширены аналогичным образом (a
, i
и c
), ведут себя так же, как :начальный пробел игнорируется, и если текст начинается с \
, то он отбрасывается. По сути, не имеет значения, какая из этих форм используется :
.
i foo
i \foo
i \
foo
Они все одинаковые. (Я знаю, что использовал i
здесь, но проверьте описания a
, i
и c
-, это сюрреалистично.)
И код показывает столько же:
1111 case 'a':
1112 case 'i':
1113 case 'c':
1114 ch = in_nonblank ();
1115
1116 read_text_to_slash:
1117 if (ch == EOF)
1118 bad_prog (_(EXPECTED_SLASH));
1119
1120 if (ch == '\\')
1121 ch = inchar ();
Вторая строка не означает, что кто-то вошел в систему , она просто указывает, что кто-то установил соединение с портом. После подключения клиент попытается аутентифицировать себя, используя установленное соединение.
Если вы все еще сомневаетесь, вы можете проверить это самостоятельно :войдите через SSH на одном терминале, откройте другой терминал и запустите ssh
и дождитесь запроса пароля.Теперь запустите pfctl -sa
на другом терминале, и вы увидите, что ваш IP-адрес появляется дважды :один для вошедшего в систему терминала, а другой для «ожидающего» соединения.
/var/log/authlog
должен показать вам список всех успешных и неудачных попыток входа в систему.