Посты по тегу: ssh

How To: Проксируем весь трафик через ssh

Иногда надо отправить весь трафик через удаленный сервер. VPN'а и ничего другого, кроме ssh, нет. Чтоб провернуть этот фокус одной коммандой нам понадобится только python на обоих концах "туннеля" и ssh доступ.

Устанавливаем пакетный менеджер pip:

$ sudo apt install python-pip

Устанавливаем sshuttle:

$ sudo pip install sshuttle

Запускаем туннель:

$ sshuttle -r user@example.com 0.0.0.0/0

Все. С этого момента весь траффик пойдет через сервер example.com. И да, для консольных утилит тоже.

Чтоб DNS трафик пошел туда же надо добавить опцию --dns. Учтите, что если вы используете провайдерский DNS, то он может перестать отдавать записи:

$ sshuttle --dns -r user@example.com 0.0.0.0/0

Более подробное описание смотрите в официальной документации.

Персональный SSH proxy

Если у вас есть удаленный сервер, то и прокси искать не нужно. Используйте свой сервер в качестве socks-proxy:

ssh -D 8080 user@example.com

После этого в браузере настройте socks-proxy на 127.0.0.1, порт 8080.

ESXi: Загрузка виртуальной машины через ssh

Допустим у вас есть ESXi сервер, где крутится какое-то количество виртуальных машин и есть необходимость одну из них запустить. Но вот незадача — нет под рукой Windows с клиентом ESXi. При этом есть устройство с SSH клиентом. Чтож, давайте запустим виртуалку.

Получаем список виртуальных машин:

vim-cmd vmsvc/getallvms

Читаем состояние машины:

vim-cmd vmsvc/power.getstate <vmid>

Запускаем машину:

vim-cmd vmsvc/power.on <vmid>

Ну и еще немного команд для удобства:

vim-cmd vmsvc/power.off <vmid>
vim-cmd vmsvc/power.restart <vmid>
vim-cmd vmsvc/power.reboot <vmid>
vim-cmd vmsvc/power.shutdown <vmid>

В принципе, этого набора команд вполне достаточно для экстренного управления виртуальными машинами.