From a79f4c73ef34610dd898b50afa0ab45f16b08198 Mon Sep 17 00:00:00 2001 From: Ichbinus Date: Tue, 15 Oct 2024 14:54:09 +0200 Subject: [PATCH] installation vpn_client --- VPN_Forticlient/Installation_vpn.sh | 71 +++++++++++++++++++++++++++ VPN_Forticlient/client.pfx | Bin 0 -> 3763 bytes VPN_Forticlient/configuration_vpn.sh | 63 ++++++++++++++++++++++++ 3 files changed, 134 insertions(+) create mode 100644 VPN_Forticlient/Installation_vpn.sh create mode 100644 VPN_Forticlient/client.pfx create mode 100644 VPN_Forticlient/configuration_vpn.sh diff --git a/VPN_Forticlient/Installation_vpn.sh b/VPN_Forticlient/Installation_vpn.sh new file mode 100644 index 0000000..9c2a697 --- /dev/null +++ b/VPN_Forticlient/Installation_vpn.sh @@ -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 diff --git a/VPN_Forticlient/client.pfx b/VPN_Forticlient/client.pfx new file mode 100644 index 0000000000000000000000000000000000000000..1b48bd6366b13f2bd7df2a0f3e824e1c2fa8d267 GIT binary patch literal 3763 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 LJ$Ur&7qjiZ literal 0 HcmV?d00001 diff --git a/VPN_Forticlient/configuration_vpn.sh b/VPN_Forticlient/configuration_vpn.sh new file mode 100644 index 0000000..acf8794 --- /dev/null +++ b/VPN_Forticlient/configuration_vpn.sh @@ -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 + +} \ No newline at end of file