Skip to content
This repository was archived by the owner on Sep 30, 2021. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
aa47c28
create_ap: add support for config comments
jyhi Oct 27, 2018
b9f6805
create_ap.conf: add comments to explain options
jyhi Oct 27, 2018
f44ad15
clarify action of --dhcp-dns, --no-dns, --no-dns-masq options, and ex…
dlenski Dec 28, 2019
7eac6b6
create backups when overwriting existing create_ap.conf
dlenski Mar 25, 2020
ae1d795
add option to set beacon interval
dlenski Apr 2, 2020
8080710
add option for DTIM period too
dlenski Apr 3, 2020
c5b680b
Merge branch 'clarify' into master
dlenski Apr 5, 2020
441fa67
Merge remote-tracking branch 'lmy441900/add-comment-support'
dlenski Apr 5, 2020
380e4f4
restart create_ap after suspend-and-resume
dlenski Apr 16, 2020
790c3fa
Merge branch 'dlenski/restart_after_suspend_and_resume'
dlenski Apr 16, 2020
7811c5c
initial IPv6
dlenski Apr 19, 2020
0f3b4c2
fix IPv6 address assignment and restoration
dlenski Apr 21, 2020
ec98791
no need for explicit IPv6 routes, just address? no dhcp-authoritative
dlenski Apr 22, 2020
3f7f4dd
Merge remote-tracking branch 'origin/master'
dlenski Dec 23, 2020
8e707fa
Merge branch 'ipv6'
dlenski Dec 23, 2020
fe98b1e
Update README.md
dlenski Dec 23, 2020
04d4c7c
clarify --country option / COUNTRY config
dlenski Jan 24, 2021
1210770
Allow 'gateway' to be listed as one DNS server, among several
dlenski May 21, 2021
69ae387
Clarify MAC, ETC_HOSTS, and ADDN_HOSTS in --help, and add example cre…
dlenski May 21, 2021
86a3d60
Enable WPS push button (PBC) and PIN modes
dlenski Jan 20, 2022
624eb20
Fix incorrect DTIM_PERIOD name in example config
exuvo Apr 11, 2022
91e095a
Fix (?) WPS support
dlenski Dec 8, 2023
365d9e3
Add --metered option to indicate that network is metered and/or shoul…
dlenski Dec 8, 2023
4664f05
Remove the 'haveged' options and entropy watchdog
dlenski Dec 8, 2023
8bb9068
Install create_ap.resume in the proper location, /usr/lib/systemd/sys…
dlenski Dec 13, 2023
5f7257d
Show QR code
dlenski Apr 29, 2024
946c414
Enabled local timezone advertisement
dlenski Jan 9, 2025
a4e1cee
Enable GPS location advertisement ("French drone format")
dlenski Jan 9, 2025
17c8e6d
Show QR code only if qrencode available
dlenski Apr 29, 2024
8b7008c
Add WPA3 support and make WPA2/3 the default
dlenski Feb 23, 2025
6484586
Check for adapters which don't support 802.11w and thus can't do WPA3
dlenski Feb 23, 2025
c26da0d
Allow virtual AP device on separate channel if adapter supports it
dlenski Feb 25, 2025
eca2b09
Brevity
dlenski Feb 25, 2025
21d5aa3
Precision
dlenski Feb 25, 2025
e65f24a
Move confdir to /run and make name deterministic
dlenski Mar 2, 2025
97faad1
Handle systemd's resume-from-suspend automatically
dlenski Mar 3, 2025
de3f42e
--mac-filter-accept OR --mac-filter-deny
dlenski Mar 5, 2025
fa35d18
Add hidden --wep option
dlenski Dec 5, 2025
968d550
Update frequency parsing for iw 6.7 compatibility
joanbm Dec 23, 2023
e863af5
Fix option to enable local timezone advertisement
dlenski Apr 28, 2026
cf68756
No QR code if not outputting to terminal
dlenski Apr 28, 2026
c922446
Verify hostapd version is >=2.6
dlenski Apr 27, 2026
219d356
Stop supporting iwconfig
dlenski Apr 27, 2026
cbc42c4
Stop working around non-nl80211 drivers
dlenski Apr 27, 2026
482776d
Add --hostapd-timestamps options to create_ap
mathiassmichno Oct 6, 2021
d57d76b
Add reinstall option, which doesn't clobber config file
dlenski Apr 28, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 13 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,26 @@ BINDIR=$(PREFIX)/bin
all:
@echo "Run 'make install' for installation."
@echo "Run 'make uninstall' for uninstallation."
@echo "Run 'make reinstall' for installation without clobbering existing config file."

