Creando un Acces Point a la medida

Saludos cordiales colegas de GUTL, desde un tiempo atrás me he dado la tarea de averiguar en Internet e Intranet (dentro de las posibilidades del cubano) una manera de llevar a cabo la titanica tarea de montar un Access Point a la medida, como lo hacen en M$ el (innombrable), herramientas de cuyo nombre prefiero no acordarme, que son capaces de usar un solo adaptador inalámbrico tanto para conectarse a una red wifi y trasmitir en modo AP esa misma conexión a otros dispositivos, para tener una red por ejemplo con Internet compartido, ya sea para conectar un teléfono, un tablet, una laptop, hasta etc.. dejmoslo a la imaginación.

La cosa es que de lo tanto que he leído y entendido en el mundo del software libre se necesitan dos interfaces wifi, para llevar a cabo este acometido, una para conectar y otra mas para retransmitir lo que se desea (nuestro AP), pero bueno amigos, este al menos a mi ya se me soluciono para siempre, ahora uso mi adaptador TP-Link USB modelo TL-WN722N y monto con el los tan necesitados AP, cosa que antes no podía hacer desde las tantas herramientas que estuve testeando por citar un ejemplo: hostpad, que daba peleas y dolores de cabeza con los drivers unas veces pinchaba, otras no, problemas por aquí y allá, blaa blaa blaaaaaaaa.

Bueno entrando en lo que de verdad nos interesa, para lograr lo que tanto buscaba, les cuento que gracias a un script llamado create_ap se resuelve dicho problema basta con instalarlo desde su repo y listo:

sudo pacman -S create_ap

cada cual deberá remplazar el pacman -S por el gestor de paqueteria de su distribución en particular, ejemplo para debian, ubuntu y familia solo bastaría una de estas posibilidades:

apt-get install create_ap
aptitude install create_ap

Para compilar desde las fuentes

git clone https://github.com/oblique/create_ap
cd create_ap
make install

En ArchLinux (AUR)
yaourt -S create_ap

En Gentoo
emerge layman
layman -f -a jorgicio
emerge net-wireless/create_ap

Una ves instalado vamos a proceder a ver en nombre de nuestro dispositivo wireless, con el comando iwconfig:

De esta manera sabemos, en mi caso mi adaptador se muestra bajo el nombre de wlp0s29f7u1, procedemos primeramente a conectarnos a la red de la cual vamos a recibir Internet, que en este caso se wifi_etecsa, clic en Network Managed y clic en dicha red, aclaro que estoy usando KDE luego para montar el AP:

sudo create_ap --daemon wlp0s29f7u1 wlp0s29f7u1 Internet_AP aquinoserindenadie

Descripción de lo antes expuesto: sudo create_ap –daemon iniciar el script con privilegios administrativos y como un demonio wlp0s29f7u1 wlp0s29f7u1 el nombre de las interfaces a usar, tanto para conectar a nuestro proveedor de Internet, como para retransmitir dicha conexión Internet_AP El nombre del AP aquinoserindenadie por supuesto, nada mas que el password de nuestro AP

Bueno esto es todo por hoy, espero les sea de ayuda y que no duden en comentar sus dudas e inquietudes, mas abajo les dejo unos cuantos ejemplos de lo mucho que se puede hacer con create_ap:

## Examples
### No passphrase (open network):
    create_ap wlan0 eth0 MyAccessPoint

### WPA + WPA2 passphrase:
    create_ap wlan0 eth0 MyAccessPoint MyPassPhrase

### AP without Internet sharing:
    create_ap -n wlan0 MyAccessPoint MyPassPhrase

### Bridged Internet sharing:
    create_ap -m bridge wlan0 eth0 MyAccessPoint MyPassPhrase

### Bridged Internet sharing (pre-configured bridge interface):
    create_ap -m bridge wlan0 br0 MyAccessPoint MyPassPhrase

### Internet sharing from the same WiFi interface:
    create_ap wlan0 wlan0 MyAccessPoint MyPassPhrase

### Choose a different WiFi adapter driver
    create_ap --driver rtl871xdrv wlan0 eth0 MyAccessPoint MyPassPhrase

### No passphrase (open network) using pipe:
    echo -e "MyAccessPoint" | create_ap wlan0 eth0

### WPA + WPA2 passphrase using pipe:
    echo -e "MyAccessPoint\nMyPassPhrase" | create_ap wlan0 eth0

### Enable IEEE 802.11n
    create_ap --ieee80211n --ht_capab '[HT40+]' wlan0 eth0 MyAccessPoint MyPassPhrase

### Client Isolation:
    create_ap --isolate-clients wlan0 eth0 MyAccessPoint MyPassPhrase

Yasiel Ordoñez Abreu 2017/04/08 09:01