Академический Документы
Профессиональный Документы
Культура Документы
подборка советов и
интересных команд на
все случаи жизни
$ ssh user@host df -h
3. Редактируй удаленные
файлы локальным редактором
Чтобы отредактировать файл на удаленной
машине, не требуется заходить на нее и
использовать консольный редактор. На самом деле
файл можно открыть в твоем любимом текстовом
редакторе на локальной машине (gvim заменяем на
свой редактор):
$ gvim scp://user@host//путь/к/файлу
4. Копируй содержимое
удаленного файла в буфер
обмена
Если необходимо скопировать содержимое
удаленного файла или вывод команды в буфер
обмена, не обязательно выводить его на экран или
открывать в текстовом редакторе и копировать
вручную. Можно использовать следующую
команду:
5. Сравнивай удаленный и
локальный файл без
копирования
Похожий прием можно использовать для
сравнения двух файлов:
6. Работай с удаленными
файлами с помощью
локального файлового
менеджера
Не всегда удобно работать с большим количеством
файлов с помощью консольных команд или mc,
запущенного на удаленной машине. Но всегда
можно подключить любой каталог удаленной
машины как сетевой диск. Для этого достаточно
установить sshfs:
$ sudo apt-get install sshfs
$ mkdir remote_files
И подключить его:
$ sshfs user@host:/home/user
~/remote_files/
7. Используй tmux
Сложные действия на удаленной машине редко
ограничиваются одной консолью. Обычно мы
открываем сразу несколько SSH-соединений, в
которых запускаем различные команды, копируем
текст из одной в другую, одновременно следим за
выполнением нескольких операций. Однако
держать открытыми несколько сессий совсем не
обязательно, хватит и одной, в которой запущен
tmux.
$ ssh-copy-id user@host
9. Создай постоянное
соединение с машиной
Если в течение дня ты часто подключаешься к
одной машине, в том числе на несколько минут или
секунд (чтобы просто запустить одну команду,
например), есть смысл создать с ней постоянное
соединение. Твой комп будет держать соединение
открытым и использовать его для каждого
подключения к машине. Это намного быстрее и
экономичнее с точки зрения трафика и нагрузки на
процессор.
Host host
ControlPath ~/.ssh/master-%r@%h:%p
ControlMaster no
$ export AUTOSSH_POLL=10
[options]
logfile = /var/log/knockd.log
[openSSH]
sequence = 3000,4000,5000
seq_timeout = 5
command = /sbin/iptables -A INPUT -i
eth0 -s %IP% -p tcp --dport 22 -j ACCEPT
tcpflags = syn
[closeSSH]
sequence = 5000,4000,3000
seq_timeout = 5
command = /sbin/iptables -D INPUT -i
eth0 -s %IP% -p tcp --dport 22 -j ACCEPT
tcpflags = syn
Перезапусти демон:
Стучимся в порты
Host server1
HostName example.com
Port 2222
User user
IdentityFile ~/my_key.pem
Host server2
HostName 192.168.33.10
User root
PubkeyAuthentication no
$ ssh server1
Выводы
SSH — штука сложная и очень развитая. На самом
деле эти двадцать советов — лишь часть того, на
что способен этот инструмент.
Вверх ↑