]> Cypherpunks.ru repositories - govpn.git/blob - utils/newclient.sh
Merge branch 'develop'
[govpn.git] / utils / newclient.sh
1 #!/bin/sh -e
2
3 getrand()
4 {
5     local size=$1
6     dd if=/dev/random bs=$size count=1 2>/dev/null | hexdump -ve '"%02x"'
7 }
8
9 [ -n "$1" ] || {
10     cat <<EOF
11 Example script for creating new user peer for GoVPN.
12 It just creates directory with random peer ID, random key,
13 saves username in it and creates dummy up.sh executable script.
14
15 Usage: $0 <username>
16 EOF
17     exit 1
18 }
19
20 username=$1
21 peerid=$(getrand 16)
22 umask 077
23 mkdir -p peers/$peerid
24 getrand 32 > peers/$peerid/key
25 echo $username > peers/$peerid/name
26 echo '#!/bin/sh' > peers/$peerid/up.sh
27 chmod 700 peers/$peerid/up.sh
28 echo $peerid