web-dev-qa-db-fra.com

Comment puis-je voir si je suis connecté via VPN?

J'utilise Juniper Networks (un programme Java qui établit une connexion VPN).

Existe-t-il une commande en ligne de commande permettant de vérifier si je suis connecté à Juniper?

12
Martin Thoma

Cela ressemble à une sorte de VPN SSL.

Si vous exécutez ifconfig -a, vous devriez voir quelque chose comme tunXci-dessous:

tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          inet addr:  P-t-P:  Mask:
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1300  Metric:1
          RX packets:10 errors:0 dropped:0 overruns:0 frame:0
          TX packets:24 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:500 
          RX bytes:1435 (1.4 KB)  TX bytes:1677 (1.6 KB)

Ou si vous utilisez IPsec (par exemple, IKEv2 + IPsec basé sur strongSwan), ifconfig -a affichera un périphérique tunnel (tunX) comme ci-dessous:

tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          inet addr:192.168.11.2  P-t-P:192.168.11.2  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:500 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

De plus, vous pouvez utiliser ip tuntap show pour voir s’il existe des appareils tun/tap permettant de déterminer si un VPN est utilisé.

ip tuntap show
tun0: tun
16
Terry Wang

Vous pouvez également vérifier vos itinéraires avec la commande route. Vous verrez plus d'itinéraires comme d'habitude et vers différentes destinations.

Exemple

Connecté sans genévrier:

moose@pc07:~$ route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.0.0     *               255.255.255.0   U     2      0        0 wlan0
link-local      *               255.255.0.0     U     1000   0        0 wlan0
default         192.168.0.1     0.0.0.0         UG    0      0        0 wlan0

Connecté avec Juniper:

moose@pc07:~$ route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.0.1     *               255.255.255.255 UH    1      0        0 wlan0
vpn.kit.edu     192.168.0.1     255.255.255.255 UGH   1      0        0 wlan0
192.168.0.0     *               255.255.255.0   U     2      0        0 wlan0
link-local      *               255.255.0.0     U     1000   0        0 wlan0
default         vpn-cl-192-62.s 0.0.0.0         UG    1      0        0 tun0
default         192.168.0.1     0.0.0.0         UG    10     0        0 wlan0
8
dre

L'utilisation des commandes juniper ncdiagvous donnera ces informations.

  • Utilisez ncdiag -t pour un test de tunnel.
  • Utilisez ncdiag -h pour les informations sur l'hôte.

Plus de détails:

$ cd ~/.juniper_networks/network_connect
~/.juniper_networks/network_connect$ file !$
file ncdiag
ncdiag: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.2.5, stripped
~/.juniper_networks/network_connect$ ./ncdiag 
    usage: ./ncdiag -A [or]
    usage: ./ncdiag -i -s -d -t -h -a -r <hostname> -k -v
     -A : All tests
     -i : installation test 
     -s : service test 
     -d : driver tests 
     -t : tunnel test 
     -h : Host info 
     -a : adaptor test 
     -r : resolve Host 
     -k : kill NC gui 
     -v : version   

~/.juniper_networks/network_connect$ ./ncdiag -t
+==============================================================================+
|   Tests:          |        Results:                      |
+==============================================================================+
       o  NC Diagnostics            
             NC Tunnel Test          Established

       Finished running tests 
+==============================================================================+
~/.juniper_networks/network_connect$ ./ncdiag -h
+==============================================================================+
|   Tests:          |        Results:                      |
+==============================================================================+

   o  Host Details              
         Hostname            tau
         Domainname          (none)
         IP Routing Enabled      Yes
         IP Loopback test        Passed
         Nameserver Details     
           8.8.8.8       Ping Passed

           8.8.6.6       Ping Passed
         Gateway Ping Test           
            10.20.20.1       Ping Passed

   Finished running tests 

+ ============================================== ==============================

1
belacqua

Solution alternative (Gnome)


Vérifie quand il tourne

➜ ifconfig -a | grep vpn | grep RUNNING
1:179:vpn0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST>  mtu 1334

Vérifie s'il n'est pas en cours d'exécution

➜ ifconfig -a G vpn
179:vpn0: flags=4240<POINTOPOINT,NOARP,MULTICAST>  mtu 1334

afin que vous puissiez vérifier UP, EN COURS D'EXÉCUTION via grep comme indiqué ci-dessous

ifconfig -a | grep vpn | grep RUNNING
vpn_running=$?

if [ $vpn_running -ne 0 ]; then

    echo "VPN <span color='yellow'><tt>UP</tt></span> | iconName=utilities-terminal-symbolic bash='nmcli con up id VPN' terminal=false"
else
    echo "VPN <span color='red'><tt>(DOWN)</tt></span> | iconName=utilities-terminal-symbolic bash='nmcli con down id VPN' terminal=false"
fi

J'utilise fantastique argo plug-in gnome Shell, et ci-dessus fait partie de mon script afin que je puisse lancer un VPN à partir de la barre d'outils ( ou le fermer)

0
DmitrySemenov

Dans mon cas, le périphérique est cscotun0 (j'utilise Cisco Anyconect Secure Mobility Client) plutôt que tun0.

Par conséquent (sur la base de la réponse de Terry Wang et du commentaire de zipizap), si vous ne connaissez pas le nom de l'appareil, vous pouvez utiliser:

if [ "0" == `ifconfig | grep tun0 | wc -l` ]; then echo "n"; else echo "y"; fi

ou, si vous connaissez le nom de l'appareil:

if ifconfig cscotun0 &>/dev/null; then echo "y"; else echo "n"; fi
0