Jag har skrivit ett bashskript för att kolla om VPN dör. Men vet ej hur jag dödar min uppkoppling idiotsäker? skall jag använda brandväggen eller på något annat sätt? detta är vad mina frågor handlar om :-) Tacksam för svar :-)
Okay, detta är mitt första inlägg, jag ber om ursäkt för alla nybörjarfel jag kan tänkas göra! Jag har två tydliga frågor. :-)
Jag har skrivit mitt första bash skript, jag är inte en van programmerare ...
Bakgrund.
I höstas efter NSA-affären skaffade jag en VPN-tunnel via relakks.com men jag insåg snabbt att VPN-anslutningen kunde stängas ner utan förvarning och så sitter man ändå där med en öppen oanonym dator!., och man kanske inte ens är hemma och vem som helst kan se vad man gör. :-S
Jag skrev därför skriptet "kolla_VPN" för att ständigt kontrollera om jag är uppkopplad. Se längre ner:
Relakks tilldelar alltid användaren en IP adress som alltid börjar på 93.182, så via kommandot ifconfig så hämtar mitt skript min IP och kontrollerar att den här 93.182.Om det inte är det skall den ögonblickligen stänga ner mitt internet. Är tanken.
Nu har jag två problem.
1.
Om jag låter skriptet kontrollera precis hela tiden blir datorn ganska varm eller fläkten börjar rusa som fan ... så jag la in en sekunds fördröjning med raden
sleep 1
skall det vara så? är det krävande att ständigt fråga ifconfig att returnera ett värde? eller var datorn redan för varm från början?
2.
Tanken var att om VPN stängs ner så skall skriptet stänga ner Internet detta tänkte jag göra med kommandot
nmckli con down id Min_Uppkoppling
Problemet är att datorn kopplar ju upp själv i alla fall.. självmant, automatiskt...
Detta har fått mig att fundera på om jag kan strypa internet idiotsäkert... och vilket kommando skall jag ha då? :-)
Är Brandväggen en väg att gå? kan jag anropa iptables eller skall jag anropa ufw? och eller hur skall jag göra? Vad skall jag skriva, jag kan nästan inget om iptables eller ufw,
Vilka kommandon i ett skript stänger av mitt internet idiotsäkert? :-)
Och med vilket kommando låser jag upp det igen? :-)
Ett annat problem är ju att jag antar att om jag skall anropa iptables så behöver jag göra det som root? ellers om superuser och då måste jag ju ange mitt lösenord i själva skriptfilen och jag vill helst inte ha mitt sudo lösenord drällande i dokument i datorn. Kan jag strypa allt internet för mig själv? .
Eller skall jag starta skriptet redan från början som superuser med typ
sudo ./kolla_VPN
Någon har sagt att man inte skall köra skript som root? eller är det bara root och inte som superuser?
Eller finns det något annat sätt att stänga av Internet på elektronisk anropar väg...Jag har hört att network manager som nmcli anropar lever sitt egna liv och kommer i konflikt med brandväggen, men brandväggen alltid är överlägsen ... men finns det något annat sätt, när man inte är hemma och kan dra ut sladden?
Tacksam för svar! och återigen jag ber om ursäkt om jag gått över gränser. Jag har sökt info ganska mycket men inte löst dessa problem. :-)
Om någon skulle vilja använda skriptet för egen del, be my guest...
#!/bin/bash
# Skalskrip som skall koppla ner internet när VPN inte fungerar.
# skrivet av Anonymous licence GNU
echo "Först kopplar vi upp mot internet"
echo " " # blankrad
echo " " # blankrad
echo " " # blankrad
nmcli -p con up id Min_Uppkoppling # kopplar upp mot internet
echo " " # blankrad
echo " " # blankrad
echo "Sen kopplar vi upp mot VPN"
echo " " # blankrad
nmcli -p con up id relakks # koppla upp vpn
echo " " # blankrad
echo " " # blankrad
Str1=`ifconfig | grep -o "93.182"` # hämtar min IP, grep med växeln -o
Str2="$Str1" # ger nästa variabel samma värde
echo " " # blankrad
echo "nu är har vi hämtat värdet med ifconfig"
echo " " # blankrad
echo "Min IP adress börjar på "
echo $Str1 # Och visar upp värdet
echo $Str2
echo " " # blankrad
echo " sov tre sekunder"
echo " " # blankrad
sleep 3
for (( ; ; )); do # skapar en oändlig loop
if [ "$Str1" = "$Str2" ] # Jämför om dom är samma.
then
echo " "
echo " "
echo "VPN fungerar fint...." # Berättar att VPN fungerar
echo "klockan är nu "
date # skriver ut klockslag och datum .
# echo " " # blankrad
Str1="Värdet är tömt...." # Jag tömmer värdet på variablen igen.
echo "Str1 är nu......" | echo $Str1
# echo " " # blankrad
Str1=`ifconfig | grep -o "93.182"` # hämta min IP igen
# echo "Nu är jag::"
echo $Str1
# echo " "
echo " Sov en sekund"
sleep 1
else
echo " " # blankrad
echo "nu kopplar Vi ner hela internet"
# nmcli -p con down id Min_Uppkoppling # koppla ner mitt internet
echo " "
fi
done
Okay, detta är mitt första inlägg, jag ber om ursäkt för alla nybörjarfel jag kan tänkas göra! Jag har två tydliga frågor. :-)
Jag har skrivit mitt första bash skript, jag är inte en van programmerare ...
Bakgrund.
I höstas efter NSA-affären skaffade jag en VPN-tunnel via relakks.com men jag insåg snabbt att VPN-anslutningen kunde stängas ner utan förvarning och så sitter man ändå där med en öppen oanonym dator!., och man kanske inte ens är hemma och vem som helst kan se vad man gör. :-S
Jag skrev därför skriptet "kolla_VPN" för att ständigt kontrollera om jag är uppkopplad. Se längre ner:
Relakks tilldelar alltid användaren en IP adress som alltid börjar på 93.182, så via kommandot ifconfig så hämtar mitt skript min IP och kontrollerar att den här 93.182.Om det inte är det skall den ögonblickligen stänga ner mitt internet. Är tanken.
Nu har jag två problem.
1.
Om jag låter skriptet kontrollera precis hela tiden blir datorn ganska varm eller fläkten börjar rusa som fan ... så jag la in en sekunds fördröjning med raden
sleep 1
skall det vara så? är det krävande att ständigt fråga ifconfig att returnera ett värde? eller var datorn redan för varm från början?
2.
Tanken var att om VPN stängs ner så skall skriptet stänga ner Internet detta tänkte jag göra med kommandot
nmckli con down id Min_Uppkoppling
Problemet är att datorn kopplar ju upp själv i alla fall.. självmant, automatiskt...
Detta har fått mig att fundera på om jag kan strypa internet idiotsäkert... och vilket kommando skall jag ha då? :-)
Är Brandväggen en väg att gå? kan jag anropa iptables eller skall jag anropa ufw? och eller hur skall jag göra? Vad skall jag skriva, jag kan nästan inget om iptables eller ufw,
Vilka kommandon i ett skript stänger av mitt internet idiotsäkert? :-)
Och med vilket kommando låser jag upp det igen? :-)
Ett annat problem är ju att jag antar att om jag skall anropa iptables så behöver jag göra det som root? ellers om superuser och då måste jag ju ange mitt lösenord i själva skriptfilen och jag vill helst inte ha mitt sudo lösenord drällande i dokument i datorn. Kan jag strypa allt internet för mig själv? .
Eller skall jag starta skriptet redan från början som superuser med typ
sudo ./kolla_VPN
Någon har sagt att man inte skall köra skript som root? eller är det bara root och inte som superuser?
Eller finns det något annat sätt att stänga av Internet på elektronisk anropar väg...Jag har hört att network manager som nmcli anropar lever sitt egna liv och kommer i konflikt med brandväggen, men brandväggen alltid är överlägsen ... men finns det något annat sätt, när man inte är hemma och kan dra ut sladden?
Tacksam för svar! och återigen jag ber om ursäkt om jag gått över gränser. Jag har sökt info ganska mycket men inte löst dessa problem. :-)
Om någon skulle vilja använda skriptet för egen del, be my guest...
#!/bin/bash
# Skalskrip som skall koppla ner internet när VPN inte fungerar.
# skrivet av Anonymous licence GNU
echo "Först kopplar vi upp mot internet"
echo " " # blankrad
echo " " # blankrad
echo " " # blankrad
nmcli -p con up id Min_Uppkoppling # kopplar upp mot internet
echo " " # blankrad
echo " " # blankrad
echo "Sen kopplar vi upp mot VPN"
echo " " # blankrad
nmcli -p con up id relakks # koppla upp vpn
echo " " # blankrad
echo " " # blankrad
Str1=`ifconfig | grep -o "93.182"` # hämtar min IP, grep med växeln -o
Str2="$Str1" # ger nästa variabel samma värde
echo " " # blankrad
echo "nu är har vi hämtat värdet med ifconfig"
echo " " # blankrad
echo "Min IP adress börjar på "
echo $Str1 # Och visar upp värdet
echo $Str2
echo " " # blankrad
echo " sov tre sekunder"
echo " " # blankrad
sleep 3
for (( ; ; )); do # skapar en oändlig loop
if [ "$Str1" = "$Str2" ] # Jämför om dom är samma.
then
echo " "
echo " "
echo "VPN fungerar fint...." # Berättar att VPN fungerar
echo "klockan är nu "
date # skriver ut klockslag och datum .
# echo " " # blankrad
Str1="Värdet är tömt...." # Jag tömmer värdet på variablen igen.
echo "Str1 är nu......" | echo $Str1
# echo " " # blankrad
Str1=`ifconfig | grep -o "93.182"` # hämta min IP igen
# echo "Nu är jag::"
echo $Str1
# echo " "
echo " Sov en sekund"
sleep 1
else
echo " " # blankrad
echo "nu kopplar Vi ner hela internet"
# nmcli -p con down id Min_Uppkoppling # koppla ner mitt internet
echo " "
fi
done