Ok, das Problem ist also, dass die Vorschriften, die ich mit dem Standard-Wireless-RegDB für mein Land bekomme, falsch sind. Tatsächlich kommen sie nicht einmal annähernd an die Vorschriften heran, die wir bekommen haben. Wir dürfen 13 Kanäle (2472 MHz) verwenden und natürlich dürfen wir eine Sendeleistung von über 20 dBm verwenden. Und da mein WLAN-Adapter 1 W leisten kann, möchte ich diesen Vorteil nutzen und 30 dBm verwenden. So wie ich das sehe, ist die einfachste Lösung, die Quellen dieser Debian-Pakete zu besorgen, die Vorschriften zu korrigieren, die Deb-Pakete neu zu erstellen und sie zu installieren. Das habe ich vor Jahren unter Debian 7 (Wheezy) gemacht und es hat wunderbar funktioniert. Unter Debian 9 ist das nicht der Fall. Der Build endet ohne Fehler, ich bekomme zwei glänzende neue Pakete, aber sie funktionieren einfach nicht. Ich bekomme Land 00 mit iw reg get. Ich wette, ich mache etwas falsch mit den Schlüsseln, die ich zum Signieren der Datei regulatory.bin brauche, wahrscheinlich hat sich seit Wheezy etwas geändert. Das sind meine Schritte:
Installieren Sie pbuilder, holen Sie sich die Quellen und installieren Sie die erforderlichen Abhängigkeiten
apt-get update
apt-get install pbuilder
apt-get source wireless-regdb crda
apt-get build-dep wireless-regdb crda
Mein Schlüsselpaar generieren
openssl genrsa -out ~/.wireless-regdb-andy.key.priv.pem 2048
openssl rsa -in ~/.wireless-regdb-andy.key.priv.pem -out andy.key.pub.pem -pubout -outform PEM
cd wireless-regdb-2016.06.10
vi debian/rules (change REGDB_AUTHOR to andy, that's for the key)
vi db.txt (edit the regulations to the correct values)
Erstellen Sie eine neue Datei „regulatory.bin“ und signieren Sie sie mit meinem privaten Schlüssel
./db2bin.py regulatory.bin db.txt ~/.wireless-regdb-andy.key.priv.pem
Öffentlichen Schlüssel nach crda kopieren
cp ../andy.key.pub.pem ../crda-3.18/pubkeys/
Erstellen Sie Pakete
debuild -i -us -uc -b
cd ../crda-3.18/
debuild -i -us -uc -b
Das ist es. Sie bauen, aber sie funktionieren nicht.