Connection Automatique au démarrage au VPN (AVEC PUREVPN) + Partage de la connexion

Bonjour,

Ce que je veux faire, c’est pas du tout recommandé, mais je compte sur votre aide.

Je vous explique le contexte.

J’ai une VM avec deux carte réseau qui se connecte à un VPN et qui NAT la connexion VPN.

Tout cela fonctionne très bien.

Si le serveur ou la VM redémarre, l’administrateur réseaux dois entrer l’identifiant ROOT sans mot de passe et un scripte automatique se lance pour connecter lelinux au VPN et le partager.

Pouvez-vous m’aidé à supprimé au démarrage de mon linux l’authentification par mot de passe, afin que le terminal se lance avec le login ROOT afin d’executer le script automatiquement ?

Le script a été rajouté par l’utilisateur dans /root/.bashrc

J’ai trouvé une piste à modifier directement dans le GRUB, mais je ne sais pas quelle modification à affecté

image

J’ai rajouter ça

image

mais du coups j’ai plus de carte réseaux et mon script ne s’exécute pas

je ne sais pas si je doit toucher directement le GRUP ou un fichier de config de linux

Ce n’est pas la bonne façon de faire. Il vaudrait mieux lancer le script automatiquement au démarrage via /etc/rc.local, un script d’init, une tâche cron, une unité systemd… sans ouverture de session.

Normal. As-tu bien compris ce que fait ce paramètre et ce que cela implique ? Il lance un shell bash au lieu de lancer /sbin/init qui gère l’initialisation normale du système et des services.

2 J'aime

RE
Si je crée un service sa peux fonctionné avec cette ligne ?

openvpn /OPEN_VPN/Files/UDP/de2-ovpn-udp.ovpn

Normalement quand tu as installé openvpn, l’utilisation des systemctl enable/disable suffit à faire démarrer l’application automatiquement.

c’est a connexion que je veux mètre en place en tant que service. c’est possible ou pas ?

openvpn /OPEN_VPN/Files/UDP/de2-ovpn-udp.ovpn

Je voudrais que openVPN execute ce fichier en tant que service.
On peux le faire en tant que service ?

Donc comment je pourrais faire pour que mon VPN se connecte au démarrage du PC ?

dans le fichier /etc/default/openvpn il y a la possibilité de démarrer des VPN particuliers:

# This is the configuration file for /etc/init.d/openvpn

#
# Start only these VPNs automatically via init script.
# Allowed values are "all", "none" or space separated list of
# names of the VPNs. If empty, "all" is assumed.
# The VPN name refers to the VPN configutation file name.
# i.e. "home" would be /etc/openvpn/home.conf
#
# If you're running systemd, changing this variable will
# require running "systemctl daemon-reload" followed by
# a restart of the openvpn service (if you removed entries
# you may have to stop those manually)
#
#AUTOSTART="all"
#AUTOSTART="none"
#AUTOSTART="home office"
#
# WARNING: If you're running systemd the rest of the
# options in this file are ignored.
#
# Refresh interval (in seconds) of default status files
# located in /var/run/openvpn.$NAME.status
# Defaults to 10, 0 disables status file generation
#
#STATUSREFRESH=10
#STATUSREFRESH=0
# Optional arguments to openvpn's command line
OPTARGS=""
#
# If you need openvpn running after sendsigs, i.e.
# to let umountnfs work over the vpn, set OMIT_SENDSIGS
# to 1 and include umountnfs as Required-Stop: in openvpn's
# init.d script (remember to run insserv after that)
#
OMIT_SENDSIGS=0

sur les paramètres AUTOSTART

:rofl: sa deviens super compliqué pour moi. Si j’ai bien compris, la solution n’est pas adaptée, car je n’essaie pas de me connecter sur un serveur OPENVPN d’une autre DEBIAN, mais d’un OPENVPN d’un fournisseur d’accès VPN pour simplement cacher l’adresse IP.

En clair notre fournisseur nous a envoyer un fichier VPN avec un fichier texte qui contient les identifiant et mot de passe, et en exécutant la commande suivante :

openvpn de2-ovpn-udp.ovpn

Ça se connecte tout seul (car on a automatisé l’authentification).
J’ai aucune connaissance en openvpn et des connaissances de base en réseau.

Je suis incapable d’automatiser tout ça, c’est pour cella que j’ai trouver une solution à l’inspecteur gadget :blush: en mettant la ligne openvpn de2-ovpn-udp.ovpn tout en bas du fichier /root/.bashrc

SA fonctionne, mais si pour x raison le serveur redémarre, il faut s’authentifier pour que la connexion se fasse automatiquement

Si, la solution est adaptée.

Le fichier de config que te montre @Zargos indique que tu peux donner en paramètre d’AUTOSTART un fichier de configuration openvpn (/OPEN_VPN/Files/UDP/de2-ovpn-udp.ovpn dans ton cas).
(OpenVPN se fiche que tu te connectes à un serveur openvpn Debian ou autre, heureusement)

Donc, tu n’a plus qu’à éditer ce fichier de configuration du service openvpn situé /etc/default/openvpn pour qu’il ressemble à ceci:

# This is the configuration file for /etc/init.d/openvpn

