known_hosts
файл в Вашем корневом каталоге - то, где ssh автоматически хранит идентификационные данные каждого нового сервера, Вы посещаете. У других пользователей будет свое собственное known_hosts
файл, конечно.
Файл в /etc
то же самое, за исключением того, что оно может только быть записано во вручную и совместно используется всеми пользователями системы.
Типичное использование для /etc
файл - чтобы системный администратор ввел идентификационные данные всех серверов в Вашей организации. Таким образом, каждый пользователь не должен будет отвечать на "да", когда они сначала посещают локальные ресурсы, но, что еще более важно, это улучшает безопасность.
Цель known_hosts
файл должен предотвратить атаки "человек посередине" путем обеспечения, что Вы соединяетесь с тем же сервером, который Вы подключили к прошлому разу (он не был украдкой выгружен взломом DNS или чем-то). known_hosts
слабость - то, что это не может обнаружить man-in-the-middle, если это происходит в первый раз, когда Вы соединяетесь. Путем предварительного заполнения /etc
файл с известным - хорошие подписи, администратор может быть уверен, что его пользователи не отслеживаются.
Используйте script / tmp / output
, чтобы начать запись в новой оболочке , затем введите свои команды и посмотрите файл / tmp / output
, например с редактором или cat -vet
. Введите в оболочку exit
, чтобы выйти из записи.
Большинство основных утилит ведут себя по-разному при выводе на интерактивный терминал. Если они обнаруживают, что вы выводите данные в файл или канал, они не форматируются (это разумно: нам не нужны escape-последовательности цветов, когда мы обрабатываем списки файлов с помощью сценария). Для ls
вы можете принудительно:
CLICOLOR_FORCE=1 ls -G
(Это для OSX; в Linux это будет ls --color = always
.)
Другие инструменты имеют аналогичные переключатели ( grep
, например).
Вероятно, лучше всего запускать вывод через шестнадцатеричный просмотрщик (например, od
, hexdump
, xxd)
):
% man less | hexdump -C | head -5
00000000 4c 45 53 53 28 31 29 20 20 20 20 20 20 20 20 20 |LESS(1) |
00000010 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
*
00000040 20 20 20 20 20 20 20 4c 45 53 53 28 31 29 0a 0a | LESS(1)..|
00000050 0a 0a 4e 08 4e 41 08 41 4d 08 4d 45 08 45 0a 20 |..N.NA.AM.ME.E. |
%
В этом случае вы можете искать любые непечатаемые символы в ascii (7)
.
Что касается чуши "не работает", беглый просмотр руководства ls (1)
приводит к следующему:
% env TERM=xterm-color CLICOLOR_FORCE=1 ls -G | hexdump -C | head -3
00000000 1b 5b 33 34 6d 41 70 70 6c 69 63 61 74 69 6f 6e |.[34mApplication|
00000010 73 1b 5b 6d 1b 5b 6d 0a 1b 5b 33 34 6d 44 65 73 |s.[m.[m..[34mDes|
00000020 6b 74 6f 70 1b 5b 6d 1b 5b 6d 0a 1b 5b 33 34 6d |ktop.[m.[m..[34m|
%