]> Cypherpunks.ru repositories - govpn.git/blob - utils/newclient.sh
Add simple script for creating new clients keys
[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 and random key in it,
13 and adds empty file with human readable username.
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 touch peers/$peerid/$1
26 echo peers/$peerid/$1