A few days ago my powerline definitely died, so I had to set up a very basic wireless access point using Zeroshell and my Raspberry Pi. As you know, the version 3 of this device comes with built-in wireless capabilities. In this article I will briefly explain all the necessary steps to create the access point.
Download and install Zeroshell
First of all we need to open a terminal window and download the last version of the Zeroshell image for the Raspberry Pi:
cd /home/<your_user>/Downloads/ wget http://www.zeroshell.net/listing/ZeroShell-3.9.3A-RPI.img.gz
Once finished we can extract the image with gunzip:
Now we have to plug our microSD card in to our computer through a microSD to SD adapter and find its device name with fdisk (as root):
In my specific case the device node is /dev/mmcblk0, so I can flash the image to my microSD with the following command (as root):
dd if=./ZeroShell-3.9.3A-RPI.img of=/dev/mmcblk0
Once the process is terminated we can remove our microSD card from our computer and insert it into the appropriate slot of the Raspberry Pi.
Accessing Zeroshell via browser and SSH
By default Zeroshell provides a web interface which is reachable at the IP address 192.168.0.75. We can access it via browser after skipping all the warning messages related to the non-reliable X.509 certificate (see the generic FAQs here). Default user and password are respectively admin and zeroshell. Obviously, we are allowed to change the password in a second moment.
After passing the login we can enable the SSH server by clicking on the respective item located on the top menu bar. Then, we are able to login via SSH from our terminal:
Set up the wireless access point
After SSH login we have to interact with the Zeroshell command line interface to create our wireless access point. First of all we need to type W to launch the WiFi manager and then N to add a new wireless network.
At this point we do the following steps:
- Select the access point mode by typing 1
- Set the network SSID (the name of our WiFi network); we can leave empty the Hide SSID and WDS (Wireless Distribution System) options
- Select the WPA-PSK encryption by typing 3
- Insert the pre-shared key (the password of our WiFi network).
If we now return to the web interface and click on the Network item we will notice the presence of a new network interface called WLAN00. We now set a static IP address and the netmask by selecting that interface and clicking on the Add IP button on the right. For example, we can choose 192.168.2.1 as IP address and 255.255.255.0 as netmask.
Obviously, there is also another network interface called ETH00 with IP 192.168.0.75 and netmask 255.255.255.0 which was already there and is also used to communicate with our WAN router through a LAN cable connected to the Raspberry Pi.
Create a bridge between the network interfaces
Now, the problem is that we have the ETH00 interface working on the network 192.168.0.0 and the WLAN00 working on the network 192.168.2.0. So, how can we connect them to obtain internet access for our access point? We can create a bridge between the two interfaces. This can be done by clicking on the New BRIDGE button, under the main menu bar located on the top of the page. Then we have to move the two interfaces from the left box to the right one using the >> button and finally save.
Optional: set up the default gateway
If you want you can set up the IP address of the default gateway (the WAN router) by clicking on the GATEWAY button, even if this is not mandatory.
Et voilà! Our wireless access point is ready!