Я хочу создать цепочку VPN с двумя разными поставщиками VPN и виртуальным частным сервером со статическим IP между ними, поэтому конфигурация будет выглядеть так:
User ----> Commercial VPN ----> VPS ----> Another commercial VPN ----> Internet
Использование VPS здесь связано с тем, что у него есть еще один IP-адрес. VPS имеет только один физический интерфейс. По сути, он должен работать как сеть Tripple VPN.
У меня вопрос: возможно ли это, и если да, то как я могу настроить VPS для приема пакетов от одной VPN и перенаправления их через другую?
Быстрые и простые решения для анонимности:
Используйте VPN-провайдер, которому доверяете
Используйте коммерческий VPN вместо коммерческого VPN
Использовать TOR
Индивидуальное решение:
Можно подключить vpn таким образом, но это немного сложно: client => vpn => vps => vpn => internet
1- Настройте VPN-сервер в VPS и проверьте:client => vps(vpn) => internet
2- Добавьте статический маршрут к VPS для публичного IP вашего клиента:
Linux: ip route add <client pub ip> via <vps gateway>
Windows: route add -p <client pub ip> mask 255.255.255.255 <vps gateway>
Это сохранит ваш удаленный сеанс клиента подключенным к vps, когда вы подключите VPS к службе VPN на следующем шаге.
3- Подключите VPS к провайдеру VPN и проверьте подключение к Интернету: vps => vpn => Internet
4- Проверьте подключение: 'client => vps (vpn) => vpn => internet'
5- Подключите клиента к vpn, а затем наберите свой vps (vpn), который уже подключен к другому vpn в Интернет: client => vpn => vps(vpn) => vpn => internet
После подключения вашего клиента к vpn вы можете набрать vps (vpn) только в том случае, если он прослушивает свой IP-адрес подключенного vpn pub.
ИЛИ
Просто добавьте IP-адрес своего первого VPN-сервера в качестве статического маршрута к VPS, следуя шагу 2.
Рабочая конфигурация vps chaining. VPS Chaining-протестировано
клиент 1 ================== vps1 ==================== vps2
1.1.1.1 ================== 2.2.2.2 ================== 3.3.3.3
10.9.0.2 ========== >>> 10.9.0.1
====================== 10.8.0.2 ============> 10.8.0.1
Изменить iptables / route / rule в vps1
iptables -t nat -D POSTROUTING -s 10.9.0.0/24 ! -d 10.9.0.0/24 -j SNAT --to-source 2.2.2.2
iptables -A FORWARD -i tun0 -o tun1 -j ACCEPT
iptables -A FORWARD -i tun1 -o tun0 -j ACCEPT
iptables -A FORWARD -d 10.9.0.0/24 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A POSTROUTING -s 10.9.0.0/24 -j SNAT --to-source 10.8.0.2
ip route add default via 10.8.0.2 table 120
ip rule add from 10.9.0.0/24 table 120
Отредактируйте файл Openvpn server.conf на vps1
nano /etc/openvpn/server/server.conf
push "route 10.8.0.0 255.255.255.0"
route 10.8.0.0 255.255.255.0