<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>openvpn Archives - Mon linux</title>
	<atom:link href="https://www.monlinux.net/tag/openvpn/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.monlinux.net/tag/openvpn/</link>
	<description>by Belgotux</description>
	<lastBuildDate>Sat, 21 Jan 2023 17:08:59 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.5</generator>

<image>
	<url>https://www.monlinux.net/wp-content/uploads/cropped-mon-linux-logo-grey-512-32x32.png</url>
	<title>openvpn Archives - Mon linux</title>
	<link>https://www.monlinux.net/tag/openvpn/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Openvpn notify &#8211; notification email de connexion utilisateur</title>
		<link>https://www.monlinux.net/2015/03/openvpn-notify-email-connexion-utilisateur/</link>
					<comments>https://www.monlinux.net/2015/03/openvpn-notify-email-connexion-utilisateur/#comments</comments>
		
		<dc:creator><![CDATA[belgotux]]></dc:creator>
		<pubDate>Mon, 09 Mar 2015 20:56:49 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[notification]]></category>
		<category><![CDATA[openvpn]]></category>
		<category><![CDATA[script]]></category>
		<guid isPermaLink="false">http://www.monlinux.net/?p=821</guid>

					<description><![CDATA[<p>Lorsque l&#8217;on souhaite mettre &#224; disposition des employ&#233;s un VPN, il est important de savoir qui l&#8217;utilise. Il existe &#233;videment le log habituel, mais pas tr&#232;s pratique dans la majorit&#233; des cas. Pour savoir qui est connect&#233; en temps r&#233;el,... <a class="more-link" href="https://www.monlinux.net/2015/03/openvpn-notify-email-connexion-utilisateur/">Continue Reading &#8594;</a></p>
<p>L’article <a href="https://www.monlinux.net/2015/03/openvpn-notify-email-connexion-utilisateur/">Openvpn notify &#8211; notification email de connexion utilisateur</a> est apparu en premier sur <a href="https://www.monlinux.net">Mon linux</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Lorsque l&rsquo;on souhaite mettre à disposition des employés un VPN, il est important de savoir qui l&rsquo;utilise. Il existe évidement le log habituel, mais pas très pratique dans la majorité des cas.</p>
<p>Pour savoir qui est connecté en temps réel, on peut déjà utiliser cette option dans la configuration serveur l&rsquo;OpenVPN :</p>
<pre class="lang:sh decode:true ">status /var/log/openvpn-status.log</pre>
<p>Mais c&rsquo;est encore mieux d&rsquo;être averti par mail en live que quelqu&rsquo;un se connecte à notre VPN OpenVPN !</p>
<p>Il faut ajouter ces 3 lignes dans le fichier de configuration serveur OpenVPN :</p>
<pre class="lang:sh decode:true ">script-security 2
client-connect /usr/local/bin/openvpn-notify.sh
client-disconnect /usr/local/bin/openvpn-notify.sh</pre>
<p>Cela permet à OpenVPN de faire appel à ces scripts lors d&rsquo;une connexion ou déconnexion d&rsquo;un client. Dans mon cas, c&rsquo;est le même script, car des variables d&rsquo;environnement permettent d&rsquo;obtenir l&rsquo;action (connect ou disconnect) et de gérer l&rsquo;action désirée dans le script.</p>
<p>Les variables d&rsquo;environnement servent à passer les paramètres d&rsquo;OpenVPN dont on a besoin dans notre script. Il existe une liste liste impressionnante, voir le man d&rsquo;<a href="https://openvpn.net/index.php/open-source/documentation/manuals/65-openvpn-20x-manpage.html" target="_blank" rel="noopener">openvpn à la section Environmental Variables</a>.</p>
<p>Celles que j&rsquo;ai utilisées :</p>
<ul>
<li>$script_type : permet de récupérer l&rsquo;action client-connect ou client-disconnect</li>
<li>$config : permet de récupérer le chemin absolut de la configuration vpn (pratique si on dispose de plusieurs VPN afin de les distinguer)</li>
<li>$common_name : le nom du client openvpn afin de savoir qui s&rsquo;y connecte</li>
<li>$trusted_ip : l&rsquo;IP publique par laquelle le client se connecte au VPN</li>
<li>$ifconfig_remote : l&rsquo;IP interne du VPN obtenue par le client</li>
</ul>
<p>Je vous livre mon script « tout fait qui va bien » dans la suite de cet article, il est personnalisable et sous licence GPLv3.</p>
<p><span id="more-821"></span></p>
<p>Dans ce script les fonctions connect-action et disconnect-action sont personnalisables.</p>
<p>Dans mon cas je n&rsquo;utilise que la notification mail appelée dans une autre fonction. <a href="https://www.monlinux.net/wp-content/uploads/openvpn-notify.sh_.txt">openvpn-notify.sh</a>.</p>
<pre class="lang:sh decode:true">#!/bin/bash
# Auteur : Belgotux
# Site : www.monlinux.net
# Adresse : b&#101;lg&#111;&#116;&#117;&#120;&#64;m&#111;nl&#105;n&#117;&#120;&#46;ne&#116;
# Version : 1.0
# Date : 08-03-2015
# Licence : GPLv3
# Changelog : 
# Description : 
#   use openvpn local environment variable, see openvpn man
#   In your server config file :
#    client-connect /usr/local/bin/openvpn-notify.sh
#    client-disconnect /usr/local/bin/openvpn-notify.sh

MAILTO=root

function connect-action () {
    mail-notify
}

function disconnect-action () {
    mail-notify
}

function mail-notify () {
    (echo "
    action = $script_type
    VPN = $config
    Common name = $common_name
    Public IP address = $trusted_ip
    VPN get address = $ifconfig_remote"
    ) | mail -s "$script_type $(basename $config .conf) $common_name" $MAILTO
    return $?
}

case $script_type in

    client-connect)
        connect-action
    ;;

    client-disconnect)
        disconnect-action
    ;;

    *)
    exit 0
    ;;
esac


exit 0
</pre>
<p>On fait un reload d&rsquo;openvpn pour les options serveur rajoutées et voilà.</p>
<p>L’article <a href="https://www.monlinux.net/2015/03/openvpn-notify-email-connexion-utilisateur/">Openvpn notify &#8211; notification email de connexion utilisateur</a> est apparu en premier sur <a href="https://www.monlinux.net">Mon linux</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.monlinux.net/2015/03/openvpn-notify-email-connexion-utilisateur/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
	</channel>
</rss>

<!--
Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/

Mise en cache de page à l’aide de Disk: Enhanced 
Mise en cache de la base de données de 40/42 requêtes en 0.008 secondes utilisant Disk

Served from: www.monlinux.net @ 2026-06-27 10:49:37 by W3 Total Cache
-->