installation vpn_client

This commit is contained in:
2024-10-15 14:54:09 +02:00
parent b955790d0b
commit a79f4c73ef
3 changed files with 134 additions and 0 deletions

View File

@@ -0,0 +1,71 @@
#!/usr/bin/bash
#=======================================================================
# FILE: ~installation_vpn.sh
# USAGE: ./~installation_vpn.sh
# DESCRIPTION: Installation et paramétrage du vpn-ssl forticlient sur
# les postes Utilisateurs Debian
#
# OPTIONS: ---
# REQUIREMENTS: ---
# BUGS: ---
# NOTES: ---
# AUTHOR: Maxime Tertrais
# COMPANY: Operis
# CREATED: 15/10/2024
# REVISION: ---
#=======================================================================
##Définition des variables
folder=$(pwd) ##dossier local
log_erreurs="$folder/err_log.log"
script_conf="$folder/VPN_Forticlient/configuration_vpn.sh"
CERT_PATH1="$folder/VPN_Forticlient/client.pfx"
CERT_PATH2="/opt/forticlient/client.pfx"
#=======================================================================
##Définition des fonctions
func_dependances(){
apt-get update
apt-get install -y expect
}
func_installation(){
wget -O - https://repo.fortinet.com/repo/7.0/ubuntu/DEB-GPG-KEY | apt-key add - #ajout de la clé du dépôt fortinet
printf "deb [arch=amd64 signed-by=/usr/share/keyrings/repo.fortinet.com.gpg] https://repo.fortinet.com/repo/7.0/ubuntu xenial multiverse\n" | tee /etc/apt/sources.list.d/repo.fortinet.com.list
apt-get update
apt install -y forticlient
mv $CERT_PATH1 $CERT_PATH2
chown root:root $CERT_PATH2
}
#=======================================================================
##Script
echo "Mise a jour dependances pour l'installation du vpn"
if func_dependances 2>> $log_erreurs; then
echo "Mise a jour dependances nécessaire à l'installation du vpn réussie"
else
echo "Erreur lors de la mise a jour dependances nécessaire à l'installation du vpn"
echo "logs d'erreurs disponibles dans le fichier: $log_erreurs"
exit 1
fi
sleep 2
echo "Installation du vpn"
if func_installation 2>> $log_erreurs; then
echo "Installation du vpn réussie"
else
echo "Erreur lors de l'installation du vpn"
echo "logs d'erreurs disponibles dans le fichier: $log_erreurs"
exit 1
fi
sleep 2
echo "Configuration du vpn"
chmod +x $script_conf
if script_conf 2>> $log_erreurs; then
echo "Configuration du vpn réussie"
else
echo "Erreur lors de la configuration du vpn"
echo "logs d'erreurs disponibles dans le fichier: $log_erreurs"
exit 1
fi
sleep 2

BIN
VPN_Forticlient/client.pfx Normal file

Binary file not shown.

View File

@@ -0,0 +1,63 @@
#!/usr/bin/expect
#=======================================================================
# FILE: ~configuration_vpn.sh
# USAGE: ./~configuration_vpn.sh
# DESCRIPTION: Installation et paramétrage du vpn-ssl forticlient sur
# les postes Utilisateurs Debian
#
# OPTIONS: ---
# REQUIREMENTS: ---
# BUGS: ---
# NOTES: ---
# AUTHOR: Maxime Tertrais
# COMPANY: Operis
# CREATED: 15/10/2024
# REVISION: ---
#=======================================================================
##Définition des variables
NOM_CONNEXION="VPN-Operis"
SERVER_VPN="champlan.operis.fr" #serveur à joindre
PORT_VPN="10443" #port du vpn à joindre
AUTH_TYPE="1" #demande de saisir les Id de l'AD
CERT_PATH="/opt/forticlient/client.pfx"
CERT_PSWD="Operis123"
#=======================================================================
##Définition des fonctions
#=======================================================================
##Script
set timeout -1
# Lancer le script fortivpn
spawn fortivpn edit $NOM_CONNEXION
# Fournir l'adresse du serveur
expect "Remote Gateway" # Le texte exact affiché par le script
sleep 1
send "$SERVER_VPN\r"
# Fournir le n° de port
expect "Port"
sleep 1
send "$PORT_VPN\r"
# Fournir la méthode d'identification
expect "Authentication"
sleep 1
send "$AUTH_TYPE\r"
# Fournir le certificat client
expect "Client Certificate"
sleep 1
send "$CERT_PATH\r"
# Fournir le certificat client
expect "Client Certificate password"
sleep 1
send "$CERT_PSWD\r"
# Attendre la fin
expect eof
}