Основные советы по продуктивности SSH

Автор: | 20/07/2022

Если вы похожи на меня, вы проводите весь день в сеансах SSH. Простое знание того, как сэкономить несколько секунд здесь и там, со временем добавится к минутам и часам.

1. Используйте Mosh для плохих и медленных соединений

https://mosh.org/ — используйте SSH в роуминге, с плохими или медленными соединениями, самое главное, с поддержкой локального эха (т. е. вы не хотите, чтобы сервер отправлял вам нажатия клавиш).

Я много лет использую Mosh с SSH.

Он также доступен во многих форматах, включая репозитории для Fedora, Debian и даже Chrome!

2. Используйте SSH-ключи вместо паролей

Это не только безопаснее, но и быстрее. Сколько раз в день вы вводите пароль?

3. В Windows 10 теперь есть OpenSSH — прощай, PuTTY!

Одним из самых больших преимуществ этого является то, что вам не нужно возиться с преобразованием ключей SSH в формат, который может читать PuTTY. Собственный клиент OpenSSH в Windows означает, что вы можете просто использовать свои ключи такими, какие они есть, и использовать остальные возможности конфигурации OpenSSH.

PuTTY просто старый, изворотливый и режет мне глаза. Простите.

https://docs.microsoft.com/en-us/windows/terminal/tutorials/ssh

4. Конфигурация SSH — с использованием «псевдонима хоста»

Большинство людей никогда не утруждают себя написанием конфигурации SSH. Однако, потратив несколько секунд на добавление нескольких простых утверждений, вы сможете сэкономить МНОГО времени в течение недели или двух.

У меня есть несколько серверов, на которых нет записей DNS или на которых используются нелепые автоматически сгенерированные имена пользователей (cpanel, я смотрю на вас). Вы можете настроить хосты с простым псевдонимом и настройками по умолчанию, такими как имена пользователей, и просто выполнить «ssh cpanel».

Host cpanel
    HostName 92.304.190.22
    User u123kjlk44

Кроме того, у меня есть несколько старых соединений BMC, где я всегда вхожу в систему как ADMIN и мне нужно включить поддержку старого (плохого) шифрования соединения;

Host hydra-*-bmc
    User ADMIN
    Cipers +3des-cbc 

Примечание: тройной DES с цепочкой шифроблоков (3des-cbc) безнадежно ужасен / небезопасен в наши дни, поскольку доступны гораздо лучшие варианты. Просто это оборудование на этих старых машинах просто не поддерживает его.

Вы можете установить множество таких значений по умолчанию для хостов, к которым вы часто обращаетесь.

5. Запустите oneliner

Вы будете удивлены тем, сколько людей не знают, что вы можете просто запустить одну строчную команду и отключиться, просто вот так;

user@host: ssh root@server poweroff

Или;

user@host: ssh root@server 'service httpd restart'

Это просто экономит несколько секунд здесь и там.

6. Использовать screen/tmux

Терминальные мультиплексоры должны быть стандартным инструментом в вашем наборе инструментов, если вы часто используете командную строку и SSH.

Screen великолепен, поскольку он есть почти во всех дистрибутивах, но сейчас он в значительной степени заменен на tmux. Оба они работают с очень похожими сочетаниями клавиш (Ctrl + A против Ctrl + B).

Одним из популярных способов использования является разделение терминала на несколько «окон», однако одним из наиболее полезных преимуществ является возможность «сохранять и восстанавливать» сеансы, особенно если ваша сеть отключается. (подсказка, используйте tmux и mosh в тандеме!)

7. Редактировать файл поверх SSH с vim+”rsync”

Это на самом деле ново для меня — нашел по ссылке ниже. Это должно сэкономить время при редактировании файлов через SSH с помощью vim, открывая файлы с помощью протокола rsync:

user@host: vim rsync://server:/etc/hosts 

https://medium.com/james-reads-public-cloud-technology-blog/essential-ssh-productivity-tips-e23289bbd1f7

http://blogs.perl.org/users/smylers/2011/08/ssh-productivity-tips.html