@sarvatas

Как получить доступ к сервисам на VPS только для пользователей vpn (softether)?

Добрый день. Прошу помочь решить проблему с vpn. Настроил vpn (softether через local bridge) на vps. Все работает внешний ip меняется на ip vps. Но стоит задача сделать так, чтобы доступ к сервисам на этой vps (ssh и др.) имели только пользователи, которые подключились через vpn. Для этого настроил ufw, но не могу сделать так, чтобы пользователи, которые авторизировались через vpn на сервере использовали выданные vpn ip адреса (сейчас по логам ufw у пользователей vpn ip - внешний ip адрес провайдера). Сервер - ubuntu 14.
ifconfig:
eth0 Link encap:Ethernet HWaddr 02:00:00:0b:56:25
inet addr:149.202.136.25 Bcast:149.202.136.25 Mask:255.255.255.255
inet6 addr: fe80::ff:fe0b:7615/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:225165 errors:0 dropped:0 overruns:0 frame:0
TX packets:215388 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:52659957 (52.6 MB) TX bytes:55214766 (55.2 MB)

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:906840 errors:0 dropped:0 overruns:0 frame:0
TX packets:906840 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:80771058 (80.7 MB) TX bytes:80771058 (80.7 MB)

tap_soft Link encap:Ethernet HWaddr 00:ac:fd:35:42:5b
inet addr:192.168.7.1 Bcast:192.168.7.255 Mask:255.255.255.0
inet6 addr: fe80::2ac:fdff:fe35:427b/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:234186 errors:0 dropped:0 overruns:0 frame:0
TX packets:107663 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:500
RX bytes:26655604 (26.6 MB) TX bytes:21447057 (21.4 MB)

ufw status
Status: active

To Action From
-- ------ ----
67 ALLOW Anywhere
53 ALLOW Anywhere
500 ALLOW Anywhere
4500 ALLOW Anywhere
1541/tcp ALLOW 149.202.136.25
1541/tcp ALLOW 192.168.7.0/24
67 (v6) ALLOW Anywhere (v6)
53 (v6) ALLOW Anywhere (v6)
500 (v6) ALLOW Anywhere (v6)
4500 (v6) ALLOW Anywhere (v6)

iptables -t nat -L POSTROUTING --line-numbers
Chain POSTROUTING (policy ACCEPT)
num target prot opt source destination
1 MASQUERADE all -- 192.168.7.0/24 anywhere
2 MASQUERADE all -- anywhere anywhere
3 MASQUERADE all -- 192.168.7.0/24 anywhere
4 MASQUERADE all -- 192.168.7.0/24 anywhere
5 MASQUERADE all -- 192.168.7.0/24 anywhere
6 MASQUERADE all -- 192.168.7.0/24 anywhere
7 MASQUERADE all -- 192.168.7.0/24 anywhere
8 SNAT all -- 192.168.7.0/24 anywhere to:149.202.136.25

In /etc/ufw/before.rules I tried, but failed:
*nat
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 192.168.7.0/24 -o tap_soft -j MASQUERADE
COMMIT

Заранее благодарю.
P.S. ip заменены
  • Вопрос задан
  • 383 просмотра
Пригласить эксперта
Ответы на вопрос 1
Bessome
@Bessome
Администратор Linux, Windows. 1С программист
Я могу конечно ошибаться, но MASQUERADE как раз и предназначен для подмены IP адреса. Поэтому у Вас адреса провайдера.
Не совсем ясно к каким сервисам нужен доступ с VPN. Можно сделать доступ через 127.0.0.1 или завести виртуальный адрес, на котором будут взлетать нужные сервисы, например апач. Те, кто не залогинился по VPN, тот просто не имеет доступа к этому адресу извне.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы