Ecco un comodo script bash per creare un access point senza mettere in modalità master la vostra scheda wireless:
1) Creiamo una cartella di nome "script" con: mkdir /home/"nomeUtente"/script
2) Spostiamoci all'interno della cartella appena creata con: cd /home/"nomeUtente"/script
3) Ora creiamo il file che poi andremo ad editare con: touch access_point.sh
4) Editiamo il file con il nostro editor preferito(es. nano, vim, gedit, kwrite, kate); io solitamente uso kwrite e quindi darò il comando: kwrite access_point.sh
A questo punto siamo pronti quasi pronti per iniziare a scrivere il nostro script!!
Scaricate ed installate i seguenti pacchetti se non li avete già installati:
sudo apt-get install konsole
sudo apt-get install dhcpcd
Fatto ciò date sempre da terminale il seguente comando:
iwconfig
vi restituirà qualcosa del genere:
lo no wireless extensions.
eth0 no wireless extensions.
eth1 IEEE 802.11 Access Point: Not-Associated
Link Quality:5 Signal level:0 Noise level:0
Rx invalid nwid:0 invalid crypt:0 invalid misc:0
come si intuisce l'interfaccia wireless è eth1; ma sarebbe potuta essere anche wlan0; questo dipende dalla distribuzione usata e da altri fattori che ora però non ci interessano.
Siamo pronti per iniziare!!
Per prima cosa configuriamo il dhcp server:
Apriamo il terminale e scriviamo
sudo su
kwrite /etc/dhcpcd/dhcpd.conf (enter)
Cancelliamo tutto ciò che c'è all'interno del file.
Copiamo e incolliamo il seguente codice:
ddns-update-style ad-hoc;
default-lease-time 600;
max-lease-time 7200;
subnet 192.168.2.128 netmask 255.255.255.128 {
option subnet-mask 255.255.255.128;
option broadcast-address 192.168.2.255;
option routers 192.168.2.129;
option domain-name-servers 4.2.2.2;
range 192.168.2.130 192.168.2.140;
}
Salviamo e chiudiamo il file.
Impostiamo la scheda wireless in modalità ad-hoc con i seguenti comandi:
sudo su
ifconfig eth1 down
iwconfig eth1 essid "miaRETE" mode ad-hoc
ifconfig eth1 up
Adesso dobbiamo assegnare un subnet e un getaway;
sempre da terminale diamo i seguenti comandi
sudo su
ifconfig at0 up
ifconfig at0 192.168.2.129 netmask 255.255.255.128
route add -net 192.168.2.128 netmask 255.255.255.128 gw 192.168.2.129
A questo punto lanciamo il dhcp server:
sudo su
mkdir -p /var/run/dhcpd && chown dhcpd:dhcpd /var/run/dhcpd
dhcpd3 -cf /etc/dhcp3/dhcpd.conf -pf /var/run/dhcpd/dhcpd.pid at0
Non ci rimane che configurare il firewall:
sudo su
iptables --flush
iptables --table nat --flush
iptables --delete-chain
iptables --table nat --delete-chain
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables --table nat --append POSTROUTING --out-interface eth1 -j MASQUERADE
iptables --append FORWARD --in-interface at0 -j ACCEPT
iptables -t nat -A PREROUTING -p udp --dport 53 -j DNAT --to 192.168.1.1
Adesso se tutto ha funzionato senza intoppi mettiamo tutto in uno script!!
Copiate il seguente codice nel file creato all'inizio "acces_point.sh"
#!/bin/bash
ifconfig eth1 down
iwconfig eth1 essid "miaRETE" mode ad-hoc
ifconfig eth1 up
ifconfig at0 up
ifconfig at0 192.168.2.129 netmask 255.255.255.128
route add -net 192.168.2.128 netmask 255.255.255.128 gw 192.168.2.129
dhcpd3 -cf /etc/dhcp3/dhcpd.conf -pf /var/run/dhcpd/dhcpd.pid at0
iptables --flush
iptables --table nat --flush
iptables --delete-chain
iptables --table nat --delete-chain
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables --table nat --append POSTROUTING --out-interface eth1 -j MASQUERADE
iptables --append FORWARD --in-interface at0 -j ACCEPT
iptables -t nat -A PREROUTING -p udp --dport 53 -j DNAT --to 192.168.1.1
Salviamo e chiudiamo il file "access_point.sh"
Adesso lanciamo da terminale:
sudo ./access_point.sh
Naturalmete lo script appena creato è molto rozzo e può essere migliorato!!!
mercoledì 12 gennaio 2011
Creare un Access Point con Linux
Pubblicato da
Relinux
alle
02:10
Invia tramite emailPostalo sul blogCondividi su TwitterCondividi su FacebookCondividi su Pinterest
Etichette:
Script
0 commenti:
Posta un commento