-
-
Save lmasiero/beb3b62bc4e0a22d7a7604ec2a0a8d14 to your computer and use it in GitHub Desktop.
Raspberry Pi 3 access-point-setup
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
if [ "$EUID" -ne 0 ] | |
then echo "Must be root" | |
exit | |
fi | |
if [[ $# -lt 1 ]]; | |
then echo "You need to pass a password!" | |
echo "Usage:" | |
echo "sudo $0 yourChosenPassword [apName]" | |
exit | |
fi | |
APPASS="$1" | |
APSSID="rPi3" | |
if [[ $# -eq 2 ]]; then | |
APSSID=$2 | |
fi | |
apt-get remove --purge hostapd -yqq | |
apt-get update -yqq | |
apt-get upgrade -yqq | |
apt-get install hostapd dnsmasq -yqq | |
cat > /etc/dnsmasq.conf <<EOF | |
interface=wlan0 | |
dhcp-range=10.0.0.2,10.0.0.5,255.255.255.0,12h | |
EOF | |
cat > /etc/hostapd/hostapd.conf <<EOF | |
interface=wlan0 | |
hw_mode=g | |
channel=10 | |
auth_algs=1 | |
wpa=2 | |
wpa_key_mgmt=WPA-PSK | |
wpa_pairwise=CCMP | |
rsn_pairwise=CCMP | |
wpa_passphrase=$APPASS | |
ssid=$APSSID | |
ieee80211n=1 | |
wmm_enabled=1 | |
ht_capab=[HT40][SHORT-GI-20][DSSS_CCK-40] | |
EOF | |
sed -i -- 's/allow-hotplug wlan0//g' /etc/network/interfaces | |
sed -i -- 's/iface wlan0 inet manual//g' /etc/network/interfaces | |
sed -i -- 's/ wpa-conf \/etc\/wpa_supplicant\/wpa_supplicant.conf//g' /etc/network/interfaces | |
sed -i -- 's/#DAEMON_CONF=""/DAEMON_CONF="\/etc\/hostapd\/hostapd.conf"/g' /etc/default/hostapd | |
cat >> /etc/network/interfaces <<EOF | |
# Added by rPi Access Point Setup | |
allow-hotplug wlan0 | |
iface wlan0 inet static | |
address 10.0.0.1 | |
netmask 255.255.255.0 | |
network 10.0.0.0 | |
broadcast 10.0.0.255 | |
EOF | |
echo "denyinterfaces wlan0" >> /etc/dhcpcd.conf | |
systemctl enable hostapd | |
systemctl enable dnsmasq | |
sudo service hostapd start | |
sudo service dnsmasq start | |
echo "All done! Please reboot" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment