Sto provando a configurare un vecchio PC con Linux (CentOS) come punto di accesso a una VPN che ho in un'altra casa. Ho due interfacce Ethernet, quindi voglio usarne una per connettermi a Internet tramite il mio router, connettermi alla mia VPN e quindi condividere quella connessione VPN sulla mia seconda Ethernet. L'ip sul secondo dispositivo dovrebbe essere assegnato da DHCP.
Ho letto molti tutorial / post e sono stato in grado di condividere la mia semplice connessione Internet, con la mia VPN inattiva. Tuttavia, una volta avviata la VPN, indipendentemente dalle regole di iptables / route, sono bloccato senza Internet nel mio secondo dispositivo. Non ho idea di cosa sto facendo di sbagliato. Qualcuno potrebbe fornire qualche aiuto?
Ecco le mie configurazioni: - enp2s0: questo è collegato al mio router principale. - enp0s29f7u1: questo sarà collegato a un secondo dispositivo
enp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether bc:ee:7b:19:89:68 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.26/24 brd 192.168.1.255 scope global noprefixroute enp2s0
valid_lft forever preferred_lft forever
inet6 fe80::c25c:2c9d:4777:79fc/64 scope link noprefixroute
valid_lft forever preferred_lft forever
enp0s29f7u1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast stat e UP group default qlen 1000
link/ether 00:e0:4c:69:35:d0 brd ff:ff:ff:ff:ff:ff
inet 10.8.0.5/24 brd 10.8.0.255 scope global noprefixroute enp0s29f7u1
valid_lft forever preferred_lft forever
inet6 fe80::2e0:4cff:fe69:35d0/64 scope link
valid_lft forever preferred_lft forever
Una volta connesso alla mia VPN, c'è un'altra interfaccia, tun0:
tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN group default qlen 100
link/none
inet 10.8.0.2/24 brd 10.8.0.255 scope global tun0
valid_lft forever preferred_lft forever
inet6 fe80::2d75:64c0:6c21:c9d9/64 scope link flags 800
valid_lft forever preferred_lft forever
Il mio /etc/dhcp/dhcpd.conf ha le seguenti opzioni:
subnet 10.8.0.0 netmask 255.255.255.0 {
range 10.8.0.10 10.8.0.15;
option routers 10.8.0.5;
option domain-name-servers 8.8.8.8, 8.8.4.4;
}
Il secondo dispositivo sta ottenendo 10.8.0.11 come ip, quindi immagino che funzioni bene.
Ho aggiunto le seguenti regole usando iptables:
iptables -t nat -I POSTROUTING 1 -o tun0 -j MASQUERADE
iptables -I FORWARD 1 -i tun0 -o enp0s29f7u1 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -I FORWARD 1 -i enp0s29f7u1 -o tun0 -j ACCEPT
Informazioni aggiuntive:
Ho abilitato l'inoltro ip4:
/sbin/sysctl net.ipv4.ip_forward
ritornanet.ipv4.ip_forward = 1
Posso accedere a Internet con l'ip dal mio server VPN in un'altra casa come previsto. Tuttavia, posso farlo solo dal computer in cui sto impostando questa configurazione, non dal dispositivo collegato
enp0s29f7u1
.- Queste sono le rotte prima / dopo l'avvio di vpn.
PRIMA
ip route
default via 192.168.1.1 dev enp2s0 proto static metric 101
10.8.0.0/24 dev enp0s29f7u1 proto kernel scope link src 10.8.0.5 metric 100
DOPO
percorso ip
0.0.0.0/1 via 10.8.0.1 dev tun0
default via 192.168.1.1 dev enp2s0 proto static metric 101
10.8.0.0/24 dev tun0 proto kernel scope link src 10.8.0.2
10.8.0.0/24 dev enp0s29f7u1 proto kernel scope link src 10.8.0.5 metric 100
xx.xx.xx.xx via 192.168.1.1 dev enp2s0
128.0.0.0/1 via 10.8.0.1 dev tun0
192.168.1.0/24 dev enp2s0 proto kernel scope link src 192.168.1.26 metric 101
192.168.1.0/24 dev enp2s0 proto kernel scope link src 192.168.1.26 metric 101
Ho sostituito il mio IP pubblico del mio server VPN con xx.xx.xx.xx
Cosa mi sto perdendo qui?
EDIT: Per disperazione, ho provato a collegare le interfacce, anche se sapevo che non era una grande idea. Neanche ha funzionato.