-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgenuser.sh
More file actions
53 lines (53 loc) · 1.55 KB
/
Copy pathgenuser.sh
File metadata and controls
53 lines (53 loc) · 1.55 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#!/bin/bash
#
if [[ $EUID -ne 0 ]]; then
echo "Este script deve ser executado como sudo"
exit 1
fi
#
read -p "Digite o nome do usuário: " username
if [[ -z "$username" ]]; then
echo "Nenhum nome de usuário inserido. Encerrando o script."
exit 1
fi
#
mkdir -v /etc/openvpn/server/clients/$username
cd /etc/openvpn/server/easy-rsa
./easyrsa --batch --req-cn=$username gen-req $username nopass
./easyrsa --batch --req-cn=$username sign-req client $username
cd pki
openvpn --tls-crypt-v2 private/server.pem --genkey tls-crypt-v2-client private/$username.pem
cp -v ca.crt ../../clients/$username
cp -v issued/$username.crt ../../clients/$username
cp -v private/$username.key ../../clients/$username
cp -v private/$username.pem ../../clients/$username
#
cd ../../clients/$username
{(
cat <(echo -e 'client') \
<(echo -e 'proto udp') \
<(echo -e 'dev tun') \
<(echo -e 'remote shorting.com.br 2944') \
<(echo -e 'resolv-retry infinite') \
<(echo -e 'nobind') \
<(echo -e 'persist-key') \
<(echo -e 'persist-tun') \
<(echo -e 'remote-cert-tls server') \
<(echo -e 'cipher AES-256-GCM') \
<(echo -e '#user nobody') \
<(echo -e '#group nobody') \
<(echo -e '#redirect-gateway def1') \
<(echo -e 'verb 3') \
<(echo -e '<ca>') \
ca.crt \
<(echo -e '</ca>\n<cert>') \
$username.crt \
<(echo -e '</cert>\n<key>') \
$username.key \
<(echo -e '</key>\n<tls-crypt-v2>') \
$username.pem \
<(echo -e '</tls-crypt-v2>') \
> $username.ovpn
printf 'push "route 10.8.11.1 255.255.255.255"' > ../../ccd/$username
)}
chown emperor:emperor $username.ovpn