124 private links
Pour moi, c'est plus compliqué que ça
Et présenté comme ça, ça me fait penser aux offres mobiles et les gens ne sont pas choqués...
VPN
Installation
apt-get install openvpn
Une fois l’installation terminée, on va se déplacer dans le répertoire d’installation
Ensuite un créé un dossier de travail
cd /etc/openvpn/
mkdir easy-rsa
cp -r /usr/share/easy-rsa/ /etc/openvpn
passons à la génération des clés et certificats :
cd /etc/openvpn/easy-rsa/
source vars
./clean-all
./build-dh
Attendre la fin de la génération
./pkitool --initca
Attendre la fin de la génération
./pkitool --server server
openvpn --genkey --secret keys/ikipatang.key
On patiente… ne vous inquiétez pas, c’est très rapide (remplacez cachem.key par nom que vous souhaitez) . Maintenant, on va copier les clés et certificats à la racine d’OpenVpn
cd /etc/openvpn/easy-rsa/keys
cp ca.crt dh2048.pem server.crt server.key ikipatang.key ../../
Création du fichier de configuration
echo "
# Server TCP/5678
mode server
proto tcp
port 5678
dev tun
# Certificates and keys
ca ca.crt
cert server.crt
key server.key
dh dh2048.pem
tls-auth ikipatang.key 0
cipher AES-256-CBC
# Network
server 10.10.10.0 255.255.255.0
push \"redirect-gateway def1 bypass-dhcp\"
push \"dhcp-option DNS 208.67.222.222\"
push \"dhcp-option DNS 208.67.220.220\"
keepalive 10 120
client-config-dir static_clients
# Security
user nobody
group nogroup
chroot /etc/openvpn/jail
persist-key
persist-tun
comp-lzo
duplicate-cn
#crl-verify keys/crl.pem # Certificat Revoke List
# Log
verb 3
mute 20
status openvpn-status.log
log-append /var/log/openvpn/openvpn.log
" > /etc/openvpn/server.conf
Cration des fichiers d'exécutions et vérification de la conf
mkdir -p /etc/openvpn/jail/tmp
mkdir -p /etc/openvpn/jail/static_clients
mkdir /etc/openvpn/confuser
mkdir /var/log/openvpn
cd /etc/openvpn
openvpn server.conf
Si un ctrl + c a été nécessaire, c'est que tout fonctionne.
cat /var/log/openvpn/openvpn.log | grep "Initialization Sequence Completed"
Configuration du routage
echo 1 > /proc/sys/net/ipv4/ip_forward
sed -i /etc/sysctl.conf -e "s/^#net\.ipv4\.ip_forward=1.*/net\.ipv4\.ip_forward=1/"
Démarrage du serveur
chmod +x /root/daemon_management/*.sh
/root/daemon_management/start_openvpn.sh
Access logs
cd
ln -s /etc/openvpn/openvpn-status.log openvpn-status.log
cat openvpn-status.log
Utilisateurs
Grant access
Création du user
cd /etc/openvpn/easy-rsa
source vars
./build-key-pass {client}
Créaton du répertoire de stockage de la conf user
mkdir /etc/openvpn/confuser/{client}/
Copie des données user
cp /etc/openvpn/ca.crt /etc/openvpn/ikipatang.key keys/{client}.crt keys/{client}.key /etc/openvpn/confuser/{client}/
cd /etc/openvpn/confuser/{client}/
Création du fichier de conf du user
echo "
# User
client
dev tun
proto tcp-client
remote 5.39.87.27 5678
resolv-retry infinite
cipher AES-256-CBC
# Certificates and keys
#askpass /storage/.config/vpn-config/{client}/stdin.txt # Linux path
#askpass stdin.txt # Windows path
ca ca.crt
cert {client}.crt
key {client}.key
tls-auth ikipatang.key 1
key-direction 1
# Security
nobind
persist-key
persist-tun
comp-lzo
verb 3
" > /etc/openvpn/confuser/{client}/{client}.conf
cp /etc/openvpn/confuser/{client}/{client}.conf /etc/openvpn/confuser/{client}/{client}.ovpn
Revoke access
Révocation des droits
cd /etc/openvpn/easy-rsa
source vars
./revoke-full {client}
/!\ Bien souvent il y a une erreur 23
Erreur de révocation
Vérifier que le certificat est révoqué
cat keys/index.txt
Génération du fichier de control de permission
openssl crl -in keys/crl.pem -text
Copie et activation dans la conf
cp -a keys/crl.pem /etc/openvpn/jail/keys/
chmod 755 /etc/openvpn/jail/keys/
sed -i /etc/openvpn/server.conf -e "s/^#crl-verify/crl-verify/"
Redémarrer openvpn