У меня есть такая структура
vpn.ekzorchik.ru (OpenVPN Server) <= Mikrotik (OpenVPN Client)
И я могу с любого своего устройства подключить к OpenVPN
и получить доступ к ресурсам за Mikrotik
Ну так вот, если ранее я на vpn
системе настраивал проброс порта до конечной системы в своей локальной сети за Mikrotik
, то сейчас я пришел к способу, которым безопаснее, а именно использованием SSH
туннеля на доступ к сервисам.
Задача: На своей рабочей системе (т.е. на работе у меня Windows 10 Pro
) я буду запускать клиент Putty
(или связку Putty + mRemoteNG
), а после уже взаимодействовать с сервисами, которые работают внутри моего тестового полигона, базирующегося на Debian 10 + Proxmox 6
Шаг №1:
У меня внутри гипервизора Debian 10 + Proxmox 6
есть VM
на которой я тестирую работу мониторинга и завожу в него различные сервисы дабы разобрать как они заводятся, какие нюансы возникают. И чтобы не настраивать на vpn
проброс порта из вне до VM
, получается я как бы выставляю наружу сервис еще без защиты, а так наружу открыт только SSH
. Где защитой SSH
занимается связка firewall-cmd + fail2ban
(Настройка связки Fail2ban + firewalld на Ubuntu 18.04
)
Шаг №2:
Чтобы заработало туннелирование через ssh
нужно на сервисе vpn.ekzorchik.ru
активировать настройку:
root@vpn:~# sudo nano /etc/ssh/sshd_config AllowTcpForwarding yes root@vpn:~# systemctl restart sshd
Шаг №3:
Запускаю клиент putty
на Windows 10 Pro
Category (Session)
Host Name (or IP Address): vpn.ekzorchik.ru
Port: XXXXX
Connection type: SSH
Category (Connection) SSH – Tunnels
Source port: 8080
Destination: 172.33.33.120:80
И нажимаю Add
На заметку: Можно в рамках одного туннеля указать несколько подключений и после каждого добавлять Add
Настройки принимаю вид:
Category (Connection) Data
Auto-login username: root
Category (Session)
Saved Sessions: указываем, к примеру sshtunnel
И нажимаю "Save"
После нажимаю Open
Авторизуюсь на своем vpn.ekzorchik.ru
путем указания логина и пароля
Using username “root”. root@vpn.ekzorchik.ru’s password:
Я успешно подключен и сворачиваю окно подключения к своему vpn.ekzorchik.ru
root@vpn:~#
Шаг №4:
Покуда, окно с подключением к vpn.ekzorchik.ru
через клиент Putty
открыто и успешно, я теперь могу взаимодействовать с системой 172.33.33.120
через порт 8080
. А как взаимодействовать, а все просто, просто запускаем любой браузер на Windows 10 Pro
, к примеру Google Chrome
и в строке адреса уже указываем http://127.0.0.1:80
и получаем:
Ну а далее уже опираясь на заметки (https://lin.ekzorchik.ru/?s=zabbix
) моей приватной Wiki
я делаю задачи и наполняю ее разобранными задачами. Самое главное, из всего этого что я не свечу настроенным пробросом порта и могу ограничить кто может и откуда подключаться к сервису SSH.
Шаг №5:
Разбирая и оформляя данную заметку я поставил себе цель прикрутить к своему vpn
хосту авторизацию не только по связке login + pass
аутентификацию, но и сделать доступ по публичному ключу, а для этого у меня есть заметка:
Как подключиться через Putty к серверу на основе публичного ключа в Windows 7
Подключение к серверу Ubuntu Bionic Server через Putty + Public Key
На заметку: Мой Вам совет, когда создаете через Puttygen ключи обязательно защищайте их парольной фразой дабы их если кто-либо и утащит воспользоваться не сможет, Вы уже в свою очередь сможете подключиться.
Итого я обезопасил свои подключения к сервисам за Mikrotik
на котором у меня поднят OpenVPN
клиент вот таким вот простым способом. На этом у меня всё, с уважением автор блога Олло Александр aka ekzorchik.