Conf-network: differenze tra le versioni
(→Download) |
(→Script) |
||
| Riga 837: | Riga 837: | ||
</pre> |
</pre> |
||
* Autore: Ansa89 |
* Autore: Ansa89 |
||
| + | |||
| + | |||
| + | = News = |
||
| + | |||
| + | Sezione dedicata alla spiegazione delle eventuali migliorie che vengono apportate allo script. |
||
| + | |||
| + | - V 1.0 --> Prima release...Attendo qualche feedback per eventuali modifiche |
||
| + | |||
| + | |||
| + | = Feedback = |
||
| + | |||
| + | Per commenti e suggerimenti inviatemi una e-mail a |
||
| + | |||
| + | ansa89[AT]slacky[DOT]it |
||
| + | |||
| + | |||
| + | Oppure venite sul mio sito internet |
||
| + | |||
| + | [http://stiiv.netsons.org http://stiiv.netsons.org] |
||
| + | |||
| + | |||
| + | HAVE A LOT OF FUN |
||
Versione delle 01:08, 6 nov 2008
Indice |
Descrizione
Questo è il mio secondo script (il primo è stato Compiz-git) e questa volta ero indaffarato nelle configurazioni della mia rete...
Così è nato Conf-ntwork!
Usando questo script anche gli utenti meno esperti potranno configurare la loro rete (wireless o cablata) in pochi passi e senza bisogno dell'interfaccia grafica (dunque è utile se per caso dovete connettervi ad internet proprio per cercare informazioni su come configurare X.org).
Lo script è un po' lungo, ed è stato testato su Slackware 12.1 -- kernel 2.6.26.3 (ma dovrebbe funzionare con qualsiasi distro...).
Requisiti
NET-TOOL --> per i comandi di base
WIRELESS-TOOL --> per configurare le reti wireless
DHCPCD --> per poter ricevere l'ip da un server dhcp
WPA_SUPPLICANT --> wpa_supplicant
Download
Script
Di seguito è riportato il codice dello script.
Versione 1.0
#!/bin/bash
# Script che aiuta l'utente nella configurazione dei dispositivi di rete
# (sia cablati, sia wireless)
#
# Per quanto riguarda il protocollo WPA-EAP di wpa_supplicant, non ho
# avuto modo di testarlo in quanto non dispongo degli strumenti necessari.
# Il resto dovrebbe funzionare :-)
#
# Script creato il 29/9/2008 da Ansa89 (aka h3r0)
# File di configurazione di wpa_supplicant
CONF_WPA="/root/.wpa_supplicant.conf"
# Funzione per controllare le dipendenze
check_dep () {
# Controllo chi esegue lo script
if [ "$(whoami)" != "root" ]; then
echo
echo "**ERRORE**"
echo "Devi essere ROOT per eseguire questo script!"
echo
exit 1
fi
# Controllo se i net-tool sono installati
if [ -z "$(which ifconfig)" -o -z "$(which route)" ]; then
echo
echo "**ERRORE**"
echo "Devi avere installato i NET-TOOL per eseguire questo script!"
echo
exit 1
fi
# Controllo se i wireless-tool sono installati
if [ -z "$(which iwlist)" -o -z "$(which iwconfig)" ]; then
echo
echo "**ERRORE**"
echo "Devi avevre installato i WIRELESS-TOOL per eseguire questo script!"
echo
exit 1
fi
# Controllo se dhcpcd e' installato
if [ -z "$(which dhcpcd)" ]; then
echo
echo "**ERRORE**"
echo "Devi avere installato DHCPCD per eseguire questo script!"
echo
exit 1
fi
# Controllo se wpa_supplicant e' installato
if [ -z "$(which wpa_supplicant)" ]; then
echo
echo "**ERRORE**"
echo "Devi avere installato WPA_SUPPLICANT per eseguire questo script!"
echo
exit 1
fi
}
# Funzione per impostare le variabili degli eseguibili
utilities () {
IFCONFIG=`which ifconfig`
ROUTE=`which route`
DHCPCD=`which dhcpcd`
IWCONFIG=`which iwconfig`
IWLIST=`which iwlist`
WPA_SUPPLICANT=`which wpa_supplicant`
}
# Funzione per spegnere le interfacce
smorza () {
# Guardo quali interfacce sono accese
if [ -z "$1" ]; then
IF=`$IFCONFIG | grep -v lo | cut -d " " -f 1`
else
IF=$1
fi
for i in $IF; do
echo -n "Devo spegnere $i? (s/n) "
read risp
if [ -z "$risp" -o "$risp" == "s" ]; then
echo -n "Spengo $i..."
$DHCPCD -k $i &> /dev/null
$IFCONFIG $i down &> /dev/null
echo "Fatto"
echo
# Controllo se e' un'interfaccia wireless
if ! [ -z "$(cat /proc/net/wireless | grep $i)" ]; then
# Chiedo se devo fermare anche wpa_supplicant
echo -n "Fermo anche wpa_supplicant? (s/n) "
read risp
if [ -z "$risp" -o "$risp" == "s" ]; then
killall wpa_supplicant &> /dev/null
kill -9 `ps ux | grep wpa | grep -v grep | cut -d " " -f 7` &> /dev/null
echo "Wpa_supplicant e' stato fermato."
echo
elif [ "$risp" == "n" ]; then
echo
echo "Wpa_supplicant non e' stato fermato."
echo
else
echo
echo "**ERRORE**"
echo
exit 1
fi
$IWCONFIG $i essid off ap off &> /dev/null
$IWCONFIG $i key off &> /dev/null
$IWCONFIG $i mode managed &> /dev/null
$IFCONFIG $i up
fi
echo
elif [ "$risp" == "n" ]; then
echo "$i non e' stata spenta"
else
echo
echo "**ERRORE**"
echo
exit 1
fi
done
}
# Funzione per configurare le reti cablate
wired () {
# Controllo il parametro passato allo script
if [ -z "$1" ]; then
# Se non e' stato passato niente cerco le interfacce
echo -n "Cerco le interfacce... "
NUM=`wc -l /proc/net/dev | cut -d " " -f 1`
if [ $NUM -gt 3 ]; then
IF=`tail -n $(($NUM-3)) /proc/net/dev | cut -d " " -f 3 | cut -d ":" -f 1`
else
echo
echo "**ERRORE**"
echo "Nessuna scheda ethernet trovata!"
echo
exit 1
fi
# Tolgo le interfacce wireless perche' non interessano
if [ -e /proc/net/wireless ]; then
NUM=`wc -l /proc/net/wireless | cut -d " " -f 1`
if [ $NUM -gt 2 ]; then
IF2=`tail -n $(($NUM-2)) /proc/net/wireless | cut -d " " -f 3 | cut -d ":" -f 1`
OLD_IF=$IF
IF=""
for i in $OLD_IF; do
if [ -z "$(echo $IF2 | grep $i)" ]; then
IF="$IF $i"
fi
done
fi
fi
echo "Fatto"
# Faccio scegliere l'interfaccia
echo "Ho trovato queste intefacce wired:"
for i in $IF; do
IF2=$i
echo $i
done
echo
echo "Quale vuoi usare per la connessione?"
echo -n "($IF2) "
read DEV
if [ -z "$DEV" ]; then
DEV=$IF2
fi
else
NUM=`wc -l /proc/net/dev | cut -d " " -f 1`
if tail -n $(($NUM-3)) /proc/net/dev | cut -d " " -f 3 | cut -d ":" -f 1 | grep $1 &> /dev/null; then
DEV=$1
else
echo
echo "**ERRORE**"
echo "Devi inserire un'interfaccia valida!"
echo
exit 1
fi
fi
# Spengo l'interfaccia prima di configurarla (uso la funzione smorza)
smorza $DEV
# Chiedo che tipo di connessione e'
echo -n "Il tuo IP ti viene assegnato da un server DHCP? (s/n) "
read risp
if [ -z "$risp" -o "$risp" == "s" ]; then
# Configurazione rete con IP dinamici
echo "Avvio il demone dhcpcd..."
$DHCPCD -t 20 -d $DEV
sleep 5
if [ "$(ps aux | grep dhcpcd | wc -l | cut -d " " -f 1)" -gt 1 ]; then
echo "Fatto!"
echo "Hai configurato la tua rete cablata con successo! :-)"
echo
else
echo "Non sono riuscito ad avviare dhcpcd!"
echo "Prova ad eseguire '$DHCPCD -d $DEV' come utente root"
echo
exit 1
fi
elif [ "$risp" == "n" ]; then
# Configurazione rete con IP statici
echo -n "Inserisci l'IP per $DEV: "
read IPADDR
if [ -z "$IPADDR" ]; then
echo "**ERRORE**"
echo "Devi inserire un IP per configurare la scheda!"
exit 1
fi
echo -n "Inserisci la maschera di rete (255.255.255.0): "
read NETMASK
if [ -z "$NETMASK" ]; then
NETMASK="255.255.255.0"
fi
echo "Inserisci l'IP del broadcast:"
echo -n "(puo' essere lasciato vuoto se si e' incerti) "
read BROADCAST
echo "Inserisci l'IP del gateway:"
echo -n "(necessario per la connessione ad internet attraverso $DEV) "
read GW
echo "Imposto i parametri per $DEV..."
if [ -z "$BROADCAST" ]; then
$IFCONFIG $DEV $IPADDR netmask $NETMASK up
else
$IFCONFIG $DEV $IPADDR netmask $NETMASK broadcast $BROADCAST up
fi
if ! [ -z "$GW" ]; then
$ROUTE add default gw $GW
fi
echo "nameserver 127.0.0.1" > /etc/resolv.conf
echo "Fatto!"
echo "Hai configurato la tua rete cablata con successo! :-)"
echo
else
echo
echo "**ERRORE**"
echo
exit 1
fi
}
# Funzione per configurare le reti wireless
wireless () {
if [ -z $1 ]; then
echo "Cerco le interfacce..."
if [ -e /proc/net/wireless ]; then
NUM=`wc -l /proc/net/wireless | cut -d " " -f 1`
if [ $NUM -gt 2 ]; then
IF=`tail -n $(($NUM-2)) /proc/net/wireless | cut -d " " -f 3 | cut -d ":" -f 1`
else
echo
echo "**ERRORE**"
echo "Nessuna scheda wireless trovata!"
echo
exit 1
fi
else
echo
echo "**ERRORE**"
echo "Nessuna scheda wireless trovata!"
echo
exit 1
fi
echo "Fatto"
echo "Ho trovato queste interfacce wireless:"
for i in $IF; do
IF2=$i
echo $i
done
echo
echo "Quale vuoi usare per la connessione?"
echo -n "($IF2) "
read DEV
if [ -z "$DEV" ]; then
DEV=$IF2
fi
else
if [ -e /proc/net/wireless ]; then
NUM=`wc -l /proc/net/wireless | cut -d " " -f 1`
if tail -n $(($NUM-2)) /proc/net/wireless | cut -d " " -f 3 | cut -d ":" -f 1 | grep $1; then
DEV=$1
else
echo
echo "**ERRORE**"
echo "Devi inserire un'interfaccia wireless valida!"
echo
exit 1
fi
fi
fi
# Spengo l'interfaccia prima di configurarla (uso la funzione smorza)
smorza $DEV
# Cerco le reti wireless
echo "Scanning delle reti con $DEV..."
echo
$IWLIST $DEV scan
echo
echo "Non farti prendere dal panico per l'eventuale eccessiva lunghezza dell'output"
# Incomincio a chiedere i vari parametri
# ESSID
echo -n "cerca la tua rete e inserisci l'ESSID (il nome): "
read ESSID
if [ -z "$ESSID" ]; then
echo
echo "**ERRORE**"
echo "Devi inserire il nome di una rete a cui connettersi!"
echo
exit 1
fi
# CHANNEL
echo -n "Inserisci il channel della rete (non la frequenza!): "
read CHAN
if [ -z "$CHAN" ]; then
echo
echo "**ERRORE**"
echo "Devi inserire il canale della rete scelta!"
echo
exit 1
fi
# MODE
echo -n "Inserisci il tipo di rete: managed (con access point) o ad-hoc (senza access point): "
read MODE
if [ -z "$MODE" ]; then
MODE="managed"
fi
# Chiedo se serve la password
echo -n "La rete necessita di password? (s/n) "
read risp
if [ -z "$risp" -o "$risp" == "s" ]; then
# Quale tipo di password?
echo "WEP o WPA?"
echo "(N.B. WPA e' solo per reti con access point!)"
echo -n "(wpa) "
read TYPE
if [ [ -z "$TYPE" -o "$TYPE" == "wpa" -o "$TYPE" == "WPA" ] -a [ "$MODE" == "managed" -o "$MODE" == "Managed"] ]; then
# WPA
echo "Hai scelto WPA"
echo "ctrl_interface=/var/run/wpa_supplicant" > $CONF_WPA
echo "ctrl_interface_group=0" >> $CONF_WPA
echo "eapol_version=1" >> $CONF_WPA
echo "ap_scan=1" >> $CONF_WPA
echo "fast_reauth=1" >> $CONF_WPA
echo "" >> $CONF_WPA
chmod 600 $CONF_WPA
# Chiedo quale tipo di WPA
echo "Che tipo di criptaggio devo usare?"
echo -e "\tWPA-PSK\n\tWPA-EAP\n\tNONE\t(per chiavi WEP)"
read TYPE
case "$TYPE" in
# WPA-PSK
WPA-PSK)
# Chiedo la password
echo "Adesso dovrai inserire la password."
echo "Vuoi che i caratteri digitati vengano visualizzati? (s/n) "
read risp
echo -n "Inserisci la password: "
if [ -z "$risp" -o "$risp" == "n" ]; then
read -s PSK
elif [ "$risp" == "s" ]; then
read PSK
else
echo
echo "**ERRORE**"
echo
exit 1
fi
# Creo il file di configurazione
echo -n "Creo il file di configurazione..."
echo "network={" >> $CONF_WPA
echo -e "\tscan_ssid=1" >> $CONF_WPA
echo -e "\tssid=\"$ESSID\"" >> $CONF_WPA
echo -e "\tmode=0" >> $CONF_WPA
echo -e "\tproto=WPA WPA2" >> $CONF_WPA
echo -e "\tkey_mgmt=WPA-PSK" >> $CONF_WPA
echo -e "\tpairwise=CCMP TKIP" >> $CONF_WPA
echo -e "\tgroup=CCMP TKIP WEP104 WEP40" >> $CONF_WPA
echo -e "\tpsk=\"$PSK\"" >> $CONF_WPA
echo "}" >> $CONF_WPA
echo "Fatto"
;;
# WPA-EAP
WPA-EAP)
# Chiedo quale tipo di EAP
echo "Quale tipo di EAP vuoi usare?"
echo -e "\tTLS\n\tPEAP\n\tTTLS"
read TYPE
case "$TYPE" in
# WPA-EAP --> TLS
TLS)
# Chiedo l'identita'
echo -n "Inserisci la tua identita': "
read ID
if [ -z "$ID" ]; then
echo
echo "**ERRORE**"
echo "Devi inserire il tuo identificativo per connetterti alla rete!"
echo
exit 1
fi
# Chiedo il file del certificato
echo "Inserisci il nome del file che contiene"
echo -n "l'autorizzazione del server (comprensivo di path assoluto!): "
read CA
if [ -z "$CA" -o ! -e $CA ]; then
echo
echo "**ERRORE**"
echo "Devi inserire il nome del certificato del server, comprensivo di path assoluto!"
echo
exit 1
fi
# Chiedo il file del certificato
echo "Inserisci il nome del file che contiene "
echo -n "il certificato del client (comprensivo di path assoluto!): "
read CLIENT
if [ -z "$CLIENT" -o ! -e $CLIENT ]; then
echo
echo "**ERRORE**"
echo "Devi inserire il nome del certicficato del tuo client, comprensivo di path assoluto!"
echo
exit 1
fi
# Chiedo il file della chiave privata
echo "Inserisci il nome del file che contiene"
echo -n "la chiave privata (comprensivo di path assoluto!): "
read KEY
if [ -z "$KEY" -o ! -e $KEY ]; then
echo
echo "**ERRORE**"
echo "Devi inserire il nome della chiave primaria, comprensivo di path assololuto!"
echo
exit 1
fi
# Chiedo la password
echo "Adesso dovrai inserire la password."
echo -n "Vuoi che i caratteri digitati vengano visualizzati? (s/n) "
read risp
echo -n "Inserisci la password: "
if [ -z "$risp" -o "$risp" == "n" ]; then
read -s PASSWD
elif [ "$risp" == "s" ]; then
read PASSWD
else
echo
echo "**ERRORE**"
echo
exit 1
fi
# Creo il file di configurazione
echo -n "Creo il file di configurazione..."
echo "network={" >> $CONF_WPA
echo -e "\tscan_ssid=1" >> $CONF_WPA
echo -e "\tssid=\"$ESSID\"" >> $CONF_WPA
echo -e "\tmode=0" >> $CONF_WPA
echo -e "\tproto=WPA WPA2" >> $CONF_WPA
echo -e "\tkey_mgmt=WPA-EAP" >> $CONF_WPA
echo -e "\tpairwise=CCMP TKIP" >> $CONF_WPA
echo -e "\tgroup=CCMP TKIP WEP104 WEP40" >> $CONF_WPA
echo -e "\teap=TLS" >> $CONF_WPA
echo -e "\tidentity=\"$ID\"" >> $CONF_WPA
echo -e "\tca_cert=\"$CA\"" >> $CONF_WPA
echo -e "\tclient_cert=\"$CLIENT\"" >> $CONF_WPA
echo -e "\tprivate_key=\"$KEY\"" >> $CONF_WPA
echo -e "\tprivate_key_passwd=\"$PASSWD\"" >> $CONF_WPA
echo "}" >> $CONF_WPA
echo "Fatto"
;;
# WPA-EAP --> PEAP
PEAP)
# Chiedo l'identita'
echo -n "Inserisci la tua identita': "
read ID
if [ -z "$ID" ]; then
echo
echo "**ERRORE**"
echo "Devi inserire il tuo identificativo per connetterti alla rete!"
echo
exit 1
fi
# Chiedo il file del certificato
echo "Inserisci il nome del file che contiene"
echo -n "l'autorizzazione del server (comprensivo di path assoluto!): "
read CA
if [ -z "$CA" -o ! -e $CA ]; then
echo
echo "**ERRORE**"
echo "Devi inserire il nome del certificato del server, comprensivo di path assoluto!"
echo
exit 1
fi
# Chiedo la password
echo "Adesso dovrai inserire la password."
echo -n "Vuoi che i caratteri digitati vengano visualizzati? (s/n) "
read risp
echo -n "Inserisci la password: "
if [ -z "$risp" -o "$risp" == "n" ]; then
read -s PASSWD
elif [ "$risp" == "s" ]; then
read PASSWD
else
echo
echo "**ERRORE**"
echo
exit 1
fi
# Creo il file di configurazione
echo -n "Creo il file di configurazione..."
echo "network={" >> $CONF_WPA
echo -e "\tscan_ssid=1" >> $CONF_WPA
echo -e "\tssid=\"$ESSID\"" >> $CONF_WPA
echo -e "\tmode=0" >> $CONF_WPA
echo -e "\tproto=WPA WPA2" >> $CONF_WPA
echo -e "\tkey_mgmt=WPA-EAP" >> $CONF_WPA
echo -e "\teap=PEAP" >> $CONF_WPA
echo -e "\tidentity=\"$ID\"" >> $CONF_WPA
echo -e "\tpassword=\"$PASSWD\"" >> $CONF_WPA
echo -e "\tca_cert=\"$CA\"" >> $CONF_WPA
echo -e "\tphase1=\"peaplabel=0\"" >> $CONF_WPA
echo -e "\tphase2=\"auth=MSCHAPV2\"" >> $CONF_WPA
echo "}" >> $CONF_WPA
echo "Fatto"
;;
# WPA-EAP --> TTLS
TTLS)
# Chiedo l'identita'
echo -n "Inserisci la tua identita': "
read ID
if [ -z "$ID" ]; then
echo
echo "**ERRORE**"
echo "Devi inserire il tuo identificativo per connetterti alla rete!"
echo
exit 1
fi
# Chiedo l'identita' anonima
echo -n "Inserisci la tua identita' anonima: "
read ANON_ID
# Chiedo il file del certificato
echo "Inserisci il nome del file che contiene"
echo -n "l'autorizzazione del server (comprensivo di path assoluto!): "
read CA
if [ -z "$CA" -o ! -e $CA ]; then
echo
echo "**ERRORE**"
echo "Devi inserire il nome del certificato del server, comprensivo di path assoluto!"
echo
exit 1
fi
# Chiedo la password
echo "Adesso dovrai inserire la password."
echo -n "Vuoi che i caratteri digitati vengano visualizzati? (s/n) "
read risp
echo -n "Inserisci la password: "
if [ -z "$risp" -o "$risp" == "n" ]; then
read -s PASSWD
elif [ "$risp" == "s" ]; then
read PASSWD
else
echo
echo "**ERRORE**"
echo
exit 1
fi
# Creo il file di configurazione
echo -n "Creo il file di configurazione..."
echo "network={" >> $CONF_WPA
echo -e "\tscan_ssid=1" >> $CONF_WPA
echo -e "\tssid=\"$ESSID\"" >> $CONF_WPA
echo -e "\tmode=0" >> $CONF_WPA
echo -e "\tproto=WPA WPA2" >> $CONF_WPA
echo -e "\tkey_mgmt=WPA-EAP" >> $CONF_WPA
echo -e "\teap=TTLS" >> $CONF_WPA
echo -e "\tidentity=\"$ID\"" >> $CONF_WPA
echo -e "\tanonymous_identity=\"$ANON_ID\"" >> $CONF_WPA
echo -e "\tpassword=\"$PASSWD\"" >> $CONF_WPA
echo -e "\tca_cert=\"$CA\"" >> $CONF_WPA
echo -e "\tphase2=\"auth=MD5\"" >> $CONF_WPA
echo "}" >> $CONF_WPA
echo "Fatto"
;;
# Spazio per gli errori
*)
echo
echo "**ERRORE**"
echo "Devi inserire un tipo di EAP tra quelli proposti!"
echo
exit 1
;;
esac
;;
# NONE (static WEP)
NONE)
# Chiedo la password
echo "Adesso dovrai inserire la password."
echo -n "Vuoi che i caratteri digitati vengano visualizzati? (s/n) "
read risp
echo -n "Inserisci la password in esadecimale (controlla le impostazioni dell'access point): "
if [ -z "$risp" -o "$risp" == "n" ]; then
read -s PASSWD
elif [ "$risp" == "s" ]; then
read PASSWD
else
echo
echo "**ERRORE**"
echo
exit 1
fi
# Creo il file di configurazione
echo -n "Creo il file di configurazione..."
echo "network={" >> $CONF_WPA
echo -e "\tscan_ssid=1" >> $CONF_WPA
echo -e "\tssid=\"$ESSID\"" >> $CONF_WPA
echo -e "\tmode=0" >> $CONF_WPA
echo -e "\tkey_mgmt=NONE" >> $CONF_WPA
echo -e "\twep_tx_keyidx=0" >> $CONF_WPA
echo -e "\twep_key0=$PASSWD" >> $CONF_WPA
echo "}" >> $CONF_WPA
echo "Fatto"
;;
# Spazio per gli errori
*)
echo
echo "**ERRORE**"
echo "Devi inserire un tipo di criptaggio tra quelli proposti!"
echo
exit 1
;;
esac
# Chiedo che driver deve usare wpa_supplicant
echo "Che driver deve usare wpa_supplicant?"
echo -e "\twext\t(Generic driver)\tDefault"
echo -e "\tralink\t(Ralink driver)"
echo -e "\thostap\t(Prism2/2.5/3 driver)"
echo -e "\tprism54\t(PrismGT/Duette/Indigo driver)"
echo -e "\tmadwifi\t(Atheros driver)"
echo -e "\tatmel\t(Atmel AT76C5XXx driver)"
echo -e "\tipw\t(IntelProWireless 2100/2200 driver)"
echo -e "\tndiswrapper\t(Ndiswrapper driver)"
read DRIVER
if [ -z "$DRIVER" ]; then
DRIVER="wext"
fi
# Imposto i parametri wireless
echo "Setto i parametri wireless per $DEV e avvio wpa_supplicant..."
if $IWCONFIG $DEV mode $MODE essid $ESSID channel $CHAN && $WPA_SUPPLICANT -D$DRIVER -i$DEV -c$CONF_WPA -B ; then
echo "Fatto"
wired $DEV
else
echo
echo "**ERRORE**"
echo
exit 1
fi
elif [ "$TYPE" == "wep" -o "$TYPE" == "WEP" ]; then
# Se non e' WPA, allora e' WEP
echo "Hai scelto WEP"
# Chiedo la password
echo "Adesso dovrai inserire la password."
echo "Vuoi che i caratteri digitati vengano visualizzati? (s/n) "
read risp
echo -n "Inserisci la password in esadecimale (controlla le impostazioni dell'access point): "
if [ -z "$risp" -o "$risp" == "n" ]; then
read -s PASSWD
elif [ "$risp" == "s" ]; then
read PASSWD
else
echo
echo "**ERRORE**"
echo
exit 1
fi
# Imposto i parametri wireless
echo "Setto i parametri wireless per $DEV..."
if $IWCONFIG $DEV mode $MODE essid $ESSID channel $CHAN && $IWCONFIG $DEV key $PASSWD ; then
echo "Fatto"
wired $DEV
else
echo
echo "**ERRORE**"
echo
exit 1
fi
else
echo
echo "**ERRORE**"
echo "Devi inserire un tipo di password tra quelli proposti!"
echo
exit 1
fi
elif [ "$risp" == "n" ]; then
# La rete wireless non ha bisogno di password
echo "La rete scelta non e' protetta."
# Imposto i parametri wireless
echo "Setto i parametri wireless per $DEV..."
if $IWCONFIG $DEV mode $MODE essid $ESSID channel $CHAN ; then
echo "Fatto"
$IWCONFIG $DEV key off &> /dev/null
wired $DEV
else
echo
echo "**ERRORE**"
echo
exit 1
fi
else
echo
echo "**ERRORE**"
echo
exit 1
fi
}
# Controllo le dipendenze
check_dep
# Imposto gli eseguibili
utilities
# Controllo i parametri passati allo script
case "$1" in
"--wired")
wired $2
exit 0
;;
"--wireless")
wireless $2
exit 0
;;
*)
echo
echo "Opzioni valide:"
echo "$0 --wired [dev] --> per configurare reti cablate"
echo "$0 --wireless [dev] --> per configurare reti wireless"
echo -e "\t\t[dev] --> l'interfaccia da usare (opzionale, da usare senza '[]')"
echo
echo "Versione 1.0"
echo "By Ansa89 (http://stiiv.netsons.org)"
echo
exit 1
;;
esac
#EOF
- Autore: Ansa89
News
Sezione dedicata alla spiegazione delle eventuali migliorie che vengono apportate allo script.
- V 1.0 --> Prima release...Attendo qualche feedback per eventuali modifiche
Feedback
Per commenti e suggerimenti inviatemi una e-mail a
ansa89[AT]slacky[DOT]it
Oppure venite sul mio sito internet
HAVE A LOT OF FUN