2019-04-14 16:43:50 +00:00
## Linux Wifi Hotspot
2021-09-30 18:13:05 +00:00
<!-- [![Build Status ](https://travis-ci.com/lakinduakash/linux-wifi-hotspot.svg?branch=master )](https://travis-ci.com/lakinduakash/linux-wifi-hotspot) -->
![Build ](https://github.com/lakinduakash/linux-wifi-hotspot/actions/workflows/build.yml/badge.svg )
2019-04-17 20:52:12 +00:00
[![Gitter ](https://badges.gitter.im/linux-wihotspot/community.svg )](https://gitter.im/linux-wihotspot/community?utm_source=badge& utm_medium=badge& utm_campaign=pr-badge)
2021-01-08 07:56:39 +00:00
[![FOSSA Status ](https://app.fossa.com/api/projects/git%2Bgithub.com%2Flakinduakash%2Flinux-wifi-hotspot.svg?type=shield )](https://app.fossa.com/projects/git%2Bgithub.com%2Flakinduakash%2Flinux-wifi-hotspot?ref=badge_shield)
2019-04-17 20:19:58 +00:00
2021-12-26 21:32:38 +00:00
### What's new
2023-05-17 09:25:23 +00:00
* Use aa-complain instead of complain to fix permission issue for dnsmasq
* Fix some 5Ghz band not working issue
#### Thank you for all the contributions made while I'm not active on this repository.
2021-09-12 10:37:49 +00:00
2019-04-14 16:43:50 +00:00
### Features
2023-05-23 22:45:24 +00:00
2020-12-15 23:37:58 +00:00
* Share your wifi like in Windows - Use wifi and enable hotspot at the same time.
2021-10-26 02:24:11 +00:00
* Share a wifi access point from any network interface
2023-05-17 09:14:22 +00:00
* [Create a hotspot with VPN ](#vpn-hotspot ) - The hotspot has the traffic tunnelled through VPN. Useful for devices with no VPN app support like TV or gaming consoles.
2021-10-26 02:24:11 +00:00
* Share wifi via QR code
2020-10-30 19:44:48 +00:00
* MAC filter
2021-10-26 02:24:11 +00:00
* View connected devices
2019-04-15 21:30:14 +00:00
* Includes Both command line and gui.
2020-11-04 00:28:43 +00:00
* Support both 2.4GHz and 5GHz (Need to be compatible with your wifi adapter). Ex: You have connected to the 5GHz network and share a connection with 2.4GHz.
2021-10-26 02:24:11 +00:00
* Customise wifi Channel, Change MAC address, etc.
2019-04-17 21:14:17 +00:00
* Hide SSID
2021-12-26 21:32:38 +00:00
* customize gateway IP address
2023-11-22 12:49:15 +00:00
* Enable IEEE 80211n, IEEE 80211ac and IEEE 80211ax modes
2019-04-14 16:43:50 +00:00
2021-10-17 23:45:52 +00:00
![screenshot ](docs/sc4.png )
2019-04-17 18:32:30 +00:00
2020-09-18 21:37:48 +00:00
2020-12-22 14:58:36 +00:00
### Command line help and documentation
2019-04-17 18:12:59 +00:00
2020-12-22 14:58:36 +00:00
Read [Command line help and documentation here ](src/scripts/README.md ).
If you only need the command-line without GUI run `make install-cli-only` as root user.
2020-12-22 14:37:55 +00:00
2019-05-27 21:15:43 +00:00
### Notes
2022-04-06 15:05:10 +00:00
- Sometimes there are troubles with **5Ghz bands** due to some vendor restrictions. If you cannot start hotspot while you are connected to 5Ghz band, Unselect **Auto** and select **2.4Ghz** in frequency selection.
2019-05-27 21:15:43 +00:00
2022-04-06 15:05:10 +00:00
- If any problems with **RealTeK Wifi Adapters** see [this ](docs/howto/realtek.md )
2019-09-05 12:01:16 +00:00
2022-04-06 15:05:10 +00:00
- **Unable to allocate IP: firewalld issue:** Please check for potential fixes: [#209 ](https://github.com/lakinduakash/linux-wifi-hotspot/issues/209 ) [#166 ](https://github.com/lakinduakash/linux-wifi-hotspot/issues/166 )
2022-03-29 03:47:08 +00:00
2022-09-27 07:23:08 +00:00
- **dnsmasq: cannot read /tmp/create_ap.wlo1.conf.*****/dnsmasq.conf: Permission denied**, on Manjaro or ArchLinux ; check [#183 ](https://github.com/lakinduakash/linux-wifi-hotspot/issues/183 )
2022-04-06 15:05:10 +00:00
## Installation
2020-10-28 15:13:23 +00:00
2023-11-11 20:51:29 +00:00
#### Debian/Ubuntu (Outdated)
2021-01-17 21:06:48 +00:00
2020-10-28 15:13:23 +00:00
Download the debian package from latest [release ](https://github.com/lakinduakash/linux-wifi-hotspot/releases/latest )
2021-01-23 02:22:54 +00:00
**OR**
2023-08-23 21:05:26 +00:00
Please don't use following for ubuntu since I lost keys and package is outdated. I'll fix it ASAP
2021-01-23 02:22:54 +00:00
```bash
2023-08-23 21:05:26 +00:00
# For ubuntu - package outdated due to lost GPG keys
2021-01-23 17:10:27 +00:00
sudo add-apt-repository ppa:lakinduakash/lwh
2021-01-23 02:22:54 +00:00
sudo apt install linux-wifi-hotspot
```
2020-10-28 15:13:23 +00:00
#### Arch based distributions
2023-05-23 22:45:24 +00:00
Linux Wifi Hotspot is available as an [AUR package ](https://aur.archlinux.org/packages/linux-wifi-hotspot/ ). You can install it manually or with your favourite AUR helper.
For example, if you use `yay` you can do:
2021-10-24 13:52:54 +00:00
`yay -S linux-wifi-hotspot`
2020-10-28 15:13:23 +00:00
2022-04-06 15:05:10 +00:00
## Dependencies
2019-04-14 16:43:50 +00:00
2019-04-16 21:00:39 +00:00
#### General
2019-04-16 21:14:18 +00:00
* bash
2019-04-16 21:00:39 +00:00
* 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)
2019-04-14 16:44:26 +00:00
2019-04-16 21:14:18 +00:00
_Make sure you have those dependencies by typing them in terminal. If any of dependencies fail
install it using your distro's package manager_
2019-04-16 21:00:39 +00:00
#### For 'NATed' or 'None' Internet sharing method
* dnsmasq
* iptables
2020-10-04 10:47:55 +00:00
#### To build from source
2019-04-14 16:44:26 +00:00
2019-04-16 21:00:39 +00:00
* make
2019-04-15 21:30:14 +00:00
* gcc and g++
2019-04-16 21:00:39 +00:00
* build-essential
* pkg-config
* gtk
2019-04-17 20:32:12 +00:00
* libgtk-3-dev
2021-10-17 22:48:30 +00:00
* libqrencode-dev (for qr code generation)
* libpng-dev (for qr code generation)
2019-04-17 20:32:12 +00:00
On Ubuntu or debian install dependencies by,
```bash
2021-10-17 22:48:30 +00:00
sudo apt install -y libgtk-3-dev build-essential gcc g++ pkg-config make hostapd libqrencode-dev libpng-dev
2019-04-17 20:32:12 +00:00
```
2022-02-04 07:24:47 +00:00
On Fedora/CentOS/Red Hat Enterprise Linux/Rocky Linux/Oracle Linux
2022-02-04 07:22:31 +00:00
```bash
sudo dnf install -y gtk3-devel gcc gcc-c++ kernel-devel pkg-config make hostapd qrencode-devel libpng-devel
```
2020-10-04 10:47:55 +00:00
## Installation
2019-04-16 21:00:39 +00:00
git clone https://github.com/lakinduakash/linux-wifi-hotspot
cd linux-wifi-hotspot
2020-11-09 01:07:14 +00:00
2019-04-17 20:32:12 +00:00
#build binaries
2019-04-16 21:00:39 +00:00
make
2020-11-09 01:07:14 +00:00
2019-04-17 20:32:12 +00:00
#install
2019-04-16 21:00:39 +00:00
sudo make install
2023-05-23 22:45:24 +00:00
2019-04-16 21:00:39 +00:00
## Uninstallation
2019-04-16 21:14:18 +00:00
sudo make uninstall
2023-05-23 22:45:24 +00:00
2019-04-17 14:43:24 +00:00
## Running
2020-11-09 01:07:14 +00:00
You can launch the GUI by searching for "Wifi Hotspot" in the Application Menu
or using the terminal with:
2020-07-30 18:48:43 +00:00
2020-11-09 01:07:14 +00:00
wihotspot
2023-05-23 22:45:24 +00:00
2023-01-31 06:28:35 +00:00
< h2 id = "vpn-hotspot" > Create VPN Hotspot< / h2 >
After connecting to VPN, Open `wihotspot` GUI. Select the virtual interface created by the VPN. In this case it is `tun0`
2023-01-31 06:40:25 +00:00
![image ](docs/vpn.png )
2023-01-31 06:28:35 +00:00
2019-04-16 21:14:18 +00:00
2020-11-09 01:07:14 +00:00
## Run on Startup
The `wihotspot` GUI uses `create_ap` to create and manage access points. This service and core logic was originally created by
[@oblique ](http://github.com/oblique ), and are now maintained in this
repository.
2019-04-17 18:18:17 +00:00
2020-11-09 01:07:14 +00:00
Start the hotspot service on startup (using your saved configuration) with:
2019-04-18 07:00:07 +00:00
2020-12-07 09:13:18 +00:00
systemctl enable create_ap
2023-05-23 22:45:24 +00:00
2023-01-31 06:28:35 +00:00
2019-04-18 07:00:07 +00:00
2020-11-09 01:07:14 +00:00
## Contributing
2020-12-22 14:19:32 +00:00
2020-12-22 14:31:14 +00:00
If you found a bug or you have an idea about improving this make an issue. Even a small contribution make open source world more beautiful.
Please read [CONTRIBUTING.md ](CONTRIBUTING.md ) for more info.
2020-12-22 14:19:32 +00:00
2021-01-22 20:42:23 +00:00
## Disclaimer
< div > Icons made by < a href = "https://www.freepik.com" title = "Freepik" > Freepik< / a > from < a href = "https://www.flaticon.com/" title = "Flaticon" > www.flaticon.com< / a > < / div >
2019-04-18 07:00:07 +00:00
2021-11-24 21:49:52 +00:00
## Stargazers over time
[![Stargazers over time ](https://starchart.cc/lakinduakash/linux-wifi-hotspot.svg )](https://starchart.cc/lakinduakash/linux-wifi-hotspot)
2019-04-17 18:18:17 +00:00
## License
FreeBSD
Copyright (c) 2013, oblique
2023-05-23 22:45:24 +00:00
Copyright (c) 2023, lakinduakash
2021-01-08 07:56:39 +00:00
2021-01-23 17:10:27 +00:00
[![FOSSA Status ](https://app.fossa.com/api/projects/git%2Bgithub.com%2Flakinduakash%2Flinux-wifi-hotspot.svg?type=large )](https://app.fossa.com/projects/git%2Bgithub.com%2Flakinduakash%2Flinux-wifi-hotspot?ref=badge_large)