#
# Start only these VPNs automatically via init script.
# Allowed values are "all", "none" or space separated list of
# names of the VPNs. If empty, "all" is assumed.
# The VPN name refers to the VPN configutation file name.
# i.e. "home" would be /etc/openvpn/home.conf
#
# If you're running systemd, changing this variable will
# require running "systemctl daemon-reload" followed by
# a restart of the openvpn service (if you removed entries
# you may have to stop those manually)
#
#AUTOSTART="all"
#AUTOSTART="none"
#AUTOSTART="home office"
AUTOSTART="/OPEN_VPN/Files/UDP/de2-ovpn-udp.ovpn"
#
# WARNING: If you're running systemd the rest of the
# options in this file are ignored.
#
# Refresh interval (in seconds) of default status files
# located in /var/run/openvpn.$NAME.status
# Defaults to 10, 0 disables status file generation
#
#STATUSREFRESH=10
#STATUSREFRESH=0
# Optional arguments to openvpn's command line
OPTARGS=""
#
# If you need openvpn running after sendsigs, i.e.
# to let umountnfs work over the vpn, set OMIT_SENDSIGS
# to 1 and include umountnfs as Required-Stop: in openvpn's
# init.d script (remember to run insserv after that)
#
OMIT_SENDSIGS=0

C’est normal, le fichier .bashrc n’est lu qu’à la connexion de l’utilisateur sur son shell bash.

Si tu veux faire exécuter automatiquement un script ou une commande au démarrage de la machine, il faut passer par une des solutions listées plus haut par @PascalHambourg . Mais dans le cas présent, on conseille d’utiliser le fichier de configuration du service openvpn, c’est plus « propre ».

haaaaaaaaaaaaaaaaaaaa, Super, je teste ce soir MERCI

Si tu veux faire exécuter automatiquement un script ou une commande au démarrage de la machine, il faut passer par une des solutions listées plus haut par @PascalHambourg . Mais dans le cas présent, on conseille d’utiliser le fichier de configuration du service openvpn, c’est plus « propre ».

Wi, parfaitement, tu as raisons

il se passe rien

J’ai créer un service mais il ne se lance pas,
Je me suis documenté sur ce sujet mais j’ai pas très bien compris
voici ce que j’ai mis

[Service]
Environment=/OPEN_VPN/Files/UDP/
Type=oneshot

ExecStart=/usr/sbin/openvpn /OPEN_VPN/Files/UDP/de2-ovpn-udp.ovpn
RemainAfterExit=yes
User=root

[Install]
WantedBy=multi-user.target

En fait j’ai adapté un script que j’ai trouvé

Quand je le lance

root@vpn:/OPEN_VPN/Files/TCP# service PureVPB start
Job for PureVPB.service failed because the control process exited with error code.
See "systemctl status PureVPB.service" and "journalctl -xe" for details.
root@vpn:/OPEN_VPN/Files/TCP# 

J’ai une piste

image

je crois qu’il trouve pas mon fichier Key.txt

ca marche :slight_smile:
c’etait bien ça

il me reste un dernier truc et j’ai terminé, comment sauvegardé mes règle IPTABLE au démarrage de mon linux ?

Je vais pouvoir remettre un password root à mon linux

Voici ce qui ya dans mon /etc.bashcr.d

#NAT le TUN
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

#Nat le ETH0
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

# bloque Internet si VPN eteint
iptables -A FORWARD -i eth0 -o eth0 -j REJECT
iptables -A FORWARD -i eth0 -o eth1 -j REJECT
iptables -t nat -A POSTROUTING -o tun1 -j MASQUERADE

Bonjour,

Installe le paquet iptables-persistent et il chargera les regles au demarrage sinon tu dois pouvoir utiliser post-up post-down… disponible dans le fichier interface : interfaces(5) — ifupdown — Debian bullseye — Debian Manpages

Sa fonctionne Merci
Dossier clôturé.

Merci a vous tous, vous avez été génial et vous m’avez conseillé sur une solution meilleur que mon idée de départ.

Je change le titre afin qu’il soit plus parlant avec la mention résolu

Voici ce que j’ai fait et sa fonctionne

mkdir /OVPN/
cd OPENVPN/
wget https://d32d3g1fvkpl8y.cloudfront.net/h ... +Files.zip
unzip New+OVPN+Files.zip
mv 'New OVPN Files'/ Start
cd Start/TCP/
touch Passwd.Key
echo "Identifiant_PureVPN" > Passwd.Key
echo "Password_PureVPN" >> Passwd.Key
chmod 777 *
nano at2-ovpn-tcp.ovpn ## Par exemple

Rechercher la ligne :

auth-user-pass

et modifiez la par :

auth-user-pass Passwd.Key

Créer un service de démarrage Automatique

chmod 777 -R /etc/systemd/system
nano /etc/systemd/system/purevpn.service

Ajouter ces lignes :

[Service]
Environment=/OPEN_VPN/Files/UDP/
#Type=oneshot

ExecStart=/usr/sbin/openvpn /OPEN_VPN/Files/UDP/de2-ovpn-udp.ovpn
RemainAfterExit=yes
User=root

[Install]
WantedBy=multi-user.target
systemctl enable purevpn.service

##Partage de la connection sur ETH0 et ETH1
#####################################################

echo 1 > /proc/sys/net/ipv4/ip_forward

#NAT le TUN
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

#Nat le ETH0
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

# bloque Internet si VPN eteint
iptables -A FORWARD -i eth0 -o eth0 -j REJECT
iptables -A FORWARD -i eth0 -o eth1 -j REJECT
iptables -t nat -A POSTROUTING -o tun1 -j MASQUERADE

apt  iptables-persistent
nano /etc/iptables/rules.v4 # décommenter la ligne ip_forward et passer sa valeur à 1
1 J'aime