Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/goblenus/pyaccesspoint

Package to manage accesspoint on linux
https://github.com/goblenus/pyaccesspoint

access-point accesspoint python3 wifi-hotspot

Last synced: 1 day ago
JSON representation

Package to manage accesspoint on linux

Awesome Lists containing this project

README

        

Introduction
============

*PyAccessPoint* is a package to create a wifi access point on linux. Itdepends on *hostapd* for AP provisioning and *dnsmasq* to assign IP addresses to devices.

Dependencies
============

So, there 2 types of dependencies.

System dependencies:
- dnsmasq
- hostapd
- python3

Python dependencies
- wireless
- netifaces
- psutil

You can not install python dependencies manually, they will be installed while installing the package.
If you want to do it manually, just type (or copy, it's better way :D)

::

sudo apt install python3-dev python3-pip && sudo pip3 install wireless netifaces psutil

Installation
============

Easy way by using pip
::

sudo apt update && sudo apt --yes --force-yes install dnsmasq hostapd python3-dev python3-pip && sudo pip3 install pyaccesspoint

Hard way

1. Install system dependencies
::

sudo apt update && sudo apt --yes --force-yes install dnsmasq hostapd python3-dev unzip python3-pip

2. Download latest package
::

cd ~ && wget --output-document=pyaccesspoint-master.zip https://github.com/Goblenus/pyaccesspoint/archive/master.zip

3. Unpack downloaded package
::

unzip pyaccesspoint-master.zip && cd pyaccesspoint-master

4. Install it
::

sudo python3 setup.py install

5. Remove files
::

cd ~ && sudo rm -rf pyaccesspoint-master.zip pyaccesspoint-master

That is all. Now you can use PyAccessPoint.

One line install:

::

sudo apt update && sudo apt --yes --force-yes install dnsmasq hostapd python3-dev unzip python3-pip && cd ~ && wget --output-document=pyaccesspoint-master.zip https://github.com/Goblenus/pyaccesspoint/archive/master.zip && unzip pyaccesspoint-master.zip && cd pyaccesspoint-master && sudo python3 setup.py install && cd ~ && sudo rm -rf pyaccesspoint-master.zip pyaccesspoint-master

Usage
=====

You can use it as standalone command line utility:
To start
::

sudo pyaccesspoint start

It will create hotspot named "MyAccessPoint" on wlan0 with "1234567890" password.

All arguments you may obtain by typing:
::

pyaccesspoint --help

To stop
::

sudo pyaccesspoint stop

You can configure and save config file. This will save you time at them next start

::

sudo pyaccesspoint configure

You config file file will be placed at /etc/accesspoint/accesspoint.json.
To start it with config file just type:
::

sudo pyaccesspoint --config start

Code usage
============

1. Import
::

from PyAccessPoint import pyaccesspoint

2. Create AccessPoint class
::

access_point = pyaccesspoint.AccessPoint()

3. Start it
::

access_point.start()

4. Stop it
::

access_point.stop()

To check is accesspoint started use is_running
::

access_point.is_running()

You can change accesspoint parameters while creating AccessPoint class

Class parameters:
- **wlan** - wlan interface
- **inet** - wlan forward to interface (use None to off forwarding)
- **ip** - just ip of your accesspoint wlan interface
- **netmask** - so... -> (`wiki link `_)
- **ssid** - name of your accesspoint
- **password** - password of your accesspoint

Tested
======

- OrangePi Plus with Armbian 5.23

Note
====

This project is python3 compatible only, python2 is not tested at all.

Idea
====

This project is fork of https://github.com/prahladyeri/hotspotd (Prahlad Yeri - [email protected])