#!/bin/bash # [ $(id -u) != "0" ] && { echo "Error: You must be root to run this script"; exit 1; } export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin ############################################################################ echo "##########################################################################" read -p "pptp_user: " NAME if [ -z $NAME ];then NAME=user fi read -p "pptp_passwd: " PASS if [ -z $PASS ];then p1=`cat /dev/urandom | tr -cd abcdefghjkmnpqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ0123456789 | head -c 4` p2=`cat /dev/urandom | tr -cd abcdefghjkmnpqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ0123456789 | head -c 4` PASS="$p1$p2" fi echo "##########################################################################" ########################################################################################### yum -y update yum -y install epel-release yum -y install firewalld ppp pptpd net-tools echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf sysctl -p cat >> /etc/ppp/chap-secrets <<END $NAME pptpd $PASS * END cat >/etc/pptpd.conf <<END option /etc/ppp/options.pptpd #logwtmp localip 192.168.2.1 remoteip 192.168.2.10-100 END cat >/etc/ppp/options.pptpd <<END name pptpd refuse-pap refuse-chap refuse-mschap require-mschap-v2 require-mppe-128 ms-dns 8.8.8.8 ms-dns 8.8.4.4 proxyarp lock nobsdcomp novj novjccomp nologfd END ens=`route | grep default | awk '{print $NF}'` systemctl restart firewalld systemctl enable firewalld firewall-cmd --set-default-zone=public firewall-cmd --add-interface=$ens firewall-cmd --add-port=22/tcp --permanent firewall-cmd --add-port=1723/tcp --permanent firewall-cmd --add-masquerade --permanent firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0 -i $ETH -p gre -j ACCEPT firewall-cmd --reload cat > /etc/ppp/ip-up.local << END /sbin/ifconfig $1 mtu 1400 END chmod +x /etc/ppp/ip-up.local systemctl restart pptpd systemctl enable pptpd ############################################################################################### ***_ip=`ifconfig $ens | grep "inet " | awk '{ print $2}'` clear echo "##########################################################################" echo "You can now connect to your ××× via your external IP: $***_ip" echo "Username: $NAME" echo "Password: $PASS" echo "##########################################################################"
转载于:https://blog.51cto.com/11545642/1965528