Предположим, что сценарий производит:
L1
L2
L4
L5
, затем следующая команда
script | sed 's/^\(.\+\)/ \[prepend\] \1/'
добавляет " [prepend] " к каждой не -пустой строке:
[prepend] L1
[prepend] L2
[prepend] L4
[prepend] L5
Is this the consequence of an SSH configuration of the server I'm trying to access?
Судя по информации, которой вы поделились, мы не можем быть уверены. Вы даже можете подключаться к двум различным, независимо настроенным демонам SSH, работающим в одной системе.
I mean, SSH can apply different login policy if I log [in] from localhost (in this case, the server) and if I log [in] from a remote machine (in this case, my PC)?
Да, SSH-серверы могут применять разные политики в зависимости от различных свойств входящих подключений.
Например, ключевое слово Match
в конфигурации OpenSSH sshd
позволяет вам определять условные блоки, которые группируют только применяемые директивы (и переопределяют ранее установленные ), если список указанных условий встречались (см. подробнееman 5 sshd_config
).
Добавление этого блока в/etc/ssh/sshd_config
(точное местоположение может отличаться в зависимости от вашей системы):
PubkeyAuthentication yes
Match Address "!127.0.0.1,!::1,*"
PubkeyAuthentication no
даст инструкции sshd
-:
127.0.0.1
и ::1
. (Головная боль -сохранение примечания :как указано в man 5 ssh_config
, "ШАБЛОНЫ",
[...] a negated match will never produce a positive result by itself. [...] The solution here is to include a term that will yield a positive match, such as a wildcard [...]
, поэтому "!127.0.0.1,!::1,*"
включает в себя *
в конце ).