Eu tenho muitos túneis ou servidores VPN pptp para conectar e o Linux atribuiria ppp0 para a primeira conexão, ppp1 para a segunda conexão e assim por diante. Preciso que as interfaces sejam corrigidas para que eu possa encaminhar a conexão corretamente via iptables. Existe uma maneira de corrigir o nome da interface para cada túnel?
Responder1
Não é assim que isso é feito. A maneira de fazer isso está especificada emo sempre útil wiki do Arch Linux, sob o título Split Tunneling based on port by /etc/ppp/ip-up.d
.
Deixe-me explicar. Todos os arquivos /etc/ppp/ip-up.d
são executados sempre que uma pptp
conexão é estabelecida, e o arquivo 01-routebyport.sh
recebe os seguintes argumentos, conforme a página da Web acima:
# This script is called with the following arguments:
# Arg Name
# $1 Interface name
# $2 The tty
# $3 The link speed
# $4 Local IP number
# $5 Peer IP number
# $6 Optional ``ipparam'' value foo
Assim, uma vez que você recebeu o número IP do pareo nome da interface, você pode construir suas iptables
regras por meio de case
:
case $5 in:
1.1.1.1)
iptables -i $1 -j DROP
8.8.8.8)
iptables -i$1-j ACCEPT
e assim por diante.