У меня есть два узла «VPS» и «Сервер». Сервер доступен только через VPN, но я не управляю vpn-сервером этой организации. Поэтому в VPS я использую openconnect (клиент vpn) для подключения к серверу. Затем я могу выполнить ssh или любой другой запрос к моим службам на сервере.
Проблема в том, что я пытаюсь получить доступ с сервера к любой службе, которая публично отображается на VPS. Он заморожен. Такие программы, как mtr
или tracert
отбрасывает все пакеты на последнем прыжке. Сервер может получить доступ к любому другому IP-адресу, но не к VPS, когда установлено VPN-соединение. Я провел тесты с другими VPS, и случилось то же самое.
Я даже отключил брандмауэр на обоих концах (VPS и Server).
Что интересно, если я это сделаю tcpdump
в VPS я вижу пакеты, исходящие от моего запроса к серверу (например, curl
), но они никогда не доходят до моей службы (например, nc -l
). Итак, я предполагаю, что проблема в уровне netfilter / iptables, даже если он отключен. Но я совершенно не понимаю, что мне делать. Я даже не знаю, работать ли мне на моем сервере или на моем VPS.
me@Server $ ip route
default via 46.101.xxx.1 dev eth0 onlink
46.101.xxx.0/18 dev eth0 proto kernel scope link src 46.101.xxx.yyy
193.144.zzz.0/20 dev tun0 scope link
193.144.jjj.0/19 dev tun0 scope link
193.144.aaa.11 dev tun0 scope link
193.144.aaa.22 dev tun0 scope link
193.144.bbb.2 via 46.101.xxx.1 dev eth0 src 46.101.xxx.yyy
193.144.bbb.9 dev tun0 scope link
me@Server $ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 04:jj:xx:yy:rr:01 brd ff:ff:ff:ff:ff:ff
inet 46.101.xxx.yyy/18 brd 46.101.255.255 scope global eth0
valid_lft forever preferred_lft forever
163: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1400 qdisc fq_codel state UNKNOWN group default qlen 500
link/none
inet 193.144.bbb.9/32 scope global tun0
valid_lft forever preferred_lft forever
Я также попробовал кучу конфигураций iptables / ufw на всякий случай, если мне повезет (пересылка, маскарадинг, нат, предварительная маршрутизация ... не знаю, что я делал), но после целого дня ничего не достигнуто. Итак, предположим, у меня просто нет правил.
Что мне нужно?
Чтобы получить доступ к службам VPS, которые представлены на общедоступном IP-адресе, также с моего сервера, в то время как доступ к серверу осуществляется благодаря VPN-соединению, запущенному с VPS на сервер.