|
@@ -7161,14 +7161,7 @@ function enable_wifi_hotspot {
|
7161
|
7161
|
echo "auto $WIFI_INTERFACE" >> /etc/network/interfaces
|
7162
|
7162
|
echo "iface $WIFI_INTERFACE inet static" >> /etc/network/interfaces
|
7163
|
7163
|
echo ' address 192.168.4.1' >> /etc/network/interfaces
|
7164
|
|
- echo ' network 192.168.4.0' >> /etc/network/interfaces
|
7165
|
7164
|
echo ' netmask 255.255.255.0' >> /etc/network/interfaces
|
7166
|
|
- echo ' broadcast 192.168.4.255' >> /etc/network/interfaces
|
7167
|
|
- if [ $WIFI_PASSWORD ]; then
|
7168
|
|
- echo -n ' wpa-psk "' >> /etc/network/interfaces
|
7169
|
|
- echo -n "$WIFI_PASSWORD" >> /etc/network/interfaces
|
7170
|
|
- echo '"' >> /etc/network/interfaces
|
7171
|
|
- fi
|
7172
|
7165
|
service networking restart
|
7173
|
7166
|
fi
|
7174
|
7167
|
|
|
@@ -7181,46 +7174,51 @@ function enable_wifi_hotspot {
|
7181
|
7174
|
|
7182
|
7175
|
sed -i 's|#DAEMON_CONF=.*|DAEMON_CONF="/etc/hostapd/hostapd.conf"|g' /etc/default/hostapd
|
7183
|
7176
|
|
7184
|
|
- echo '### Wireless network name ###' > /etc/hostapd/hostapd.conf
|
7185
|
|
- echo "interface=$WIFI_INTERFACE" >> /etc/hostapd/hostapd.conf
|
7186
|
|
- echo '' >> /etc/hostapd/hostapd.conf
|
7187
|
|
- echo 'country_code=GB' >> /etc/hostapd/hostapd.conf
|
7188
|
|
- echo '' >> /etc/hostapd/hostapd.conf
|
|
7177
|
+ echo "interface=$WIFI_INTERFACE" > /etc/hostapd/hostapd.conf
|
7189
|
7178
|
echo "ssid=$WIFI_ESSID" >> /etc/hostapd/hostapd.conf
|
7190
|
|
- echo '' >> /etc/hostapd/hostapd.conf
|
7191
|
|
- echo "channel=${WIFI_HOTSPOT_CHANNEL}" >> /etc/hostapd/hostapd.conf
|
7192
|
|
- echo '' >> /etc/hostapd/hostapd.conf
|
7193
|
7179
|
echo "hw_mode=$WIFI_HOTSPOT_MODE" >> /etc/hostapd/hostapd.conf
|
7194
|
|
- echo '' >> /etc/hostapd/hostapd.conf
|
7195
|
|
- if [ ! $WIFI_PASSWORD ]; then
|
7196
|
|
- echo 'auth_algs=0' >> /etc/hostapd/hostapd.conf
|
7197
|
|
- echo 'wpa_key_mgmt=WPA-NONE' >> /etc/hostapd/hostapd.conf
|
7198
|
|
- else
|
7199
|
|
- echo '' >> /etc/hostapd/hostapd.conf
|
7200
|
|
- echo '# # Static WPA2 key configuration' >> /etc/hostapd/hostapd.conf
|
7201
|
|
- echo '# #1=wpa1, 2=wpa2, 3=both' >> /etc/hostapd/hostapd.conf
|
7202
|
|
- echo 'wpa=2' >> /etc/hostapd/hostapd.conf
|
7203
|
|
- echo '' >> /etc/hostapd/hostapd.conf
|
7204
|
|
- echo "wpa_passphrase=$WIFI_PASSWORD" >> /etc/hostapd/hostapd.conf
|
7205
|
|
- echo 'wpa_key_mgmt=WPA-PSK' >> /etc/hostapd/hostapd.conf
|
7206
|
|
- echo 'wpa_pairwise=TKIP' >> /etc/hostapd/hostapd.conf
|
7207
|
|
- echo 'auth_algs=1' >> /etc/hostapd/hostapd.conf
|
7208
|
|
- fi
|
7209
|
|
- echo '## Accept all MAC address ###' >> /etc/hostapd/hostapd.conf
|
|
7180
|
+ echo "channel=${WIFI_HOTSPOT_CHANNEL}" >> /etc/hostapd/hostapd.conf
|
7210
|
7181
|
echo 'macaddr_acl=0' >> /etc/hostapd/hostapd.conf
|
7211
|
|
- echo '#enables/disables broadcasting the ssid' >> /etc/hostapd/hostapd.conf
|
|
7182
|
+ echo 'auth_algs=1' >> /etc/hostapd/hostapd.conf
|
7212
|
7183
|
echo 'ignore_broadcast_ssid=0' >> /etc/hostapd/hostapd.conf
|
7213
|
|
- echo '# Needed for Windows clients' >> /etc/hostapd/hostapd.conf
|
7214
|
|
- echo 'eapol_key_index_workaround=0' >> /etc/hostapd/hostapd.conf
|
|
7184
|
+ echo 'wpa=2' >> /etc/hostapd/hostapd.conf
|
|
7185
|
+ echo "wpa_passphrase=$WIFI_PASSWORD" >> /etc/hostapd/hostapd.conf
|
|
7186
|
+ echo 'wpa_key_mgmt=WPA-PSK' >> /etc/hostapd/hostapd.conf
|
|
7187
|
+ echo 'wpa_pairwise=TKIP' >> /etc/hostapd/hostapd.conf
|
|
7188
|
+ echo 'rsn_pairwise=CCMP' >> /etc/hostapd/hostapd.conf
|
7215
|
7189
|
|
7216
|
7190
|
service hostapd restart
|
7217
|
7191
|
systemctl daemon-reload
|
7218
|
7192
|
|
|
7193
|
+ if ! grep -q "net.ipv4.ip_forward=1" /etc/sysctl.conf; then
|
|
7194
|
+ echo 'net.ipv4.ip_forward=1' >> /etc/sysctl.conf
|
|
7195
|
+ fi
|
|
7196
|
+ if grep -q "#net.ipv4.ip_forward=" /etc/sysctl.conf; then
|
|
7197
|
+ sed -i 's/#net.ipv4.ip_forward=.*/net.ipv4.ip_forward=1/g' >> /etc/sysctl.conf
|
|
7198
|
+ fi
|
|
7199
|
+ sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"
|
|
7200
|
+
|
|
7201
|
+ iptables -P INPUT ACCEPT
|
|
7202
|
+ iptables -F
|
|
7203
|
+ iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
|
|
7204
|
+ iptables -A FORWARD -i eth0 -o $WIFI_INTERFACE -m state --state RELATED,ESTABLISHED -j ACCEPT
|
|
7205
|
+ iptables -A FORWARD -i $WIFI_INTERFACE -o eth0 -j ACCEPT
|
|
7206
|
+ save_firewall_settings
|
|
7207
|
+
|
|
7208
|
+ sed -i 's/option domain-name "example.org";/#option domain-name "example.org";/g' /etc/dhcp/dhcpd.conf
|
|
7209
|
+ sed -i 's/option domain-name-servers ns1.example.org, ns2.example.org;/#option domain-name-servers ns1.example.org, ns2.example.org;/g' /etc/dhcp/dhcpd.conf
|
|
7210
|
+ sed -i 's/#authoritative;/authoritative;/g' /etc/dhcp/dhcpd.conf
|
|
7211
|
+
|
7219
|
7212
|
if ! grep -q "subnet 192.168.4.0 netmask 255.255.255.0" /etc/dhcp/dhcpd.conf; then
|
7220
|
|
- echo '' >> /etc/dhcp/dhcpd.conf
|
7221
|
|
- echo 'subnet 192.168.4.0 netmask 255.255.255.0 {' >> /etc/dhcp/dhcpd.conf
|
7222
|
|
- echo ' range 192.168.4.2 192.168.4.10;' >> /etc/dhcp/dhcpd.conf
|
7223
|
|
- echo '}' >> /etc/dhcp/dhcpd.conf
|
|
7213
|
+ echo 'subnet 192.168.4.0 netmask 255.255.255.0 {' >> /etc/dhcp/dhcpd.conf
|
|
7214
|
+ echo ' range 192.168.4.2 192.168.4.10;' >> /etc/dhcp/dhcpd.conf
|
|
7215
|
+ echo ' option broadcast-address 192.168.4.255;' >> /etc/dhcp/dhcpd.conf
|
|
7216
|
+ echo " option routers $ROUTER_IP_ADDRESS;" >> /etc/dhcp/dhcpd.conf
|
|
7217
|
+ echo ' default-lease-time 600;' >> /etc/dhcp/dhcpd.conf
|
|
7218
|
+ echo ' max-lease-time 7200;' >> /etc/dhcp/dhcpd.conf
|
|
7219
|
+ echo ' option domain-name "local";' >> /etc/dhcp/dhcpd.conf
|
|
7220
|
+ echo ' option domain-name-servers 8.8.8.8, 8.8.4.4;' >> /etc/dhcp/dhcpd.conf
|
|
7221
|
+ echo '}' >> /etc/dhcp/dhcpd.conf
|
7224
|
7222
|
fi
|
7225
|
7223
|
|
7226
|
7224
|
sed -i "s/INTERFACES=.*/INTERFACES='$WIFI_INTERFACE'/g" /etc/default/isc-dhcp-server
|