MARTINBRANDA

Navigation
louis MARTINBRANDA
Author

louis MARTINBRANDA

Rechercher


  • Accueil
  • À propos de
  • Blog
  • Contact

  • CSS 2
  • Divers 1
  • HTML 9
  • JQuery 1
  • Linux 39
  • MacOSX 15
  • Network 1
  • PHP 3
  • Raspberry PI 2
  • SQL 3
  • Vmware 4
  • Windows 3

Étiquettes


.htaccess Annuaire LDAP Apache Backup cisco command css debian debian6 derniers erreur ESXi extension fichiers History html htop iftop LDAP Linux MAC modifiés Mysql ntp OSX pages d’erreurs password PHP pi Proftpd raspberry RewriteEngine router sarg server ssh switch tar terminal Trouver url Welcome Windows WWW / No-WWW zimbra

Copyright © MARTINBRANDA. 2023 • All rights reserved.

Hydra WordPress Theme by EckoThemes.

Published with WordPress.

Related Articles

Filter by Category

  • Linux(39)
  • MacOSX(15)
  • HTML(9)
  • Vmware(4)
  • PHP(3)
  • SQL(3)
  • Windows(3)
  • CSS(2)
  • Raspberry PI(2)
  • Divers(1)
  • JQuery(1)
  • Network(1)

Filter by Author

  • louis MARTINBRANDA louis MARTINBRANDA (70)
Back to Latest Articles
Linux

Installation d’un Serveur OpenVPN sous Debian

OpenVPN est un VPN SSL se basant sur la création d’un tunnel IP. Installation du Serveur OpenVPN On commence par installer le package OpenVPN apt-get install openvpn On...

Posted on 31st mars 2011 by louis MARTINBRANDA

Linux

FFmpeg, FFmpeg-PHP, Lame, Libogg, Libvorbis, FLVtool2, Mplayer, Mencoder, AMR Installation

Voici un petit tuto, pour vous expliquer comment installer FFMPEG sur Debian et Ubuntu. Ci-dessous la liste des packages qui seront installés : FFmpeg FFmpeg-PHP Mplayer +...

Posted on 9th mars 2011 by louis MARTINBRANDA

Linux

NO_PUBKEY DD1A5E9CEED949F0

Quand vous rajoutez des sources dans /etc/apt/sources.list et que vous faites un apt-get update. Il peut vous arrivez de recevoir ce message :

Posted on 14th février 2011 by louis MARTINBRANDA

Linux

Changer l’éditeur par défaut de Crontab

Par défaut maintenant sur Debian quand vous faites : crontabt -e il est automatiquement edité via nano.

Posted on 2nd février 2011 by louis MARTINBRANDA

Linux

Sarg : Supprimer vieux répertoires

Suite au post préédent, j’ai créé un script qui vous permet de supprimer quotidiennement les anciens répertoires de SARG. Créé un script nommé : nettoyage_sarg.sh

Posted on 21st janvier 2011 by louis MARTINBRANDA

Linux

Installer Squid Report Generator (Sarg) Debian

Qu’est ce que SARG? C’est un outil simple qui s’installe sur le serveur et qui analyse le trafic lié à internet. Il permet de connaitre les sites visités pour...

Posted on 19th janvier 2011 by louis MARTINBRANDA

Linux

Backup Cisco conf avec SNMP et SQL

Je cherchais depuis peu un moyen simple et efficace de sauvegarder mes configuration Cisco automatiquement. En cherchant un peu sur le net, j’ai trouvé que la solution la...

Posted on 8th janvier 2011 by louis MARTINBRANDA

Linux

Activer accès SSH sur Vmware ESXi

Par défaut, ce n’est pas possible! Il faut l’activer via la console : Connectez vous sur la console puis faite alt+F1 Rentrez « unsupported » puis rentrer le MDP root.

Posted on 21st décembre 2010 by louis MARTINBRANDA

Linux

Jboss Installation sur RedHat

Cette installation est décrite pour un serveur installé sous RedHat Linux. Les fichiers suivants sont requis : – SDK Java : jdk1.5.0_14-linux-i586x.bin Téléchargement sur...

Posted on 16th décembre 2010 by louis MARTINBRANDA

Linux

Autologin SSH (Mac + Windows)

Dans cet article je vais vous décrire la procédure pour vous loguer automatiquement en ssh sur votre serveur Linux via votre Mac ou votre Window$.

Posted on 15th décembre 2010 by louis MARTINBRANDA

View Latest Posts
Linux

Installation d’un Serveur OpenVPN sous Debian


louis MARTINBRANDA
louis MARTINBRANDA
Installation d’un Serveur OpenVPN sous...
Posted on 31st mars 2011 by louis MARTINBRANDA

OpenVPN est un VPN SSL se basant sur la création d’un tunnel IP.

Installation du Serveur OpenVPN

On commence par installer le package OpenVPN

apt-get install openvpn

On copie ensuite les fichiers de configurations.

