Uma VPN não seria mais apropriada? O OpenVPN é super simples de configurar. Aqui está uma amostra de configuração e alguns links para guiá-lo pelo processo de criação de certificados.
Basta configurar o intermediário para ser o host e os convidados podem discar e ainda se comunicar uns com os outros.
apt-get install openvpn
mkdir /etc/openvpn/easy-rsa
mkdir -p /etc/openvpn/ccd/client_server
touch /etc/openvpn/ipp.txt
cp /usr/share/doc/openvpn/examples/easy-rsa/2.0/* /etc/openvpn/easy-rsa
cd /etc/openvpn/easy-rsa
source ./vars
./clean-all
./build-ca
./build-key-server server
./build-dh
cd /etc/openvpn/easy-rsa/keys
openssl pkcs12 -export -out server.p12 -inkey server.key -in server.crt -certfile ca.crt
Em seguida, crie um novo arquivo /etc/openvpn/client_server.conf
e coloque o seguinte, alterando o SERVER_IP_ADDRESS
conforme apropriado
local SERVER_IP_ADDRESS
port 8443
proto udp
dev tun
ca /etc/openvpn/easy-rsa/keys/ca.crt
pkcs12 /etc/openvpn/easy-rsa/keys/server.p12
dh /etc/openvpn/easy-rsa/keys/dh2048.pem
ifconfig-pool-persist /etc/openvpn/ipp.txt
server 192.168.100.0 255.255.255.0
client-config-dir /etc/openvpn/ccd/client_server
ccd-exclusive
keepalive 10 120
comp-lzo
persist-key
persist-tun
status /var/log/openvpn-status.log
verb 3
reneg-sec 0
client-to-client
Em seguida, crie uma chave por usuário que se conectará e crie o arquivo de configuração no diretório ccd
./build-key-pkcs12 [email protected]
echo "ifconfig-push 192.168.100.2 255.255.255.0" > /etc/openvpn/ccd/client_server/[email protected]
O endereço IP DEVE ser adequado para uma sub-rede / 30 (veja link ), pois há apenas 2 endereços disponíveis (servidor e cliente) por conexão. Então, o seu próximo IP de cliente disponível seria 192.168.100.6 e assim por diante.
Agora você tem IPs estáticos por usuário conectado.
Em seguida, forneça o arquivo the [email protected]
para o usuário final e use o seguinte arquivo de configuração
client
dev tun
proto udp
remote SERVER_IP_ADDRESS 8443
pkcs12 [email protected]
resolv-retry infinite
nobind
ns-cert-type server
comp-lzo
verb 3
reneg-sec 0