1

Add original scripts

This commit is contained in:
eleksir
2016-09-04 22:20:40 +03:00
commit 8e3af042d2
128 changed files with 19003 additions and 0 deletions

180
vpn_pptp.sh Executable file
View File

@@ -0,0 +1,180 @@
#!/bin/sh
PPTPD=/usr/sbin/pptpd
PIDFILE="/var/run/pptpd.pid"
PPTPD_CONF="/etc/ppp/pptpd.conf"
OPTIONS_PPTPD="/etc/ppp/options.pptpd"
VPN_CONF="/etc/config/vpn.conf"
DBG="nodebug"
if [ "x$2" == "xdebug" ]; then
DBG="debug"
fi
init_pptp_modules()
{
/bin/echo "init insmod and mknod"
[ -c /dev/ppp ] || /bin/mknod --mode=644 /dev/ppp c 108 0
[ -d /etc/config/ppp ] || mkdir -p /etc/config/ppp
[ -L /etc/ppp ] || /bin/ln -sf /etc/config/ppp /etc/ppp
/bin/echo "1" > /proc/sys/net/ipv4/ip_forward
[ -L /etc/ppp/ip-up ] || /bin/ln -sf /sbin/nasutil /etc/ppp/ip-up
[ -L /etc/ppp/ip-down ] || /bin/ln -sf /sbin/nasutil /etc/ppp/ip-down
[ -L /usr/lib/libsmbpw.so ] || /bin/ln -sf /usr/lib/libsmbpw.1.3.so /usr/lib/libsmbpw.so
/sbin/lsmod | grep ppp_generic 1>>/dev/null 2>>/dev/null
if [ $? != 0 ]; then
/bin/echo "insmod pptp and pppd modules"
for i in sha1_generic.ko arc4.ko ecb.ko slhc.ko crc-ccitt.ko ppp_generic.ko ppp_async.ko ppp_mppe.ko \
bsd_comp.ko ppp_deflate.ko
do
[ ! -f /lib/modules/others/vpn/$i ] || /sbin/insmod /lib/modules/others/vpn/$i
done
fi
}
init_iptable_modules()
{
[ -L /usr/lib/libxtables.so.7 ] || /bin/ln -sf /usr/lib/libxtables.so.7.0.0 /usr/lib/libxtables.so.7
[ -L /usr/lib/libxtables.so ] || /bin/ln -sf /usr/lib/libxtables.so.7.0.0 /usr/lib/libxtables.so
[ -L /usr/lib/libip4tc.so.0 ] || /bin/ln -sf /usr/lib/libip4tc.so.0.0.0 /usr/lib/libip4tc.so.0
[ -L /usr/lib/libip4tc.so ] || /bin/ln -sf /usr/lib/libip4tc.so.0.0.0 /usr/lib/libip4tc.so
[ -L /usr/lib/libip6tc.so.0 ] || /bin/ln -sf /usr/lib/libip6tc.so.0.0.0 /usr/lib/libip6tc.so.0
[ -L /usr/lib/libip6tc.so ] || /bin/ln -sf /usr/lib/libip6tc.so.0.0.0 /usr/lib/libip6tc.so
/sbin/lsmod | grep x_tables 1>>/dev/null 2>>/dev/null
if [ $? != 0 ]; then
/bin/echo "insmod iptable modules"
for i in x_tables.ko nf_conntrack.ko xt_tcpudp.ko nf_defrag_ipv4.ko nf_conntrack_ipv4.ko nf_nat.ko \
ip_tables.ko iptable_nat.ko iptable_filter.ko ipt_MASQUERADE.ko ipt_REDIRECT.ko
do
[ ! -f /lib/modules/others/vpn/$i ] || /sbin/insmod /lib/modules/others/vpn/$i
done
fi
}
remove_pptp_modules()
{
for i in ppp_deflate bsd_comp ppp_mppe ppp_async ppp_generic crc-ccitt slhc
do
/sbin/rmmod $i
done
}
remove_iptable_modules()
{
for i in ipt_REDIRECT ipt_MASQUERADE iptable_filter iptable_nat ip_tables nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 \
xt_tcpudp nf_conntrack x_tables
do
/sbin/rmmod $i
done
}
start()
{
if [ ! -f ${PPTPD} ]; then
/bin/echo "pptpd is not exit."
exit 1
fi
if [ ! -f /usr/sbin/pppd ]; then
/bin/echo "pppd is not exit."
exit 1
fi
if [ ! -L /etc/rcK.d/K47vpn_pptp ]; then
/bin/ln -sf ../init.d/vpn_pptp.sh /etc/rcK.d/K47vpn_pptp
fi
if [ -f ${PIDFILE} ]; then
/bin/echo "pptpd is aleady run."
exit 1
fi
if [ `/sbin/getcfg "PPTP" "Enable" -u -d "FALSE" -f "${VPN_CONF}"` = "TRUE" ]; then
/bin/echo "pptpd start."
init_pptp_modules
init_iptable_modules
/sbin/vpn_util init_pptp ${DBG}
/sbin/daemon_mgr pptpd start "${PPTPD} -c ${PPTPD_CONF} -o ${OPTIONS_PPTPD} -p ${PIDFILE}"
LOCALIP=`grep "^localip" ${PPTPD_CONF} | cut -d' ' -f 2`
INTERFACE=`grep "^bcrelay" ${PPTPD_CONF} | cut -d' ' -f 2`
/bin/echo "LOCALIP = ${LOCALIP} INTERFACE = ${INTERFACE}"
/sbin/iptables -t nat -A POSTROUTING -s ${LOCALIP}/24 -o ${INTERFACE} -j MASQUERADE
else
/bin/echo "pptpd is disabled."
fi
}
stop()
{
/bin/echo "pptpd stop."
LOCALIP=`grep "^localip" ${PPTPD_CONF} | cut -d' ' -f 2`
INTERFACE=`grep "^bcrelay" ${PPTPD_CONF} | cut -d' ' -f 2`
/bin/echo "LOCALIP = ${LOCALIP} INTERFACE = ${INTERFACE}"
/sbin/iptables -t nat -D POSTROUTING -s ${LOCALIP}/24 -o ${INTERFACE} -j MASQUERADE
/bin/kill -9 `/bin/pidof pppd` 1>>/dev/null 2>&1
/bin/kill -9 `/bin/pidof bcrelay` 1>>/dev/null 2>&1
/sbin/daemon_mgr pptpd stop "${PPTPD} -c ${PPTPD_CONF} -o ${OPTIONS_PPTPD} -p ${PIDFILE}"
/bin/kill -9 `/bin/cat ${PIDFILE}` 1>>/dev/null 2>&1
/bin/rm -f ${PIDFILE} 1>>/dev/null 2>&1
/bin/rm -f /var/log/pptp_online_user 1>>/dev/null 2>&1
}
reload()
{
if [ `/sbin/getcfg "PPTP" "Enable" -u -d "FALSE" -f "${VPN_CONF}"` = "FALSE" ]; then
/bin/echo "pptpd is disabled."
exit 1;
fi
/bin/echo "pptpd stop."
/bin/kill -9 `/bin/pidof bcrelay` 1>>/dev/null 2>&1
/sbin/daemon_mgr pptpd stop "${PPTPD} -c ${PPTPD_CONF} -o ${OPTIONS_PPTPD} -p ${PIDFILE}"
/bin/kill -9 `/bin/cat ${PIDFILE}` 1>>/dev/null 2>&1
/bin/rm -f ${PIDFILE} 1>>/dev/null 2>&1
LOCALIP=`grep "^localip" ${PPTPD_CONF} | cut -d' ' -f 2`
INTERFACE=`grep "^bcrelay" ${PPTPD_CONF} | cut -d' ' -f 2`
/bin/echo "LOCALIP = ${LOCALIP} INTERFACE = ${INTERFACE}"
/sbin/iptables -t nat -D POSTROUTING -s ${LOCALIP}/24 -o ${INTERFACE} -j MASQUERADE
/sbin/vpn_util init_pptp ${DBG}
/sbin/daemon_mgr pptpd start "${PPTPD} -c ${PPTPD_CONF} -o ${OPTIONS_PPTPD} -p ${PIDFILE}"
LOCALIP=`grep "^localip" ${PPTPD_CONF} | cut -d' ' -f 2`
INTERFACE=`grep "^bcrelay" ${PPTPD_CONF} | cut -d' ' -f 2`
/bin/echo "LOCALIP = ${LOCALIP} INTERFACE = ${INTERFACE}"
/sbin/iptables -t nat -A POSTROUTING -s ${LOCALIP}/24 -o ${INTERFACE} -j MASQUERADE
}
restart()
{
stop
sleep 1
start
}
case "$1" in
start)
start
;;
stop)
stop
remove_pptp_modules
;;
restart)
restart
;;
init)
/bin/echo "pptpd init."
init_pptp_modules
init_iptable_modules
/sbin/vpn_util init_pptp
;;
reload)
reload
;;
*)
echo "Usage: /etc/init.d/$0 {start|stop|restart|reload}"
exit 1
esac
exit 0