mkdir /etc/openvpn/easy-rsa/
cp -r /usr/share/doc/openvpn/examples/easy-rsa/2.0/* /etc/openvpn/easy-rsa/
chown -R $USER /etc/openvpn/easy-rsa/

Configuration du serveur OpenVPN
On commence par éditer le fichier /etc/openvpn/easy-rsa/vars:

export KEY_COUNTRY="FR"
export KEY_PROVINCE="IDF"
export KEY_CITY="Paris"
export KEY_ORG="martinbranda.eu"
export KEY_EMAIL="dtc@hadopi.fr"

on lance la séquence suivante qui va générer les clés (.key) et les certificats (.crt):

cd /etc/openvpn/easy-rsa/
source vars
./clean-all
./build-dh
./pkitool --pass --initca
./pkitool --pass --server server
openvpn --genkey --secret keys/ta.key

Le password utilisé dans ce cas de figure est PASSWORD

echo 'PASSWORD' > /etc/openvpn/server.password
chmod 0600 /etc/openvpn/server.password

On copie ensuite les clés et les certificats utiles pour le serveur dans le répertoire /etc/openvpn/:
cp keys/ca.crt keys/ta.key keys/server.crt keys/server.key keys/dh1024.pem /etc/openvpn/
Puis on génère un répertoire /etc/openvpn/jail

mkdir /etc/openvpn/jail
mkdir /etc/openvpn/clientconf

Enfin on créé le fichier de configuration /etc/openvpn/server.conf:

# Serveur TCP/443
mode server # c'est le fichier de configuration du serveur
proto tcp
port 443 # port 443 en TCP
dev tun # Utilise l'interface virtuelle tun
# Cles et certificats
ca ca.crt
cert server.crt
key server.key
dh dh1024.pem
tls-auth ta.key 0 # 0 pour le serveur
askpass /etc/openvpn/server.password
cipher AES-256-CBC # algorithme de chiffrement
# Reseau
server 10.8.0.0 255.255.255.0 # adresse IP distribuées aux clients
push "redirect-gateway def1 bypass-dhcp" # redirection du flux de données
push "dhcp-option DNS 4.4.4.4" # Changement des DNS
push "dhcp-option DNS 8.8.8.8" # Changement des DNS
keepalive 10 120 # Test de la connexion avec le client toutes les 10s,
# au bout de 120s de non réponse le client est en timeout.
#ajoute la route au client pour qu'il puisse accéder au VPN
push "route 10.8.0.0 255.255.255.0"
#autorise les clients à se voir entre eux sur le VPN
client-to-client

#Gestion des droits et compression de données
user nobody # Changement de l'utilisateur et du groupe pour l'exécution
group nogroup
chroot /etc/openvpn/jail
persist-key # n'accède plus à certaines options,
persist-tun # car réduction des privilèges utilisateur
comp-lzo # compression des données
# Log
verb 3
mute 20
status openvpn-status.log
; log-append /var/log/openvpn.log

Ce fichier permet de créer un serveur VPN SSL routé basée sur le protocole TCP et utilisant le port HTTPS (443) enfin de maximiser sont accessibilité depuis des réseaux sécurisés par des Firewalls. Les clients obtiendrons une nouvelle adresse IP dans le range 10.8.0.0/24.

On teste la configuration en saisissant la commande suivante:

openvpn  /etc/openvpn/server.conf

On doit obtenir les messages suivants:

Initialization Sequence Completed

Si le serveur démarre correctement, on peut terminer la configuration sur serveur OpenVPN en décommentant la dernière ligne du fichier /etc/openvpn/server.conf :

Une fois fait on lance le serveur :

/etc/init.d/openvpn start

A ce stade un client va pouvoir ce connecter au serveur VPN. Par contre impossible d’aller plus loin car l’adresse 10.8.0.x ne sera par routée en dehors de votre serveur. Il faut donc configurer le serveur pour jouer le rôle de routeur entre l’interface VPN (tun0) et l’interface physique (eth0) et de NATeur entre les adresses en 10.8.0.x et son adresse IP réelle.

Configuration du routage:

sh -c ‘echo 1 > /proc/sys/net/ipv4/ip_forward’

Pour rendre ce paramètrage de routage permanant (même après un reboot), il faut ajouter la ligne suivante au fichier /etc/sysctl.conf:

net.ipv4.ip_forward = 1

Configuration du NAT:

sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

Le serveur est maintenant prêt à accueillir ses clients. Nous allons donc voir comment faire une déclaration de client sur le serveur.

Création d’un compte client OpenVPN

On va créer le client martinbranda

cd /etc/openvpn/easy-rsa
source vars
./build-key martinbranda

Le build-key va générer 3 fichiers dans le répertoire /etc/openvpn/easy-rsa/keys:
martinbranda.crt: Certificat pour le client
martinbranda.csr: Certificat à garder sur le serveur
martinbranda.key: Clés pour le client
On copie les fichiers nécessaires dans un sous répertoire /etc/openvpn/clientconf/ préalablement créé:

mkdir /etc/openvpn/clientconf/martinbranda/
cp /etc/openvpn/ca.crt /etc/openvpn/ta.key keys/martinbranda.crt keys/martinbranda.key /etc/openvpn/clientconf/martinbranda/

On va ensuite dans le répertoire /etc/openvpn/clientconf/martinbranda

Puis on créé le fichier client.conf :

# Client
client
dev tun
proto tcp-client
remote ip_public_serveur 443
resolv-retry infinite
cipher AES-256-CBC
# Cles
ca ca.crt
cert martinbranda.crt
key martinbranda.key
tls-auth ta.key 1
# Securite
nobind
persist-key
persist-tun
comp-lzo
verb 3

Pour assurer la compatibilité avec le client Windows OpenVPN, on fait une copie du fichier client.conf vers client.ovpn:

cp client.conf client.ovpn

Il ne reste plus qu’à mettre ces fichiers dans une archive ZIP et de la transmettre sur le PC client:

zip martinbranda.zip *.*

Attribuer une adresse IP statique à un client VPN

Pour des raisons de sécurité , il est nécessaire d’affecter une adresse IP statique à un client VPN. Pour cela, il faut créer un répertoire qui va contenir les configurations statiques:

mkdir /etc/openvpn/ccd
ln -s /etc/openvpn/ccd /etc/openvpn/jail/ccd

Ensuite on édite à l’intérieur de ce répertoire un fichier correspondant au CNAME (X509) de l’utilisateur dont on veut rendre la configuration statique (par exemple martinbranda):

vi /etc/openvpn/ccd/martinbranda
ifconfig-push 10.8.0.18 10.8.0.17

La syntaxe est la suivante: ifconfig-push @IPCLIENTTUNNELVPN @IPSERVEURTUNNELVPN.
Ainsi quand le client martinbranda se connectera au serveur VPN il obtiendra une adresse en 10.8.0.18. Le bout du tunnel VPN (coté serveur) sera lui en 10.8.0.17.

Révocation d’un certificat client

Si le certificat d’un client à été volé au si ce dernier n’est plus nécessaire, il est important de le révoquer pour qu’il ne puisse plus être utilisé.

Pour révoquer un certificat, il copier les certificats de l’utilisateur à révoquer dans le dossier /etc/openvpn/easy-rsa/keys

La commande suivante permet de révoquer un certificat :

# ./revoke-full martinbranda
Using configuration from /etc/openvpn/easy-rsa/openssl.cnf
DEBUG[load_index]: unique_subject = "yes"
Revoking Certificate 17.
Data Base Updated
Using configuration from /etc/openvpn/easy-rsa/openssl.cnf
DEBUG[load_index]: unique_subject = "yes"
Client01.crt: /
=FR/ST=IDF/O=martinbranda/CN=martinbranda/emailAddress=martinbranda@martinbranda.eu
error 23 at 0 depth lookup:certificate revoked

Remarque : Avec ce script, il ne faut pas mettre l’extension « .crt » du certificat.

A chaque révocation de certificat son numéro est ajouté dans le fichier « keys/crl.pem ». Ce fichier contient donc la liste des certificats révoqués. Après chaque révocation de certificat, il faut donc copier ce fichier dans « /etc/openvpn »

La commande suivante, permet de consulter la liste des certificats révoqués :

# openssl crl -in keys/crl.pem -text

Il faut également ajouter cette ligne dans « etc/openvpn/server.conf » du serveur OpenVPN :

crl-verify crl.pem

Pour information, le fichier « keys/index.txt » contient la liste des certificats créés et révoqués

Pour finir et pour information, lors de la création d’un client, les fichiers suivants sont créés ou modifiés dans « keys/crl.pem »

les connexions VPN

le processus OpenVPN server va écrire toute les minutes un état des clients connectés au serveur dans le fichier /etc/openvpn/openvpn-status.log.
On aura, par exemple, les informations suivantes:

OpenVPN CLIENT LIST
Updated,Fri Jan 21 15:48:06 2011
Common Name,Real Address,Bytes Received,Bytes Sent,Connected Since
client1,27.12.245.248:10086,306367,620864,Fri Jan 21 13:58:25 2011
ROUTING TABLE
Virtual Address,Common Name,Real Address,Last Ref
10.8.0.10,client1,27.12.245.248:10086,Fri Jan 21 15:47:14 2011
GLOBAL STATS
Max bcast/mcast queue length,0
END
louis MARTINBRANDA
louis MARTINBRANDA
  • debian
  • OpenVPN
  • Serveur
  • Share Article:
Show Comments (1)

Comments

  • Jannika
    Jannika

    Ab fab my gooldy man.

    • 22 juin 2011
    • Article Author
    • Répondre

Cancel Reply

Connecter avec:
Facebook Google Twitter WordPress

Related Articles

Installer les VMware tools sur Debian
Vmware

Installer les VMware tools sur Debian

Installer les VMware Tools sur une Debian c'est très simple

Posted on 4th novembre 2013 by louis MARTINBRANDA

Subscribe to MARTINBRANDA

Subscribe to our email newsletter to receive useful articles and special offers.

We won't share your email address.