Need help with create_ap?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

oblique
4.0K Stars 879 Forks BSD 2-Clause "Simplified" License 265 Commits 207 Opened issues

Description

[NOT MAINTAINED] This script creates a NATed or Bridged WiFi Access Point.

Services available

!
?

Need anything else?

Contributors list

# 7,988
Shell
hostapd
wpa2
Perl
156 commits
# 43,002
hostapd
wpa2
Shell
13 commits
# 23,543
hostapd
wpa2
Keras
Arduino
8 commits
# 72,942
Shell
HTML
PHP
hostapd
5 commits
# 71,212
C
hostapd
wpa2
Shell
5 commits
# 94,337
CSS
HTML
Shell
hostapd
3 commits
# 49,687
OCaml
Shell
Clojure
hostapd
2 commits
# 94,116
Erlang
IPFS
nix
hostapd
2 commits
# 99,479
hostapd
wpa2
xamarin...
Xamarin
2 commits
# 92,820
Perl
Bash
webrtc
hostapd
2 commits
# 155,303
hostapd
wpa2
Shell
1 commit
# 102,148
hostapd
wpa2
Shell
C
1 commit
# 70,816
golang
fileser...
homeser...
webrtc
1 commit
# 82,601
Perl
sensu
nagios
health-...
1 commit
# 93,309
assembl...
disasse...
Telegra...
messeng...
1 commit
# 89,244
Perl
Common ...
Ubuntu
ppa
1 commit
# 135,681
C
Linux
Shell
C++
1 commit
# 145,807
C++
Shell
C
hostapd
1 commit
# 155,304
hostapd
wpa2
Shell
1 commit
# 10,323
virtual...
js
Svelte
twemoji
1 commit

NOT MAINTAINED

This project is no longer maintained.

Forks and continuation of this project

  • linux-wifi-hotspot - Fork that is focused on providing GUI and improvements.
  • linux-router - Fork that is focused on providing new features and improvements which are not limited to WiFi. Some interesting features are: sharing Internet to a wired interface and sharing Internet via a transparent proxy using redsocks.

Features

  • Create an AP (Access Point) at any channel.
  • Choose one of the following encryptions: WPA, WPA2, WPA/WPA2, Open (no encryption).
  • Hide your SSID.
  • Disable communication between clients (client isolation).
  • IEEE 802.11n & 802.11ac support
  • Internet sharing methods: NATed or Bridged or None (no Internet sharing).
  • Choose the AP Gateway IP (only for 'NATed' and 'None' Internet sharing methods).
  • You can create an AP with the same interface you are getting your Internet connection.
  • You can pass your SSID and password through pipe or through arguments (see examples).

Dependencies

General

  • bash (to run this script)
  • util-linux (for getopt)
  • procps or procps-ng
  • hostapd
  • iproute2
  • iw
  • iwconfig (you only need this if 'iw' can not recognize your adapter)
  • haveged (optional)

For 'NATed' or 'None' Internet sharing method

  • dnsmasq
  • iptables

Installation

Generic

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

ArchLinux

pacman -S create_ap

Gentoo

emerge layman
layman -f -a jorgicio
emerge net-wireless/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

Systemd service

Using the persistent systemd service

Start service immediately:

systemctl start create_ap

Start on boot:

systemctl enable create_ap

License

FreeBSD

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.