CentOS support; copying (adduser) bugfixes; adduser continuation fix
This commit is contained in:
parent
f2e6b6728d
commit
e215363946
@ -45,6 +45,9 @@ do
|
||||
if [[ $# -gt 0 ]]; then
|
||||
# exit, if script is called with params
|
||||
ANSUSER=$NOTADDUSER
|
||||
else
|
||||
read -p "Would you want to add another user? [no] " ANSUSER
|
||||
: ${ANSUSER:=$NOTADDUSER}
|
||||
fi
|
||||
continue
|
||||
else
|
||||
@ -65,28 +68,28 @@ do
|
||||
|
||||
mkdir -p "$STARTDIR/$LOGIN"
|
||||
DISTFILE=$STARTDIR/$LOGIN/setup.sh
|
||||
cp -rf setup.sh.dist "$DISTFILE"
|
||||
cp -rf $DIR/setup.sh.dist "$DISTFILE"
|
||||
sed -i -e "s@_PSK_@$PSK@g" "$DISTFILE"
|
||||
sed -i -e "s@_SERVERLOCALIP_@$LOCALPREFIX.0.1@g" "$DISTFILE"
|
||||
|
||||
DISTFILE=$STARTDIR/$LOGIN/ipsec.conf
|
||||
cp -rf ipsec.conf.dist "$DISTFILE"
|
||||
cp -rf $DIR/ipsec.conf.dist "$DISTFILE"
|
||||
sed -i -e "s@LEFTIP@%any@g" "$DISTFILE"
|
||||
sed -i -e "s@LEFTPORT@%any@g" "$DISTFILE"
|
||||
sed -i -e "s@RIGHTIP@$IP@g" "$DISTFILE"
|
||||
sed -i -e "s@RIGHTPORT@1701@g" "$DISTFILE"
|
||||
|
||||
DISTFILE=$STARTDIR/$LOGIN/xl2tpd.conf
|
||||
cp -rf client-xl2tpd.conf.dist "$DISTFILE"
|
||||
cp -rf $DIR/client-xl2tpd.conf.dist "$DISTFILE"
|
||||
sed -i -e "s@REMOTEIP@$IP@g" "$DISTFILE"
|
||||
|
||||
DISTFILE=$STARTDIR/$LOGIN/options.xl2tpd
|
||||
cp -rf client-options.xl2tpd.dist "$DISTFILE"
|
||||
cp -rf $DIR/client-options.xl2tpd.dist "$DISTFILE"
|
||||
sed -i -e "s@_LOGIN_@$LOGIN@g" "$DISTFILE"
|
||||
sed -i -e "s@_PASSWORD_@$PASSWORD@g" "$DISTFILE"
|
||||
|
||||
cp -rf connect.sh.dist "$STARTDIR/$LOGIN/connect.sh"
|
||||
cp -rf disconnect.sh.dist "$STARTDIR/$LOGIN/disconnect.sh"
|
||||
cp -rf $DIR/connect.sh.dist "$STARTDIR/$LOGIN/connect.sh"
|
||||
cp -rf $DIR/disconnect.sh.dist "$STARTDIR/$LOGIN/disconnect.sh"
|
||||
|
||||
chmod +x "$STARTDIR/$LOGIN/setup.sh" "$STARTDIR/$LOGIN/connect.sh" "$STARTDIR/$LOGIN/disconnect.sh"
|
||||
|
||||
|
||||
16
ipsec/env.sh
16
ipsec/env.sh
@ -1,5 +1,16 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
DEBIANPLATFORM="DEBIAN"
|
||||
CENTOSPLATFORM="CENTOS"
|
||||
|
||||
if [[ -e /etc/version ]]; then
|
||||
PLATFORM=$DEBIANPLATFORM
|
||||
fi
|
||||
|
||||
if [[ -e /etc/issue ]]; then
|
||||
PLATFORM=$CENTOSPLATFORM
|
||||
fi
|
||||
|
||||
SYSCTLCONFIG=/etc/sysctl.conf
|
||||
IPSECCONFIG=/etc/ipsec.conf
|
||||
XL2TPDCONFIG=/etc/xl2tpd/xl2tpd.conf
|
||||
@ -9,6 +20,11 @@ IPTABLES=/etc/iptables.rules
|
||||
SECRETSFILE=/etc/ipsec.secrets
|
||||
CHECKSERVER=/etc/xl2tpd/checkserver.sh
|
||||
|
||||
if [ "$PLATFORM" == "$CENTOSPLATFORM" ]; then
|
||||
SECRETSFILE=/etc/strongswan/ipsec.secrets
|
||||
IPSECCONFIG=/etc/strongswan/ipsec.conf
|
||||
fi
|
||||
|
||||
LOCALPREFIX="172.18"
|
||||
LOCALIP="$LOCALPREFIX.0.0"
|
||||
LOCALMASK="/24"
|
||||
|
||||
@ -10,7 +10,13 @@ fi
|
||||
|
||||
echo
|
||||
echo "Installing strongSwan and xl2tp server..."
|
||||
apt-get -y install strongswan xl2tpd cron iptables procps net-tools
|
||||
if [ "$PLATFORM" == "$DEBIANPLATFORM" ]; then
|
||||
apt-get -y install strongswan xl2tpd cron iptables procps net-tools
|
||||
fi
|
||||
if [ "$PLATFORM" == "$CENTOSPLATFORM" ]; then
|
||||
yum -y install epel-release
|
||||
yum -y install strongswan xl2tpd cronie iptables-services procps net-tools
|
||||
fi
|
||||
|
||||
echo
|
||||
echo "Configuring routing..."
|
||||
|
||||
@ -3,6 +3,13 @@
|
||||
DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
|
||||
source $DIR/env.sh
|
||||
|
||||
if [ "$PLATFORM" == "$CENTOSPLATFORM" ]; then
|
||||
systemctl enable iptables
|
||||
systemctl stop firewalld
|
||||
systemctl disable firewalld
|
||||
systemctl start iptables
|
||||
fi
|
||||
|
||||
COMMENT=" -m comment --comment \"IPSEC\""
|
||||
|
||||
if [[ ! -e $IPTABLES ]]; then
|
||||
@ -28,7 +35,7 @@ done
|
||||
|
||||
# detect default gateway interface
|
||||
echo "Found next network interfaces:"
|
||||
ifconfig -a | sed 's/[ \t].*//;/^\(lo\|\)$/d'
|
||||
ifconfig -a | sed 's/[: \t].*//;/^\(lo\|\)$/d'
|
||||
echo
|
||||
GATE=$(route | grep '^default' | grep -o '[^ ]*$')
|
||||
read -p "Enter your external network interface: " -i $GATE -e GATE
|
||||
|
||||
@ -30,4 +30,9 @@ sed -i -e "/net.ipv4.icmp_ignore_bogus_error_responses/d" $SYSCTLCONFIG
|
||||
echo "net.ipv4.icmp_ignore_bogus_error_responses=1" >> $SYSCTLCONFIG
|
||||
|
||||
sysctl -p
|
||||
service procps restart
|
||||
if [ "$PLATFORM" == "$DEBIANPLATFORM" ]; then
|
||||
service procps restart
|
||||
fi
|
||||
if [ "$PLATFORM" == "$CENTOSPLATFORM" ]; then
|
||||
service network restart
|
||||
fi
|
||||
|
||||
@ -1,5 +1,16 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
DEBIANPLATFORM="DEBIAN"
|
||||
CENTOSPLATFORM="CENTOS"
|
||||
|
||||
if [[ -e /etc/version ]]; then
|
||||
PLATFORM=$DEBIANPLATFORM
|
||||
fi
|
||||
|
||||
if [[ -e /etc/issue ]]; then
|
||||
PLATFORM=$CENTOSPLATFORM
|
||||
fi
|
||||
|
||||
SYSCTLCONFIG=/etc/sysctl.conf
|
||||
OPENVPNDIR=/etc/openvpn
|
||||
OPENVPNCONFIG=$OPENVPNDIR/openvpn-server.conf
|
||||
@ -8,6 +19,10 @@ IPTABLES=/etc/iptables.rules
|
||||
NOBODYGROUP=nogroup
|
||||
CHECKSERVER=$OPENVPNDIR/checkserver.sh
|
||||
|
||||
if [ "$PLATFORM" == "$CENTOSPLATFORM" ]; then
|
||||
NOBODYGROUP=nobody
|
||||
fi
|
||||
|
||||
LOCALPREFIX="172.20"
|
||||
LOCALIP="$LOCALPREFIX.0.0"
|
||||
LOCALMASK="/24"
|
||||
|
||||
@ -12,7 +12,13 @@ fi
|
||||
|
||||
echo
|
||||
echo "Installing OpenVPN..."
|
||||
apt-get -y install openvpn easy-rsa cron iptables procps net-tools
|
||||
if [ "$PLATFORM" == "$DEBIANPLATFORM" ]; then
|
||||
apt-get -y install openvpn easy-rsa cron iptables procps net-tools
|
||||
fi
|
||||
if [ "$PLATFORM" == "$CENTOSPLATFORM" ]; then
|
||||
yum -y install epel-release
|
||||
yum -y install openvpn easy-rsa cronie iptables-services procps net-tools
|
||||
fi
|
||||
|
||||
echo
|
||||
echo "Configuring routing..."
|
||||
@ -40,7 +46,13 @@ cp -n /etc/openvpn/easy-rsa/openssl-1.0.0.cnf /etc/openvpn/easy-rsa/openssl.cnf
|
||||
|
||||
echo
|
||||
echo "Creating server keys..."
|
||||
make-cadir $CADIR
|
||||
if [ "$PLATFORM" == "$CENTOSPLATFORM" ]; then
|
||||
mkdir -p "$CADIR/keys"
|
||||
cp -rf /usr/share/easy-rsa/2.0/* $CADIR
|
||||
fi
|
||||
if [ "$PLATFORM" == "$DEBIANPLATFORM" ]; then
|
||||
make-cadir $CADIR
|
||||
fi
|
||||
cd $CADIR
|
||||
source ./vars
|
||||
./clean-all
|
||||
|
||||
@ -1,8 +1,15 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
|
||||
source $DIR/env.sh
|
||||
|
||||
if [ "$PLATFORM" == "$CENTOSPLATFORM" ]; then
|
||||
systemctl enable iptables
|
||||
systemctl stop firewalld
|
||||
systemctl disable firewalld
|
||||
systemctl start iptables
|
||||
fi
|
||||
|
||||
COMMENT=" -m comment --comment \"OPENVPN\""
|
||||
|
||||
if [[ ! -e $IPTABLES ]]; then
|
||||
@ -28,7 +35,7 @@ done
|
||||
|
||||
# detect default gateway interface
|
||||
echo "Found next network interfaces:"
|
||||
ifconfig -a | sed 's/[ \t].*//;/^\(lo\|\)$/d'
|
||||
ifconfig -a | sed 's/[: \t].*//;/^\(lo\|\)$/d'
|
||||
echo
|
||||
GATE=$(route | grep '^default' | grep -o '[^ ]*$')
|
||||
read -p "Enter your external network interface: " -i $GATE -e GATE
|
||||
|
||||
@ -30,4 +30,9 @@ sed -i -e "/net.ipv4.icmp_ignore_bogus_error_responses/d" $SYSCTLCONFIG
|
||||
echo "net.ipv4.icmp_ignore_bogus_error_responses=1" >> $SYSCTLCONFIG
|
||||
|
||||
sysctl -p
|
||||
service procps restart
|
||||
if [ "$PLATFORM" == "$DEBIANPLATFORM" ]; then
|
||||
service procps restart
|
||||
fi
|
||||
if [ "$PLATFORM" == "$CENTOSPLATFORM" ]; then
|
||||
service network restart
|
||||
fi
|
||||
|
||||
@ -45,6 +45,9 @@ do
|
||||
if [[ $# -gt 0 ]]; then
|
||||
# exit, if script is called with params
|
||||
ANSUSER=$NOTADDUSER
|
||||
else
|
||||
read -p "Would you want to add another user? [no] " ANSUSER
|
||||
: ${ANSUSER:=$NOTADDUSER}
|
||||
fi
|
||||
continue
|
||||
else
|
||||
@ -63,7 +66,7 @@ do
|
||||
|
||||
mkdir -p "$STARTDIR/$LOGIN"
|
||||
DISTFILE=$STARTDIR/$LOGIN/setup.sh
|
||||
cp -rf setup.sh.dist "$DISTFILE"
|
||||
cp -rf $DIR/setup.sh.dist "$DISTFILE"
|
||||
sed -i -e "s@_LOGIN_@$LOGIN@g" "$DISTFILE"
|
||||
sed -i -e "s@_PASSWORD_@$PASSWORD@g" "$DISTFILE"
|
||||
sed -i -e "s@_REMOTEIP_@$IP@g" "$DISTFILE"
|
||||
|
||||
11
pptp/env.sh
11
pptp/env.sh
@ -1,5 +1,16 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
DEBIANPLATFORM="DEBIAN"
|
||||
CENTOSPLATFORM="CENTOS"
|
||||
|
||||
if [[ -e /etc/version ]]; then
|
||||
PLATFORM=$DEBIANPLATFORM
|
||||
fi
|
||||
|
||||
if [[ -e /etc/issue ]]; then
|
||||
PLATFORM=$CENTOSPLATFORM
|
||||
fi
|
||||
|
||||
SYSCTLCONFIG=/etc/sysctl.conf
|
||||
PPTPDCONFIG=/etc/pptpd.conf
|
||||
PPTPOPTIONS=/etc/ppp/options.pptp
|
||||
|
||||
@ -10,7 +10,13 @@ fi
|
||||
|
||||
echo
|
||||
echo "Installing PPTP server..."
|
||||
apt-get -y install pptpd cron iptables procps net-tools
|
||||
if [ "$PLATFORM" == "$DEBIANPLATFORM" ]; then
|
||||
apt-get -y install pptpd cron iptables procps net-tools
|
||||
fi
|
||||
if [ "$PLATFORM" == "$CENTOSPLATFORM" ]; then
|
||||
yum -y install epel-release
|
||||
yum -y install ppp pptpd cronie iptables-services procps net-tools
|
||||
fi
|
||||
|
||||
ADDUSER="no"
|
||||
ANSUSER="yes"
|
||||
|
||||
@ -3,6 +3,13 @@
|
||||
DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
|
||||
source $DIR/env.sh
|
||||
|
||||
if [ "$PLATFORM" == "$CENTOSPLATFORM" ]; then
|
||||
systemctl enable iptables
|
||||
systemctl stop firewalld
|
||||
systemctl disable firewalld
|
||||
systemctl start iptables
|
||||
fi
|
||||
|
||||
COMMENT=" -m comment --comment \"PPTP\""
|
||||
|
||||
if [[ ! -e $IPTABLES ]]; then
|
||||
@ -28,7 +35,7 @@ done
|
||||
|
||||
# detect default gateway interface
|
||||
echo "Found next network interfaces:"
|
||||
ifconfig -a | sed 's/[ \t].*//;/^\(lo\|\)$/d'
|
||||
ifconfig -a | sed 's/[: \t].*//;/^\(lo\|\)$/d'
|
||||
echo
|
||||
GATE=$(route | grep '^default' | grep -o '[^ ]*$')
|
||||
read -p "Enter your external network interface: " -i $GATE -e GATE
|
||||
|
||||
@ -30,4 +30,10 @@ sed -i -e "/net.ipv4.icmp_ignore_bogus_error_responses/d" $SYSCTLCONFIG
|
||||
echo "net.ipv4.icmp_ignore_bogus_error_responses=1" >> $SYSCTLCONFIG
|
||||
|
||||
sysctl -p
|
||||
service procps restart
|
||||
if [ "$PLATFORM" == "$DEBIANPLATFORM" ]; then
|
||||
service procps restart
|
||||
fi
|
||||
if [ "$PLATFORM" == "$CENTOSPLATFORM" ]; then
|
||||
service network restart
|
||||
fi
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user