Debian Bluetooth: Unterschied zwischen den Versionen
Erich (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Erich (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 38: | Zeile 38: | ||
post-up iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE | post-up iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE | ||
post-up iptables -A FORWARD -i | post-up iptables -A FORWARD -i pan0 -o eth0 -j ACCEPT | ||
post-up iptables -A FORWARD -o | post-up iptables -A FORWARD -o pan0 -i eth0 -j ACCEPT | ||
iface bnep0 inet static | iface bnep0 inet static | ||
Zeile 50: | Zeile 50: | ||
Start/Stop-Script für Netzwerkbrücke: | Start/Stop-Script für Netzwerkbrücke: | ||
vi /etc/init.d/ | vi /etc/init.d/bridge_pan0 | ||
Folgende Zeilen einfügen: | Folgende Zeilen einfügen (den Eintrag '''''IPADDR''''' auf die IP-Adresse des Servers setzen) : | ||
#! /bin/sh | #! /bin/sh | ||
Zeile 58: | Zeile 58: | ||
NAME=pan0 | NAME=pan0 | ||
DESC=bridge | DESC=bridge | ||
IPADDR= | IPADDR='''''IP_des_Server''''' | ||
test -f $BRIDGECONTROL || exit 0 | test -f $BRIDGECONTROL || exit 0 |
Version vom 7. Mai 2009, 17:46 Uhr
Allgemeines
Debian Linux bietet mit blue-z einen leistungsfähigen Bluetooth-Stack, der auch als Accesspoint dienen kann. Dabei spannt er ein sog. PAN (Personal Area Network) auf, bei dem der Linux-Server als NAP (Network Accesspoint) dient. Es gibt zahlreiche Handys, Smartphones und PDA's, die das PAN-Protokoll unterstützen und so eine Verbindung mit dem Accesspoint aufnehmen können. Mit diesen Endgeräten kann man dann im Internet surfen, Emails abrufen oder Termine und Kontakte synchronisieren (siehe auch Groupware Server Open-Xchange).
Die Bluetooth-Geräte werden in eigenes IP-Subnetz - z.B. 192.168.1.0 - gelegt. Die IP-Adressen vergibt ein DHCP-Server für dieses Subnet.
Voraussetzung: C-Compiler
Installation
apt-get install bluetooth bluez-utils apt-get install apt-get install libdbus-1-dev apt-get install dhcp-server3
Um Bluetooth-Geräte zu koppeln ist noch ein sog. Key-Agent erforderlich. Für KDE und Gnome stehen dafür graphische Tools zur Verfügung. Für einen Server ist allerdings ein Kommandozeilen-Tool erforderlich, das allerdings nur als C-Source_Code mit installiert wurde. Dieses wird im Folgenden compiliert und installiert.
cd /usr/share/doc/bluez-utils/examples gunzip passkey-agent.c.gz make cp passkey-agent /usr/bin/
Konfiguration
vi /etc/default/bluetooth
Folgende Änderungen durchführen:
PAND_ENABLED=1 PAND_OPTIONS="--listen --role NAP --devup /etc/bluetooth/pan/dev-up --devdown /etc/bluetooth/pan/dev-down"
vi /etc/bluetooth/hcid.conf
Den Eintrag
lm accept;
erweitern in:
lm accept,master;
Bluetooth Netzwerk-Interfaces bnep0, bnep1,... und die Netzwerkbrücke pan0 definieren, der die die einzelnen Bluetooth Devices bnep0, bnep1, ... hinzugefügt werden:
vi /etc/network/interfaces
Folgende Zeilen ans Ende anfügen:
iface pan0 inet static address 192.168.1.1 netmask 255.255.255.240 post-up iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE post-up iptables -A FORWARD -i pan0 -o eth0 -j ACCEPT post-up iptables -A FORWARD -o pan0 -i eth0 -j ACCEPT iface bnep0 inet static address 0.0.0.0 netmask 255.255.255.240
iface bnep1 inet static address 0.0.0.0 netmask 255.255.255.240
Start/Stop-Script für Netzwerkbrücke:
vi /etc/init.d/bridge_pan0
Folgende Zeilen einfügen (den Eintrag IPADDR auf die IP-Adresse des Servers setzen) :
#! /bin/sh PATH=/sbin:/bin:/usr/sbin:/usr/bin BRIDGECONTROL=/usr/sbin/brctl NAME=pan0 DESC=bridge IPADDR=IP_des_Server test -f $BRIDGECONTROL || exit 0 set -e case "$1" in start) echo -n "Starting $DESC: " echo 1 > /proc/sys/net/ipv4/ip_forward $BRIDGECONTROL addbr $NAME >/dev/null 2>/dev/null ifconfig $NAME $IPADDR ifup $NAME /etc/init.d/dhcp3-server start >/dev/null echo "$NAME." ;; stop) echo -n "Stopping $DESC: " /etc/init.d/dhcp3-server stop >/dev/null ifdown $NAME $BRIDGECONTROL delbr $NAME echo "$NAME." ;; *) N=/etc/init.d/bridge_pan0 echo "Usage: $N {start|stop}" >&2 exit 1 ;; esac exit 0
Anlegen der Bluetooth Interface dev-up und dev-down Scripte:
mkdir /etc/bluetooth/pan vi /etc/bluetooth/pan/dev-up
Folgende Zeilen einfügen:
#!/bin/sh ifup $1 brctl addif pan0 $1
vi /etc/bluetooth/pan/dev-down
Folgende Zeilen einfügen:
#!/bin/sh brctl delif pan0 $1 ifdown $1
Scripte ausführbar machen:
chmod +x /etc/init.d/bridge_pan0 chmod +x /etc/bluetooth/pan/dev-up chmod +x /etc/bluetooth/pan/dev-down
DHCP-Server:
vi /etc/dhcp3/dhcpd.conf
Folgende Zeilen einfügen:
- option domain-name-servers auf den DNS-Server des Internet Routers setzen (hier 192.168.0.1) und option domain-name anpassen.
- Hier wird das Subnet 192.168.1.0 für die Bluetooth Geräte verwendet. Falls dieses Subnet bereits anderweitig verwendet wird, entsprechend anpassen - z.B. 192.168.2.0. Dann alle folgenden Einträge, die mit 192.168.1 beginnen durch 192.168.2. ersetzen.
subnet 192.168.1.0 netmask 255.255.255.0 { interface pan0; range 192.168.1.10 192.168.1.25; option domain-name-servers 192.168.0.1; option domain-name "bluetooth.domain.org"; option routers 192.168.1.1; option broadcast-address 192.168.1.255; default-lease-time 600; max-lease-time 7200; }
Netzwerkbrücke und Bluetooth-Stack neu starten:
/etc/init.d/bridge_pan0 start /etc/init.d/bluetooth restart
Endgeräte Koppeln
Damit Bluetooth-Geräte Zugriff auf den Accesspoint erhalten, müssen diese erst gekoppelt (Pairing) werden. Zu diesem Zweck dient oben compilierter passkey-agent. Der Code blue_key (numerisch, 4-8 stellig) muß am Server und Endgerät identisch sein.
passkey-agent --default blue_key
Am Endgerät eine suche nach Bluetooth geräten durchführen und mit dem Server koppeln. Das Endgerät verlangt nach einem Code. Hier den Code blue_key eingeben. Der Verbindung einen aussagekräftigen Namen geben - z.B. Server
Engerät konfigurieren
Die Konfiguration der Endgeräte variiert sehr stark, sodass diese hier nicht allgemeingültig erläutert werden kann. Hier eine kurze Anleitung für neuere Sony Ericcson Handys:
- Menü Einstellungen/Verbindungen aufrufen
- Interneteinstellungen anwählen
- Lokale Verb. zulassen: ein
- Verbinden mit:
- Option/Neues Konto
- GPRS-Verbindung
- Name: z.B. Bluetooth
- APN: unbedingt leer lassen, damit Bluetooth verwendet wird!
- Speichern
Funktionstest
Die Bedienung der Endgeräte variiert sehr stark. Deshalb evtl. in der Bedienungsanleitung des Gerätes nachsehen. Bluetooth-Verbindung mit dem gekoppelten Server aufbauen. Internet Browser öffnen. Verifizieren, dass als Verbindung die eben angelegte Bluetooth-Verbindung verwendet wird. Eine Seite wie z.B. www.google.de öffnen. Die Seite sollte sich fehlerfrei öffnen.