PPTP airos/ca: Diferència entre les revisions
De Guifi.net - Wiki Català
| Línia 32: | Línia 32: | ||
pass=\`cat $cfg | grep guifibages.password= |sed s/guifibages.password=//\` | pass=\`cat $cfg | grep guifibages.password= |sed s/guifibages.password=//\` | ||
serverIP=\`cat $cfg | grep guifibages.serverip= |sed s/guifibages.serverip=//\` | serverIP=\`cat $cfg | grep guifibages.serverip= |sed s/guifibages.serverip=//\` | ||
| − | wangw=\`cat $cfg | grep route.1.gateway= |sed s/route.1.gateway=//\` | + | wangw=\`cat $cfg | grep route.1.gateway= |sed s/route.1.gateway=//\` |
| − | echo "\"$user\" * \"$pass\"" > /etc/ppp/pap-secrets | + | echo "\"$user\" * \"$pass\"" > /etc/ppp/pap-secrets |
| − | echo "\"$user\" * \"$pass\"" > /etc/ppp/chap-secrets | + | echo "\"$user\" * \"$pass\"" > /etc/ppp/chap-secrets |
| + | |||
| + | cat << EOF > /etc/ppp/options.pptp | ||
| + | lock | ||
| + | noauth | ||
| + | nobsdcomp | ||
| + | nodeflate | ||
| + | persist | ||
| + | holdoff 5 | ||
| + | +ipv6 ipv6cp-use-ipaddr | ||
| + | ipv6 , | ||
| + | EOF | ||
| − | + | mkdir -p /etc/ppp/peers 2> /dev/null | |
| − | + | cat << EOF > /etc/ppp/peers/pptp | |
| − | + | pty "pptp $serverIP --nolaunchpppd" | |
| − | + | name $user | |
| − | + | defaultroute | |
| − | + | remotename PPTP | |
| − | + | file /etc/ppp/options.pptp | |
| − | + | ipparam pptp | |
| − | + | EOF | |
| − | + | ||
| − | + | logger -t poststart "Setting up gateway" | |
| − | mkdir -p /etc/ppp/peers 2> /dev/null | + | route add -host $serverIP gw $wangw |
| − | cat << EOF > /etc/ppp/peers/pptp | + | route add -net 10.0.0.0/8 gw $wangw |
| − | pty "pptp $serverIP --nolaunchpppd" | + | #cp /etc/persistent/ip* /etc/ppp/ |
| − | name $user | + | logger -t poststart "Enabling IPV6 on all interfaces" |
| − | defaultroute | + | sysctl -w net.ipv6.conf.all.disable_ipv6=0 |
| − | remotename PPTP | + | logger -t poststart "Calling PPTP server" |
| − | file /etc/ppp/options.pptp | + | /sbin/pppd call pptp |
| − | ipparam pptp | + | echo "$?" |
| − | EOF | + | sleep 5 |
| − | + | /sbin/ip -6 route del default ath0 | |
| − | logger -t poststart "Setting up gateway" | + | /sbin/ip -6 route add default dev ppp0 |
| − | route add -host $serverIP gw $wangw | + | /sbin/ip route del default |
| − | route add -net 10.0.0.0/8 gw $wangw | + | /sbin/ip route add default dev ppp0 |
| − | #cp /etc/persistent/ip* /etc/ppp/ | + | fi |
| − | logger -t poststart "Enabling IPV6 on all interfaces" | + | |
| − | sysctl -w net.ipv6.conf.all.disable_ipv6=0 | + | |
| − | logger -t poststart "Calling PPTP server" | + | |
| − | /sbin/pppd call pptp | + | |
| − | echo "$?" | + | |
| − | sleep 5 | + | |
| − | /sbin/ip -6 route del default ath0 | + | |
| − | /sbin/ip -6 route add default dev ppp0 | + | |
| − | /sbin/ip route del default | + | |
| − | /sbin/ip route add default dev ppp0 | + | |
| − | fi | + | |
EOT | EOT | ||
Revisió de 10:27, 28 maig 2015
(Aquest tutorial serveix per a firms standards a partir de la versió XM5.x )
Hem d'editar 1 arxiu, i crear-ne 2 de diferents, per fer-ho només heu de connectar-vos per ssh a l'antena utilitzant un terminal en Linux o Mac OS o bé el Putty [1] si ho feu des de Windows .
Primer de tot afegim les dades de la connexió al fitxer /tmp/system.cfg. Penseu a modificar l'USUARI, PASSWORD i IP_SERVER amb les dades de la vostra connexió.
cat<<EOT >> /tmp/system.cfg guifibages.usuari=USUARI guifibages.password=PASSWORD guifibages.status=enabled guifibages.serverip=IP_SERVER EOT
Seguidament creem un script que s'encarregarà de llegir la configuració i aixecar el túnel
cat<<EOT >>/etc/persistent/tunel
#!/bin/sh
cfg="/tmp/system.cfg"
pptp=\`cat $cfg |grep guifibages.status=enabled\`
if [ ! -z $pptp ]
then
logger -t poststart "PPTP Enabled"
logger -t poststart "Configuring PPPd"
user=\`cat $cfg | grep guifibages.usuari= |sed s/guifibages.usuari=//\`
pass=\`cat $cfg | grep guifibages.password= |sed s/guifibages.password=//\`
serverIP=\`cat $cfg | grep guifibages.serverip= |sed s/guifibages.serverip=//\`
wangw=\`cat $cfg | grep route.1.gateway= |sed s/route.1.gateway=//\`
echo "\"$user\" * \"$pass\"" > /etc/ppp/pap-secrets
echo "\"$user\" * \"$pass\"" > /etc/ppp/chap-secrets
cat << EOF > /etc/ppp/options.pptp
lock
noauth
nobsdcomp
nodeflate
persist
holdoff 5
+ipv6 ipv6cp-use-ipaddr
ipv6 ,
EOF
mkdir -p /etc/ppp/peers 2> /dev/null
cat << EOF > /etc/ppp/peers/pptp
pty "pptp $serverIP --nolaunchpppd"
name $user
defaultroute
remotename PPTP
file /etc/ppp/options.pptp
ipparam pptp
EOF
logger -t poststart "Setting up gateway"
route add -host $serverIP gw $wangw
route add -net 10.0.0.0/8 gw $wangw
#cp /etc/persistent/ip* /etc/ppp/
logger -t poststart "Enabling IPV6 on all interfaces"
sysctl -w net.ipv6.conf.all.disable_ipv6=0
logger -t poststart "Calling PPTP server"
/sbin/pppd call pptp
echo "$?"
sleep 5
/sbin/ip -6 route del default ath0
/sbin/ip -6 route add default dev ppp0
/sbin/ip route del default
/sbin/ip route add default dev ppp0
fi
EOT
Finalment, afegim dues lines al fitxer /etc/persistent/rc.poststart perquè, al arrencar l'antena, aixequi el tunel, i la segona que permet accedir a internet des de l'interficie LAN, fent un MASQUERADING de la LAN
cat<<EOT >> /etc/persistent/rc.poststart #!/bin/sh sh /etc/persistent/tunel iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE EOT
Ens queda per acabar donar permisos +x a tunel i ja podem reiniciar. També hem de grabar la configuració des del directori
chmod +x /etc/persistent/tunel /etc/persistent/rc.poststart cfgmtd -w -p /etc/
Sort!