Корисності по ssh

Корисності по SSH. Тунель, кидок портів, socks-проксі

Оскільки мені останнім часом доводиться щодня працювати по ssh, то хочеться поділитися тими речами, які мені допомагають в роботі. Перш за все треба відзначити, що частина відмінних можливостей ssh ​​залишається в тіні. Хоча в мане це все є. В цей топік буду складати фичи ssh, ssh тунелі, кидок портів і все що стосовно OpenSSH. Отже:

1. Підключення ланцюжка. Наприклад host-2 недоступний нам, але знаходиться за host-1, який доступний. тоді:

ssh -t user @ host-1 ssh user @ host-2

2. Опція -t. Запуск консольного застосування на віддалений хост в якості оболонки. Наприклад можна запускати screen, mc, або яке-небудь власне меню.

ssh -t user @ remote_host mc

Запустить Midnight Commander, при виході з нього сесія обірветься.

3. Проброс порту віддаленого хоста на локальний порт. Приклад: є веб-сервер host-2 в приватній мережі, є ssh доступ до remote_host, який знаходиться в одній мережі (або має доступ до host-2), нам треба залізти на цей веб-сервер:

sudo ssh -L 8888: host-2: 80 user @ remote_host

Саме з правами рута, після цього веб-сервер host-2 буде доступний у нас, localhost: 8888

4. Проброс локального порту c хоста на нашому боці на віддалений хост. Тобто припустимо, треба на віддаленому remote_host відкрити веб-сервер host-1 який доступний тільки нам.

sudo ssh -R 8888: host-1: 80 user @ remote_host

І на remote_host на localhost: 8888 буде проброшен веб-сервер host-1

5. Проброс віддалених GUI додатків на локальний X Server.

для цього в / etc / ssh / sshd_config повинна бути опція: X11Forwarding yes (В Debian / Ubuntu включена по дефолту) На локальному комп'ютері повинен бути встановлений і запущений X Window System. У Windows - Xming, в MacOS - XQuartz.

Корисності по ssh

6. Динамічний кидок. Ситуація: необхідний проксі-сервер, або потреба попрацювати з сервісами в закритій віддаленої мережі, що знаходиться за host.

sudo ssh -D 777 user @ host

І тоді на localhost: 777 працюватиме socks сервер, який відповідно працює з оточенням віддаленого хоста host, поверх ssh з'єднання.

Корисності по ssh

Файл source-file c локального хоста на віддалений remote_host:

scp source-file user @ remote_host:

Файл з віддаленого хоста remote_host на локальний, незручність в тому, що потрібно знати точний шлях файлу-джерела:

На сьогодні все. Пізніше ще додам про підняття ssh тунелів, як їх сам випробують :)