Категорії
Misc, staff, other

[shell] Разные трюки с ssh

1) Узнать скорость соединения между хостами:

$ yes | рv | ssh host.com "cat > /dev/null"

PS. Для этого нужно установить утилиту pv

2) Удобный анализ tcpdump трафика:

$ ssh root@remotehost tcpdump -w - 'port !22' | wireshark -k -i -

этим мы анализируем дамп на хосте remotehost.

3) Запуск команды на нескольких серверах

$ echo "uptime" | pee "ssh host1" "ssh host2" "ssh host3"

4) Сравнение файлов на разных серверах:

$ diff <(ssh host1 cat /path/to/file1) <(ssh host2 cat /path/to/file2) 

5) Просмотр логов в realtime с разных серверов:

$ multitail -l 'ssh host1 "tail -f /path/to/log1"' -l 'ssh host2 "tail -f /path/to/log2"'

6) Установка пакетов удалённой машины:

# ssh remotehost 'dpkg --get-selections' | dpkg --set-selections && dselect install

7) Выполнение скрипта на удалённой машине без его копирования на онную.

$ ssh -Т user@remotehost < script.sh

8 ) Создание туннеля

В /etc/ssh/sshd_config выставляем такие значения

PermitRootLogin yes
PermitTunnel yes

Перечитываем конфиг на сервере. На клиенте запускаем команду

$ssh -w 0:0 root@remote_host

Этим мы создадим туннель tun0 как на клиенте, так и на сервере. Дальше нужно задать IP-адреса на клиенте (первая команда) и на сервере (вторая команда) соответственно:

#ifconfig tun0 10.0.0.2 pointopoint 10.0.0.1
#ifconfig tun0 10.0.0.1 pointopoint 10.0.0.2

Дальше можно настраивать маршрутизацию.

PS Многое почерпнул из журнала Хакер.

2 коментарі “[shell] Разные трюки с ssh”

Ооох :))) Респект, коллега 🙂 П. 4 и 5 часто использую, но вот такой вариант в голову не приходил :))

PS: Ну раз в п.1 написано, что надо ставить, то не помешает добавить: 😉
Для п.3 в Debian/Ubuntu нужно поставить пакет moreutils, для RedHat/CentOS, если не ошибаюсь, – perl-List-MoreUtils.
Д п.5 нужен пакет multitail (в deb и rpm одинаково называется).

Залишити коментар до angel2s2 Скасувати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *

Домашняя страничка Andy
Записки молодого админа
Самостоятельная подготовка к Cisco CCNA
Самостоятельная подготовка к Cisco CCNP
Powered by Muff