PPTP airos/ca: Diferència entre les revisions
De Guifi.net - Wiki Català
| (Hi ha 11 revisions intermèdies sense mostrar fetes per 3 usuaris) | |||
| Línia 1: | Línia 1: | ||
(Aquest tutorial serveix per a firms standards a partir de la versió XM5.x ) | (Aquest tutorial serveix per a firms standards a partir de la versió XM5.x ) | ||
| − | Hem d'editar 1 arxiu, i crear-ne | + | 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 [http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe] 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ó. | ||
| − | |||
<pre> | <pre> | ||
| − | + | cat<<EOT >> /tmp/system.cfg | |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | guifibages.usuari=USUARI | |
| − | + | guifibages.password=PASSWORD | |
| − | + | guifibages.status=enabled | |
| + | guifibages.serverip=IP_SERVER | ||
| + | EOT | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
</pre> | </pre> | ||
| − | ' | + | Seguidament creem un script que s'encarregarà de llegir la configuració i aixecar el túnel |
<pre> | <pre> | ||
| + | cat<<EOT >>/etc/persistent/tunel | ||
#!/bin/sh | #!/bin/sh | ||
cfg="/tmp/system.cfg" | cfg="/tmp/system.cfg" | ||
| − | pptp=`cat $cfg |grep | + | pptp=\`cat \$cfg |grep guifibages.status=enabled\` |
| − | if [ ! -z $pptp ] | + | if [ ! -z \$pptp ] |
then | then | ||
logger -t poststart "PPTP Enabled" | logger -t poststart "PPTP Enabled" | ||
logger -t poststart "Configuring PPPd" | logger -t poststart "Configuring PPPd" | ||
| − | user=`cat $cfg | grep | + | user=\`cat \$cfg | grep guifibages.usuari= |sed s/guifibages.usuari=//\` |
| − | pass=`cat $cfg | grep | + | pass=\`cat \$cfg | grep guifibages.password= |sed s/guifibages.password=//\` |
| − | serverIP=`cat $cfg | grep | + | 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/chap-secrets | |
| − | + | ||
| − | echo "\"$user\" * \"$pass\"" > /etc/ppp/pap-secrets | + | |
| − | echo "\"$user\" * \"$pass\"" > /etc/ppp/chap-secrets | + | |
cat << EOF > /etc/ppp/options.pptp | cat << EOF > /etc/ppp/options.pptp | ||
| − | lock noauth nobsdcomp nodeflate persist holdoff 5 | + | lock |
| + | noauth | ||
| + | nobsdcomp | ||
| + | nodeflate | ||
| + | persist | ||
| + | holdoff 5 | ||
| + | +ipv6 ipv6cp-use-ipaddr | ||
| + | ipv6 , | ||
| + | mtu 1450 | ||
| + | mru 1450 | ||
EOF | EOF | ||
| − | + | ||
mkdir -p /etc/ppp/peers 2> /dev/null | mkdir -p /etc/ppp/peers 2> /dev/null | ||
cat << EOF > /etc/ppp/peers/pptp | cat << EOF > /etc/ppp/peers/pptp | ||
| − | pty "pptp $serverIP --nolaunchpppd" | + | pty "pptp \$serverIP --nolaunchpppd" |
| − | name $user | + | name \$user |
defaultroute | defaultroute | ||
remotename PPTP | remotename PPTP | ||
| Línia 64: | Línia 60: | ||
logger -t poststart "Setting up gateway" | logger -t poststart "Setting up gateway" | ||
| − | + | route add -host \$serverIP gw \$wangw | |
| − | route add -host $serverIP gw $wangw | + | route add -net 10.0.0.0/8 gw \$wangw |
| − | route add -net 10.0.0.0/8 gw $wangw | + | #cp /etc/persistent/ip* /etc/ppp/ |
| − | 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" | logger -t poststart "Calling PPTP server" | ||
/sbin/pppd call pptp | /sbin/pppd call pptp | ||
| − | echo "$?" | + | 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 | fi | ||
| + | EOT | ||
| + | |||
</pre> | </pre> | ||
| + | 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 | ||
| − | |||
<pre> | <pre> | ||
| + | cat<<EOT >> /etc/persistent/rc.poststart | ||
#!/bin/sh | #!/bin/sh | ||
| − | + | echo '/sbin/ip route del default dev ath0' >>/etc/ppp/ip-up | |
| − | + | sh /etc/persistent/tunel | |
| − | + | iptables -t nat -A POSTROUTING -s 192.168.0.0/16 -j MASQUERADE | |
| − | + | EOT | |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
</pre> | </pre> | ||
| − | + | Ens queda per acabar donar permisos +x a tunel i ja podem reiniciar. També hem de grabar la configuració des del directori | |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
<pre> | <pre> | ||
| − | chmod +x | + | chmod +x /etc/persistent/tunel /etc/persistent/rc.poststart |
cfgmtd -w -p /etc/ | cfgmtd -w -p /etc/ | ||
</pre> | </pre> | ||
Revisió de 18:53, 1 ago 2016
(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 ,
mtu 1450
mru 1450
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 echo '/sbin/ip route del default dev ath0' >>/etc/ppp/ip-up sh /etc/persistent/tunel iptables -t nat -A POSTROUTING -s 192.168.0.0/16 -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!