JAAAAAAAAAAA - ES GEHT!!!!!!!111ELF 😀
Vielen vielen tausend Dank euch!!!! 😀
Lösungsweg:
Installiere Ubuntu 11.10 Oneiric Ozelot
$ sudo su
# apt-get update
# apt-get install hostapd
# apt-get install dnsmasq
# nano /etc/default/hostapd
Inhalt anpassen:
DAEMON_CONF="/etc/hostapd.conf" # Verweis auf die Konfigurationsdatei
# RUN_DAEMON=yes # aktiviert hostapd bei Systemstart
Mit Strg+O speichern
Mit Strg+X verlassen
# nano /etc/hostapd.conf
Inhalt:
# Schnittstelle und Treiber
interface=wlan0
driver=nl80211
# WLAN-Konfiguration
ssid=WLAN_AP-SSID
channel=1
# ESSID sichtbar
ignore_broadcast_ssid=0
# Ländereinstellungen
country_code=DE
ieee80211d=1
# Übertragungsmodus
hw_mode=g
# Optionale Einstellungen
# supported_rates=10 20 55 110 60 90 120 180 240 360 480 540
# Draft-N Modus aktivieren / optional nur für entsprechende Karten
# ieee80211n=1
# Beacons
beacon_int=100
dtim_period=2
# MAC-Authentifizierung
macaddr_acl=0
# max. Anzahl der Clients
max_num_sta=255
# Größe der Datenpakete/Begrenzung
rts_threshold=2347
fragm_threshold=2346
# hostapd Log Einstellungen
logger_syslog=-1
logger_syslog_level=2
logger_stdout=-1
logger_stdout_level=2
# temporäre Konfigurationsdateien
dump_file=/tmp/hostapd.dump
ctrl_interface=/var/run/hostapd
ctrl_interface_group=0
# Authentifizierungsoptionen
auth_algs=3
# wmm-Funktionalität
wmm_enabled=0
# Verschlüsselung / hier rein WPA2
wpa=2
rsn_preauth=1
rsn_preauth_interfaces=wlan0
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP
# Schlüsselintervalle / Standardkonfiguration
wpa_group_rekey=600
wpa_ptk_rekey=600
wpa_gmk_rekey=86400
# Zugangsschlüssel (PSK) / hier in Klartext (ASCII)
wpa_passphrase=1234567890abcdefghijklmn
(Wie ihr den Inhalt da rein bekommt bleibt euch überlassen^^ Ich bin mit dem Laptop über SSH rein und hab dann in nano den Inhalt mit Strg+Shift+V einefügt)
Hier muss ganz unten noch das Passwort ändern.. (Oder sollte man zumindest^^)
und bei "ssid=WLAN_AP-SSID" anstatt WLAN_AP-SSID den Namen des zu erstellenden Netzwerks
# touch instant_AP.sh
# chmod +x instant_AP.sh
# nano instant_AP.sh
Inhalt:
#!/bin/bash
## Instant WLAN Access-Point
## elektronenblitz63 ubuntuusers.de 2011
## published under GPL v3
##
## Version 1.5.0
##
## freie Variablen
## Konfiguration der dnsmasq.conf
##
# # DHCP-Server dnsmasq aktiv für Interface
#
# interface=wlan0
## DHCP-Server dnsmasq nicht aktiv für Interface
#
# no-dhcp-interface=eth0
# # IP-Adressbereich / Lease-Time
# dhcp-range=192.168.3.20,192.168.3.25,infinite
## Konfiguration der Ethernet-Schnittstelle
## LAN statisch (Standard ist automatisch über DHCP) / Startoption [-f]
laniface=eth0
laddress=192.168.178.10
lbroadcast=192.168.178.255
lnetmask=255.255.255.0
lgateway=192.168.178.1
lmacaddress=00:12:79:c0:49:ae
#
## Konfiguration der WLAN-Schnittstelle
## WLAN statisch
wlaniface=wlan0
waddress=192.168.3.1
wbroadcast=192.186.3.255
wnetmask=255.255.255.0
iptablemask=192.168.0.0/24
### manuelle DNS (drei DNS Einträge, 1xDomain und 1xSearch sind möglich)
# Beispiel
# dns="nameserver 192.168.178.1 nameserver 192.168.178.1 nameserver 192.168.178.1 domain fritz.box search fritz.box"
dns="nameserver 192.168.178.1"
## dnsmasq-base Konfiguration
# DHCP-Adresspool umfasst x-Adressen
ipaddresses=10
# Basisadresse DHCP-Adresspool (WLAN-IP + X)
wlanbaseip=1
# Lease-Time
leasetime=infinite
## MAC-Adresse (optional) (Startoption [-m])
lmacaddress=00:12:79:c0:49:ae
## Pause vor LAN-Verbindungstest
pause=4
## Ende freie Variablen
##
# Skript
#
pingout=""
## aut. Adressberechnung DHCP-Range für dnsmasq
## gemäß Vorgabe WLAN-Schnittstelle
ipaddresses=$[$ipaddresses+$wlanbaseip]
baseendaddr="`echo $waddress | tr -s . " " | awk {'print $4'}`"
basestartaddr="`echo $waddress | tr -s . " " | awk {'print $1,$2,$3'} | tr -s " " .`"
endaddr="$basestartaddr""."$[$startaddr+$ipaddresses]
startaddr="$basestartaddr""."$[$baseendaddr+$wlanbaseip]
pingout=""
A=1
B=0
D=0
if [ "$1" = "-h" ]; then
echo Verwendung: instant_AP.sh [-start] [-restart] [-stop] [-D] [-d] [-f] [-m] [-h]
echo Syntax:
echo "sudo ./instant_AP.sh wie [-d] startet mit Standardparametern (DHCP)"
echo "sudo ./instant_AP.sh -f statische LAN-Konfiguration"
echo "sudo ./instant_AP.sh -f -m statische LAN-Konfiguration, MAC-Änderung"
echo "sudo ./instant_AP.sh -D verwendet dnsmasq.conf und nicht dnsmasq-base"
echo "sudo ./instant_AP.sh -start -f statische LAN-Konfiguration"
echo "sudo ./instant_AP.sh -restart -f statische LAN-Konfiguration"
echo "sudo ./instant_AP.sh -stop beendet den AP"
echo "Ende"
exit
fi
while getopts ":Ddfmh" OPTION ; do
case $OPTION in
D) echo "vewende dnsmasq.conf und nicht dnsmasq-base"; D=1;;
d) echo "konfiguriere LAN über DHCP"; A=1;;
f) echo "konfiguriere LAN statisch"; A=2;;
m) echo "MAC-Change LAN ein"; B=1;;
esac
done
echo "starte Konfiguration ..."
sleep 4
if [ "$1" != "-start" ]; then
echo "stoppe alle Dienste, und Verbindungen ..."
# iptables Filter löschen
/sbin/iptables -F
/sbin/iptables -X
/sbin/iptables -t nat -F
defgw="`route -n | grep UG | awk {'print $2'}`"
/sbin/route del default gw $defgw $laniface
echo '' | tee /etc/resolv.conf
/etc/init.d/hostapd stop
/sbin/ifconfig $wlaniface down
/sbin/iwconfig $wlaniface mode managed
/sbin/ifconfig $laniface down
/usr/bin/killall dnsmasq
/sbin/sysctl -w net.ipv4.ip_forward=0
service network-manager start
if [ "$1" = "-stop" ]; then
echo "WLAN Access-Point Konfiguration beendet."
exit
fi
fi
## MAC-Adresse abgleichen
if [ "$B" = "1" ]; then
currentmac="`ifconfig $laniface | grep Adresse | awk {'print $6'}`"
echo Schnittstelle $laniface, MAC-Adresse: $currentmac
echo Vorgabe: $lmacaddress
if [ "$currentmac" = "$lmacaddress" ]; then
echo Übereinstimmende MAC-Adresse
else
/sbin/ifconfig $laniface down
/sbin/ip link set dev $laniface addr $lmacaddress
currentmac="`ifconfig $laniface | grep Adresse | awk {'print $6'}`"
echo versuche MAC-Adresse zu ändern ...
echo Schnittstelle $laniface, MAC-Adresse: $currentmac
if [ "$currentmac" = "$lmacaddress" ]; then
echo Änderung der MAC-Adresse erfolgreich!
else
echo Änderung der MAC-Adresse nicht erfolgreich!
echo fahre fort ...
fi
fi
fi
# Konfiguration LAN
echo beende Network-Manager
service network-manager stop
echo "starte alle Dienste, und Verbindungen ..."
if [ "$A" = "1" ]; then
echo "starte automatische LAN-Verbindung ..."
/sbin/dhclient $laniface
else
echo "starte statische LAN-konfiguration ..."
/sbin/ifconfig $laniface down
sleep 2
/sbin/ifconfig $laniface $laddress broadcast $lbroadcast netmask $lnetmask
sleep 2
echo setze Gateway und Route ...
/sbin/route add default gw $lgateway $laniface
sleep 1
echo setze DNS
echo '# erzeugt durch instant_AdHoc.sh' | tee /etc/resolv.conf
echo $dns | awk {'print $1,$2'} | tee -a /etc/resolv.conf
echo $dns | awk {'print $3,$4'} | tee -a /etc/resolv.conf
echo $dns | awk {'print $5,$6'} | tee -a /etc/resolv.conf
echo $dns | awk {'print $7,$8'} | tee -a /etc/resolv.conf
echo $dns | awk {'print $9,$10'} | tee -a /etc/resolv.conf
fi
sleep $pause
## Verbindungstest LAN
echo "LAN Verbindungstest ..."
pingout="`(ping -c1 $lgateway | egrep -wo '100% packet loss')`"
if [ "$pingout" = "100% packet loss" ]; then
echo "kann Gateway nicht pingen $pingout - Verbindung fehlgeschlagen!"
echo "breche Vorgang ab!"
echo "Kabelverbindung oder Konfiguration überprüfen!"
/sbin/ifconfig $laniface down
if [ "$A" = "2" ]; then
echo "lösche Default-Gateway ..."
defgw="`route -n | grep UG | awk {'print $2'}`"
/sbin/route del default gw $defgw $laniface
fi
echo "Vorgabewerte:"
echo Schnittstelle: $laniface IP: $laddress Broadcast: $lbroadcast Netzmaske: $lnetmask
echo IP-Adresse Gateway: $lgateway
exit
fi
echo "Verbindungstest erfolgreich!"
# WLAN-Schnittstelle statisch konfigurieren
echo "WLAN-Schnittstelle initialisieren ..."
/sbin/ifconfig $wlaniface $waddress broadcast $wbroadcast netmask $wnetmask
/etc/init.d/hostapd restart
echo "starte IP-Forward, Masquerading und NAT"
/sbin/iptables -A FORWARD -o $laniface -i $wlaniface -s $iptablemask -m conntrack --ctstate NEW -j ACCEPT
/sbin/iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -t nat -A POSTROUTING -o $laniface -j MASQUERADE
/sbin/sysctl -w net.ipv4.ip_forward=1
## dnsmasq-base starten
echo starte dnsmasq-base
if [ "$D" = "0" ]; then
echo DHCP-Range dnsmasq-base - Startadresse: $startaddr Endadresse: $endaddr
/usr/sbin/dnsmasq -i $wlaniface -I $laniface -F $startaddr,$endaddr,$leasetime
else
## dnsmasq neu starten
echo "verwende dnsmasq.conf"
/etc/init.d/dnsmasq restart
echo fertig ...
fi
echo "Konfiguration ..."
echo verwende DNS: $dns
/sbin/route -n
echo "Konfiguration LAN:"
/sbin/ifconfig $laniface | egrep 'Link|inet Adresse'
echo "Konfiguration WLAN:"
/sbin/ifconfig $wlaniface | egrep 'Link|inet Adresse'
/sbin/iwconfig $wlaniface | egrep 'IEEE|Mode'
exit 0
Ziemlich weit oben muss man ggf. die Zugangseinstellungen für eth0, also das Kabel am Rechner anpassen
# ./instant_AP.sh
FERTIG 😀
Viele herzlich Grüße und nochmals vielen vielen Dank
-schumi-