Español  

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
 
                                                                                                                                    
 
                                                                                                                                    
        cat << EOF > /etc/ppp/options.pptp                                                                                       
+
         mkdir -p /etc/ppp/peers 2> /dev/null
lock                                                                                                                             
+
         cat << EOF > /etc/ppp/peers/pptp
noauth                                                                                                                           
+
pty "pptp $serverIP --nolaunchpppd"
nobsdcomp                                                                                                                       
+
name $user
nodeflate                                                                                                                       
+
defaultroute
persist                                                                                                                         
+
remotename PPTP
holdoff 5                                                                                                                       
+
file /etc/ppp/options.pptp
+ipv6 ipv6cp-use-ipaddr                                                                                                         
+
ipparam pptp
ipv6 ,                                                                                                                           
+
EOF
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 09: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!

Eines de l'usuari