Voici la marche à suivre pour l'installation d'un VPN sous linus Fedora Core.Cette démarche a pour but de relier un client distant au réseau d'entreprise avec une distribution de certificat pour la conformité des critères DICI (disponibilité, intégrité, confidentialité, imputabilité).
Après avoir inséré le CD-Rom 1 / 4 de FEDORA CORE II, à l'invite appuyez sur ENTER pour démarrer l'installation. La détection de la carte SCSI se fait automatiquement.
Le système demande une phase de test pour les CD-Roms, à moins d'être sûr de vos supports, le test ne dure que 5 minutes par CD-Rom, dans tous les cas, cliquez sur OK pour faire les tests ou SKIP pour les éviter.(si vous choisissez OK il demande confirmation).
1)Les tests ont réussi appuyez sur entrer et ré-insérez le CD-Rom 1 / 4.
2)Les tests ne sont pas bons, dans ce cas il faut trouver d'autres supports.
Partant de l'idée que tous les tests ont réussi, le choix de la langue d'installation vous est demandé, sélectionnez "French(Français)" et pour la langue du clavier sélectionner "French(latin1)".
Une méthode d'installation vous propose plusieurs choix, optez pour "PERSONNALISER" afin de pouvoir affiner le paramétrage.
Pour le partitionnement des disques durs, choisissez "PARTITIONNER MANUELLEMENT" avec "DiskDruid". Supprimez toutes les partitions (sauf si vous souhaitez récupérer vos données) et voyez à l'écran 2 disques de 4 Go.
1) Sélectionnez le disque sda, pour le point de montage tapez "/" et pour le "Type de système de fichier" laissez "EXT3". Ne pas oublier de décocher sdb puis activer "Remplir jusqu'à la taille autorisée maximale".
2) Sélectionnez le disque sdb, pour le point de montage tapez "/var" et pour le type de partition laissez "EXT3". Ne pas oublier de décocher sda puis activer "Taille en MO" tapez 3000.
3) Utilisez le reste de l'espace libre pour la partition SWAP. Pour ce faire, sélectionnez l'espace libre puis en " Type de système de fichier ", sélectionnez "SWAP" et " Remplir jusqu'à la taille autorisée maximale ".
4) Le choix de l'installation de GRUB sur /dev/sda est correct, nous pouvons continuer.
LE RESEAU
A cette étape, il faut configurer les périphériques réseau et notamment les deux cartes qu'il faut activer au démarrage. En sélèctionnant l'une ou l'autre vous pouvez cliquer sur "EDITER" pour entrer ces paramètres:
Pour ETHØ= Décocher "Configuration avec DHCP"
(Lan) Laissez "Activer au démarrage"
Tapez @IP 10.117.12.2
Mask 255.255.255.192
Pour ETH1= Décocher "Configuration avec DHCP"
(Wan) Laissez "Activer au démarrage"
Tapez @IP 10.117.12.1
Mask 255.255.255.192
Nom d'hôte = le nom que vous avez choisis pour votre serveur
Passerelle = votre passerelle
DNS primaire= le dns de votre entreprise
Désactivez le pare-Feu si le réseau dispose déjà d'une protection.
Pour la sélection de la langue par défaut du système, il est normalement placé sur "French(France)" et pour le fuseau horaire sur "Europe/Paris", ne touchez pas à ces réglages.
LE MOT DE PASSE "ROOT" est ""votre PASSWORD""
-système X Windows 33/38 (défaut)
-Gnome 36/40 (défaut)
-KDE 14/15 (défaut)
-Editeurs 3/7 (défaut)
-Outils de configuration de serveur 9/12 (défaut)
-Serveur web 20/25 (defaut)
-Serveur de fichiers Windows 2/2 (défaut)
-Serveur réseau 8/17
krb5-server
quagga
radvd
rshserver
rwho
telnet-server
vnc-server
ypserv
-Outils de développement 38/52 (défaut)
-Développement du noyau 5/5 (défaut)
-Outils d'administration 12/12 (défaut)
-Outils système 8/22
Ckermit
Ethéréal
Nmap
OpenLDAP
SambaClient
Screen
vnc
Xdelta
Après avoir cliqué sur suivant il n'y a plus qu'à attendre pour insérer les CD-Roms 1,2,3 quand le système le demande. A la fin, retirez le CD-Rom lorsqu'il l'éjècte puis cliquez sur "REDEMARRER".
Il ne vous reste plus qu'a :
1.Accepter le contrat de licence
2.Régler la date et l'heure
3.Régler l'affichage =1024x768 en milier de couleurs=
4.Créer un compte utilisateur
USER et le mot de passe
C'est FINI
Lors du démarrage, quittez le dossier /home par la commande suivante:
Cd // pour vous retrouvez à la racine du disque. Toutes les applications sont téléchargées dans le dossier /var/Téléchargement
-x pour extract
-v pour verbose (mode bavard)
-z pour gzip
-f pour utiliser le fichier d'archive
INSTALLER BRIDGE-UTILS: (dans /usr/local)
Le serveur peut être paramétrer de 2 façons:
-Mode bridged pour relier entre eux deux réseaux.
-Mode routed pour relier entre elles des machines distantes.
C'est la deuxième option que nous choisirons.
tar -zxvf bridge-utils-1.0.4.tar.gz
Déplacer le dossier dans usr/local puis renomer le en bridge-utils
cd /usr/local/bridge-utils
./configure && make && make install
INSTALLER LZO: (dans /usr/local)
tar -zxvf lzo-1.08.tar.gz
Déplacer le dossier dans usr/local puis renommez le en lzo
cd /usr/local/lzo
./configure && make && make check && make test
make install
INSTALLER OPENSSL: (dans /usr local)
Tar -zxvf openssl-0.9.7 e.tar.gz
Déplacez le dossier dans usr/local puis renommez le en openssl
cd /usr/local/openssl
./config && make && make test && make install
INSTALLER OPENVPN: (dans /usr/local)
tar -xvzf openvpn-2.0_rc16.tar.gz
Déplacez le dossier dans usr/local puis renomez le en openvpn
Il faut maintenant installer OPENVPN , procédez comme suit:
Tapez cette commande:
cd /usr/local/openvpn
./configure - -enable-pthread
make
make install
Il ne reste plus qu'à vérifier le bon déroulement des opérations. Pour cela tapez:
cd /usr/local/openvpn
./openvpn - -genkey - -secret key
./openvpn - -test-crypto - -secret key
./openvpn - -config sample -config-files/loopback-server
et dans un autre shell
cd usr/local/openvpn
./openvpn - -config sample-config-files/loopback-client
Normalement la connexion s'effectue.
FICHIER DE DEMARRAGE D'OPENVPN: (dans /etc/init.d)
#!/bin/bash
DAEMON=/usr/local/openvpn
CONF=/usr/local/openvpn/
CONFIG_DIR=/usr/local/openvpn
DAEMONARG="--daemon openvpn"
PIDFILE=/var/run/openvpn.pid
test -x $DAEMON || exit 0
test -d $CONFIG_DIR || exit 0
case "$1" in
start)
echo -n "Starting openvpn : "
$DAEMON --writepid $PIDFILE --config $CONF $DAEMONARG
--cd $CONFIG_DIR --chroot /usr/local/openvpn
echo "Done."
;;
stop)
echo -n "Stopping openvpn : "
PID=`cat $PIDFILE`
kill $PID
rm $PIDFILE
echo "Done."
;;
restart)
echo "Restarting openvpn : "
echo ""
sh $0 stop
sh $0 start
echo ""
echo "Openvpn has restarted."
;;
*)
echo "Usage: $0 {start|stop|restart}" >&2
exit 1
;;
esac
exit 0
Pour un démarrage automatique d'OPENVPN a chaque reboot, il faut créer des liens symboliques, tapez:
chmod 755 /etc/init.d/openvpn
ln -s /etc/init.d/openvpn /etc/rc2.d/S90openvpn
ln -s /etc/init.d/openvpn /etc/rc6.d/K90openvpn
MODIFICATION DES FICHIERS
_______BRIDGE-START
br="br0"
tap="tun0"
ifconfig $br down
brctl delbr $br
for t in $tun; do
openvpn --rmtun --dev $t
done
_______BRIDGE-STOP
br="br0"
tap="tun0"
ifconfig $br down
brctl delbr $br
for t in $tun; do
openvpn --rmtun --dev $t
done
_______OPENVPN-SHUTDOWN.SH
killall -TERM openvpn
_______OPENVPN-STARTUP.SH
dir=/usr/local/openvpn
modprobe tun
echo 1 > /proc/sys/net/ipv4/ip_forward
openvpn --cd $dir --daemon --config server.conf
openvpn --cd $dir --daemon --config server1.conf
openvpn --cd $dir --daemon --config server2.conf
_______SERVER.CONF
dev tun
mode server
ifconfig 192.168.0.1 192.168.0.2
ifconfig-pool 192.168.0.4 192.168.0.254
route 192.168.0.0 255.255.255.0
push "route 192.168.0.0 255.255.255.0"
tls-server
dh sample-keys/dh1024.pem
ca /usr/local/openvpn/easy-rsa/keys/ca.crt
cert /usr/local/openvpn/easy-rsa/keys/nom du serveur.crt
key /usr/local/openvpn/easy-rsa/keys/nom du serveur.key
port 5000
ping 15
ping-restart 45
ping-timer-rem
persist-tun
persist-key
verb 3
cipher BF-CBC
_______TLS-HOME.CONF
dev tun
remote votre IP fixe
ifconfig votre IP fixe
up ./home.up
tls-client
ca ca.crt
cert nom du cerveur.crt
key nom du serveur.key
port 5000
user nobody
group nobody
ping 15
ping 15
ping-restart 45
ping-timer-rem
persist-tun
persist-key
verb3
_______TLS-OFFICE.CONF
dev tun
ifconfig 10.1.0.1 10.1.0.2
up ./office.up
tls-server
dh dh1024.pem
ca my-ca.crt
cert office.crt
key office.key
port 5000
user nobody
group nobody
comp-lzo
ping 15
ping 15
ping-restart 45
ping-timer-rem
persist-tun
persist-key
verb 3
_______VARS
export D=/usr/local/openvpn/easy-rsa/
export KEY_CONFIG=$D/openssl.cnf
export KEY_DIR=$D/keys
export KEY_SIZE=1024
export KEY_COUNTRY=FR
export KEY_PROVINCE=votre département
export KEY_CITY=votre ville
export KEY_ORG="le nom du serveur"
export KEY_EMAIL=root@le nom du serveur
_______OPENSSL.CNF
HOME = /usr/local/openvpn/easy-rsa/
RANDFILE = $ENV::HOME/.rnd
oid_section = new_oids
[ new_oids ]
[ ca ]
default_ca = CA_default
[ CA_default ]
dir = $ENV::KEY_DIR
certs = $dir
crl_dir = $dir
database = $dir/index.txt
new_certs_dir = $dir
certificate = $dir/ca.crt
serial = $dir/serial
crl = $dir/crl.pem
private_key = $dir/ca.key
RANDFILE = $dir/.rand
x509_extensions = usr_cert
default_days = 3650
crl_days= 30
default_md = md5
preserve = no
policy = policy_match
[ policy_match ]
countryName = match
stateOrProvinceName = match
organizationName = match
organizationalUnitName = optional
commonName = supplied
emailAddress = optional
[ policy_anything ]
countryName = optional
stateOrProvinceName = optional
localityName = optional
organizationName = optional
organizationalUnitName = optional
commonName = supplied
emailAddress = optional
[ req ]
default_bits = $ENV::KEY_SIZE
default_keyfile = privkey.pem
distinguished_name = req_distinguished_name
attributes = req_attributes
x509_extensions = v3_ca
signed cert
string_mask = nombstr
[ req_distinguished_name ]
countryName = Country Name (2 letter code)
countryName_default = $ENV::KEY_COUNTRY
countryName_min = 2
countryName_max = 2
stateOrProvinceName = State or Province Name (full name)
stateOrProvinceName_default = $ENV::KEY_PROVINCE
localityName = Locality Name (eg, city)
localityName_default = $ENV::KEY_CITY
0.organizationName = Organization Name (eg, company)
0.organizationName_default = $ENV::KEY_ORG
organizationalUnitName = Organizational Unit Name (eg, section)
commonName = Common Name (eg, your name or your server's hostname)
commonName_max = 64
emailAddress = Email Address
emailAddress_default = $ENV::KEY_EMAIL
emailAddress_max = 40
[ req_attributes ]
challengePassword = A challenge password
challengePassword_min = 4
challengePassword_max = 20
unstructuredName = An optional company name
[ usr_cert ]
basicConstraints=CA:FALSE
nsComment = "OpenSSL Generated Certificate"
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid,issuer:always
[ server ]
basicConstraints=CA:FALSE
nsCertType = server
nsComment = "OpenSSL Generated Server Certificate"
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid,issuer:always
[ v3_req ]
basicConstraints = CA:FALSE
keyUsage = nonRepudiation, digitalSignature, keyEncipherment
[ v3_ca ]
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid:always,issuer:always
basicConstraints = CA:true
[ crl_ext ]
authorityKeyIdentifier=keyid:always,issuer:always
Tapez ces lignes de commande et répondez aux questions posées.
Source ./vars
Mkdir keys
Touch keys/index.txt
Echo 01 > keys/serial
./build-dh
./build-ca
./build-key-server (nom du serveur)
./build-key (nom de votre client)
Copiez ces fichiers dans le dossier c:program filesopenvpnconfig
-ta.key
-ca.crt
-testeur.key
-testeur.crt
-serial
Insérez dans ce dossier le fichier "client.ovpn", c'est lui qu'il faudra lancer pour créer la connexion.
client
dev tun
dev-node openvpn
tls-client
remote votre IP fixe 5000
pull
ping 15
ping-restart 45
ping-timer-rem
persist-key
persist-tun
ca ca.crt
cert testeur.crt
key testeur.key
comp-lzo
verb 3
mute 20
mkdir /dev/net
mknod /dev/net/tun c 10 200
Ne pas oublier le chmod 755 sur etc/init.d/bridge-start et bridge-stop
192.168.0.1 192.168.0.2
Serveur VPN HUB Client Windows
xx.xx.xx.xx xx.xx.xx.xx
cd /usr/local/openvpn/
./openvpn - -config sample-config-files/server.conf
Effectuer une serie de ping du serveur vers le client et du client vers le serveur.
Si les ping ne repondent pas, verifié le cable, le pilote de la carte réseau, et s'assurer que le firewall n'est pas activer sur l'une ou l'autre machine.
Etablir une connexion à l'aide du réseau local.
Etablir une connexion à l'aide d'un modem.
Verifier les tables de routage:
-Routeur
@IP 255.255.255.128 @IP 10.117.12.3
@IP 255.255.255.128 @IP @IP
-Serveur
192.168.0.2 * 255.255.255.255 tun0
@IP * 255.255.255.128 eth1
@IP * 255.255.255.128 eth1
192.168.0.0 192.168.0.2 255.255.255.0 tun0
default @IP 0.0.0.0 eth1
-Parefeu
ouverture du port 1194; 5000 rediriger sur @IP
80; rediriger sur @IP
-routeur FT
votre IP fixe 255.255.255.128 @IP
Et voilà, tout devrais fonctionner !!!
|