Bien, entonces el problema es que las regulaciones que obtengo con el estándar wireless-regdb para mi país son incorrectas. De hecho, ni siquiera se acerca a las regulaciones que tenemos. Se nos permite utilizar 13 canales (2472 MHz) y, por supuesto, se nos permite utilizar una potencia de transmisión superior a 20 dBm. Y como mi adaptador WLAN tiene una capacidad de 1W, quiero aprovechar esa ventaja y usar 30 dBm. A mi modo de ver, la solución más sencilla es obtener las fuentes de esos paquetes de Debian, corregir las regulaciones, reconstruir los paquetes de Debian e instalarlos. Eso es lo que hice hace años en Debian 7 (Wheezy), y funcionó de maravilla. Ese no es el caso en Debian 9. La compilación finaliza sin fallas, obtengo dos paquetes nuevos y brillantes, pero simplemente no funcionan. Obtengo el país 00 con iw reg get. Apuesto a que estoy haciendo algo mal con las claves que necesito para firmar el archivo regulatorio.bin, probablemente algo haya cambiado desde Wheezy. Estos son mis pasos:
Instale pbuilder, obtenga las fuentes e instale las dependencias necesarias
apt-get update
apt-get install pbuilder
apt-get source wireless-regdb crda
apt-get build-dep wireless-regdb crda
Generar mi par de claves
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)
Crear un nuevo regulator.bin y firmarlo con mi clave privada.
./db2bin.py regulatory.bin db.txt ~/.wireless-regdb-andy.key.priv.pem
Copiar la clave pública a crda
cp ../andy.key.pub.pem ../crda-3.18/pubkeys/
Construirlos paquetes
debuild -i -us -uc -b
cd ../crda-3.18/
debuild -i -us -uc -b
Eso es todo. Construyen, pero no funcionan.