install:
install-noconf:
install -Dm755 create_ap $(DESTDIR)$(BINDIR)/create_ap
install -Dm644 create_ap.conf $(DESTDIR)/etc/create_ap.conf
[ ! -d /lib/systemd/system ] || install -Dm644 create_ap.service $(DESTDIR)$(PREFIX)/lib/systemd/system/create_ap.service
[ ! -e /sbin/openrc-run ] || install -Dm755 create_ap.openrc $(DESTDIR)/etc/init.d/create_ap
install -Dm644 bash_completion $(DESTDIR)$(PREFIX)/share/bash-completion/completions/create_ap
install -Dm644 README.md $(DESTDIR)$(PREFIX)/share/doc/create_ap/README.md

install: install-noconf
[ -e $(DESTDIR)/etc/create_ap.conf ] && echo "Existing $(DESTDIR)/etc/create_ap.conf will be renamed with .orig suffix" >&2
install -Dm644 --backup=existing --suffix=.orig create_ap.conf $(DESTDIR)/etc/create_ap.conf

reinstall: install-noconf
if [ -e $(DESTDIR)/etc/create_ap.conf ]; then \
echo "Leaving existing $(DESTDIR)/etc/create_ap.conf unchanged" >&2; \
else \
install -Dm644 --backup=existing --suffix=.orig create_ap.conf $(DESTDIR)/etc/create_ap.conf; \
fi

uninstall:
rm -f $(DESTDIR)$(BINDIR)/create_ap
rm -f $(DESTDIR)/etc/create_ap.conf
Expand Down
30 changes: 12 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,11 @@
## NOT MAINTAINED

This project is no longer maintained.

If you are still interested in this project, checkout the following fork that
also provides GUI: [lakinduakash/linux-wifi-hotspot]
This project is a fork of the no-longer-maintained [oblique/create_ap](//github.com/oblique/create_ap).


## Features
* Create an AP (Access Point) at any channel.
* Choose one of the following encryptions: WPA, WPA2, WPA/WPA2, Open (no encryption).
* Choose one of the following encryptions: WPA, WPA2, WPA3, WPA/WPA2, WPA2/WPA3, Open (no encryption).
* Hide your SSID.
* Enable [Wi-Fi Protected Setup](https://en.wikipedia.org/wiki/Wi-Fi_Protected_Setup) (WPS) with push-button or PIN methods.
* Disable communication between clients (client isolation).
* IEEE 802.11n & 802.11ac support
* Internet sharing methods: NATed or Bridged or None (no Internet sharing).
Expand All @@ -23,11 +19,9 @@ also provides GUI: [lakinduakash/linux-wifi-hotspot]
* bash (to run this script)
* util-linux (for getopt)
* procps or procps-ng
* hostapd
* hostapd (v2.6 or newer)
* iproute2
* iw
* iwconfig (you only need this if 'iw' can not recognize your adapter)
* haveged (optional)
* iw (non-`nl80211` wifi drivers are no longer supported)

### For 'NATed' or 'None' Internet sharing method
* dnsmasq
Expand All @@ -52,8 +46,13 @@ also provides GUI: [lakinduakash/linux-wifi-hotspot]
### No passphrase (open network):
create_ap wlan0 eth0 MyAccessPoint

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

### WPS Push Button or PIN entry:
create_ap wlan0 eth0 MyAccessPoint MyPassPhrase
create_ap --wps-pbc wlan0 # Device will have 2 minutes to connect
create_ap --wps-pin wlan0,12345678 # Enroll PIN 12345678 for device requesting it

### AP without Internet sharing:
create_ap -n wlan0 MyAccessPoint MyPassPhrase
Expand All @@ -67,13 +66,10 @@ also provides GUI: [lakinduakash/linux-wifi-hotspot]
### 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:
### WPA2 + WPA3 passphrase using pipe:
echo -e "MyAccessPoint\nMyPassPhrase" | create_ap wlan0 eth0

### Enable IEEE 802.11n
Expand All @@ -94,5 +90,3 @@ Using the persistent [systemd](https://wiki.archlinux.org/index.php/systemd#Basi
## License
FreeBSD


[lakinduakash/linux-wifi-hotspot]: https://github.com/lakinduakash/linux-wifi-hotspot
3 changes: 0 additions & 3 deletions bash_completion
Original file line number Diff line number Diff line change
Expand Up @@ -115,9 +115,6 @@ _create_ap() {
--no-virt)
# No Options
;;
--no-haveged)
# No Options
;;
--fix-unmanaged)
# No Options
;;
Expand Down
Loading