Differenze tra le versioni di "Personal Portable Server"

Da raspibo.
Jump to navigation Jump to search
 
(7 versioni intermedie di 2 utenti non mostrate)
Riga 5: Riga 5:
 
La "ethernet on board" e` lasciata libera per poter collegare il server ad un'altra rete, sulle porte USB (serve almeno un Raspberry Pi B+, con 4 porte USB) vanno inseriti due o tre convertitori USB-Ethernet ed una chiave WiFi.
 
La "ethernet on board" e` lasciata libera per poter collegare il server ad un'altra rete, sulle porte USB (serve almeno un Raspberry Pi B+, con 4 porte USB) vanno inseriti due o tre convertitori USB-Ethernet ed una chiave WiFi.
  
Le porte Ethernet-USB e la WiFi saranno in bridge fra loro per definire una unioca "sottorete" (adesso non so come [de]scriverlo meglio).
+
Le porte Ethernet-USB e la WiFi saranno in bridge fra loro per definire una unica "sottorete" (adesso non so come [de]scriverlo meglio).
 +
 
 +
=== Materiale utilizzato ===
 +
 
 +
{|
 +
| align="center" style="background:#f0f0f0;"|'''Q.ta`'''
 +
| align="center" style="background:#f0f0f0;"|'''Descrizione'''
 +
|-
 +
| 1||Raspberry Pi B+
 +
|-
 +
| 1||Micro SD 8GB (Va bene anche una 4GB)
 +
|-
 +
| 1||TP-LINK TL-WN722N
 +
|-
 +
| 2||USB 2.0 to Fast Ethernet Adapter
 +
|-
 +
|
 +
|}
 +
 
 +
== Installazione programmi e utility ==
 +
 
 +
<pre style="background-color:black;color:white;overflow:auto">
 +
apt-get install hostapd hostap-utils dnsmasq bridge-utils
 +
</pre>
 +
 
 +
== Configurazione ==
 +
 
 +
 
 +
=== Network ===
 +
 
 +
Editiamo il file "/etc/network/interfaces" (si puo` notare l'aggiunta di due schede di rete e di un "bridge br0"):
 +
<pre style="color:green;overflow:auto">
 +
auto lo br0
 +
 
 +
iface lo inet loopback
 +
iface eth0 inet dhcp
 +
 
 +
allow-hotplug wlan0
 +
iface wlan0 inet manual
 +
#wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
 +
#iface default inet dhcp
 +
 
 +
allow-hotplug eth1
 +
iface eth1 inet manual
 +
allow-hotplug eth2
 +
iface eth2 inet manual
 +
 
 +
iface br0 inet static
 +
#    bridge_ports wlan0 eth1 eth2
 +
    bridge_ports eth1 eth2
 +
    address 192.168.4.1
 +
    netmask 255.255.255.0
 +
#    hostapd /etc/hostapd/hostapd.conf
 +
</pre>
 +
''(Versione "jessie" del 15 Ottobre 2015)''
 +
<br>
 +
 
 +
=== hostapd ===
 +
 
 +
Generiamo il file "/etc/hostapd/hostapd.conf" con la solita procedura:
 +
<pre style="background-color:black;color:white;overflow:auto">
 +
sudo su
 +
zcat /usr/share/doc/hostapd/examples/hostapd.conf.gz > /etc/hostapd/hostapd.conf
 +
</pre>
 +
Per 'sicurezza' ho anche messo il file leggibile/scrivibile solo da 'root'
 +
<pre style="background-color:black;color:white;overflow:auto">
 +
sudo chmod 600 /etc/hostapd/hostapd.conf
 +
sudo chown root:root /etc/hostapd/hostapd.conf
 +
</pre>
 +
Sistemiamo la configurazione secondo le nostre esigenze, modifichiamo "/etc/hostapd/hostapd.conf" (indichero` solo le righe che ho modificato, le altre sono state lasciate inalterate):
 +
<pre style="color:green;overflow:auto">
 +
bridge=br0
 +
ssid=<MetteteUnNomePerLaReteWifi>
 +
wpa=2
 +
wpa_passphrase=<MetteteLaVostra>
 +
wpa_key_mgmt=WPA-PSK
 +
rsn_pairwise=CCMP
 +
</pre>
 +
Ora editiamo il file "/etc/default/hostapd", per farlo avviare come demone ad ogni avvio del sistema, modificando solo la riga:
 +
<pre style="color:green;overflow:auto">
 +
DAEMON_CONF="/etc/hostapd/hostapd.conf"
 +
</pre>
 +
 
 +
=== dnsmasq ===
 +
 
 +
Modifichiamo "/etc/dnsmasq.conf" (indichero` solo le righe che ho modificato, le altre sono state lasciate inalterate):
 +
<pre style="color:green;overflow:auto">
 +
domain-needed
 +
bogus-priv
 +
interface=br0
 +
dhcp-range=192.168.4.11,192.168.4.255,12h
 +
dhcp-option=option:router,192.168.4.1
 +
</pre>
 +
 
 +
=== Firewall (iptables) ===
 +
 
 +
Normalmente uso un'utility online per generare la base e procedo poi al ritocco secondo le esigenze, l'indirizzo del 'generatore' e`: http://easyfwgen.morizot.net/
 +
 
 +
Create la vostra configurazione e salvatela in un file chiamato "/etc/init.d/iptables", cambiate poi i permessi:
 +
<pre style="background-color:black;color:white;overflow:auto">
 +
sudo chmod 755 /etc/init.d/iptables
 +
sudo chown root:root /etc/init.d/iptables
 +
update-rc.d iptables defaults
 +
</pre>
 +
 
 +
Link al download dello script iptables che ho predisposto, attivando anche servizi come "http" ed "ftp": [https://app.box.com/s/u5d1irkq0lc46bkaoq94tfc3wd70v2fu iptables]
 +
 
 +
== Reboot ==
 +
Sembra poco, ma abbiamo modificato qualche cosa e i comandi:
 +
<pre style="background-color:black;color:white;overflow:auto">
 +
sudo service networking restart
 +
sudo service hostapd restart
 +
sudo service dnsmasq restart
 +
sudo service iptables restart
 +
</pre>
 +
potrebbero non funzionare, se e` cosi`, riavviate.
 +
 
 +
== End ==
 +
 
 +
''Non resta che provare il collegamento dei clients, per il WiFi ricordate di inserire il SSID e la Passphrase, quelle che avete utilizzato nella configurazione di "hostapd".
 +
''
  
 
== Riferimenti ==
 
== Riferimenti ==
Riga 11: Riga 131:
 
   * http://www.raspibo.org/wiki/index.php/Raspberry_Pi_Access_Point_WEP2
 
   * http://www.raspibo.org/wiki/index.php/Raspberry_Pi_Access_Point_WEP2
 
   * http://www.raspibo.org/wiki/index.php/Raspberry_Pi_Access_Point
 
   * http://www.raspibo.org/wiki/index.php/Raspberry_Pi_Access_Point
 +
  * [https://app.box.com/s/zfar4n72443z1pgf9u6sua6ljz6iuv0l Link alla cartella delle foto]

Versione attuale delle 18:53, 15 ott 2015

Personal Portable Server

L'idea di partenza e` stata di avere un server portabile, fatto col Raspberry Pi, che assegni indirizzi IP ai client collegati (DHCP server), sia che lo siano via cavo ethernet, che wifi (access point).

La "ethernet on board" e` lasciata libera per poter collegare il server ad un'altra rete, sulle porte USB (serve almeno un Raspberry Pi B+, con 4 porte USB) vanno inseriti due o tre convertitori USB-Ethernet ed una chiave WiFi.

Le porte Ethernet-USB e la WiFi saranno in bridge fra loro per definire una unica "sottorete" (adesso non so come [de]scriverlo meglio).

Materiale utilizzato

Q.ta` Descrizione
1 Raspberry Pi B+
1 Micro SD 8GB (Va bene anche una 4GB)
1 TP-LINK TL-WN722N
2 USB 2.0 to Fast Ethernet Adapter

Installazione programmi e utility

apt-get install hostapd hostap-utils dnsmasq bridge-utils

Configurazione

Network

Editiamo il file "/etc/network/interfaces" (si puo` notare l'aggiunta di due schede di rete e di un "bridge br0"):

auto lo br0

iface lo inet loopback
iface eth0 inet dhcp

allow-hotplug wlan0
iface wlan0 inet manual
#wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
#iface default inet dhcp

allow-hotplug eth1
iface eth1 inet manual
allow-hotplug eth2
iface eth2 inet manual

iface br0 inet static
#    bridge_ports wlan0 eth1 eth2
    bridge_ports eth1 eth2
    address 192.168.4.1
    netmask 255.255.255.0
#    hostapd /etc/hostapd/hostapd.conf

(Versione "jessie" del 15 Ottobre 2015)

hostapd

Generiamo il file "/etc/hostapd/hostapd.conf" con la solita procedura:

sudo su
zcat /usr/share/doc/hostapd/examples/hostapd.conf.gz > /etc/hostapd/hostapd.conf

Per 'sicurezza' ho anche messo il file leggibile/scrivibile solo da 'root'

sudo chmod 600 /etc/hostapd/hostapd.conf
sudo chown root:root /etc/hostapd/hostapd.conf

Sistemiamo la configurazione secondo le nostre esigenze, modifichiamo "/etc/hostapd/hostapd.conf" (indichero` solo le righe che ho modificato, le altre sono state lasciate inalterate):

bridge=br0
ssid=<MetteteUnNomePerLaReteWifi>
wpa=2
wpa_passphrase=<MetteteLaVostra>
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP

Ora editiamo il file "/etc/default/hostapd", per farlo avviare come demone ad ogni avvio del sistema, modificando solo la riga:

DAEMON_CONF="/etc/hostapd/hostapd.conf"

dnsmasq

Modifichiamo "/etc/dnsmasq.conf" (indichero` solo le righe che ho modificato, le altre sono state lasciate inalterate):

domain-needed
bogus-priv
interface=br0
dhcp-range=192.168.4.11,192.168.4.255,12h
dhcp-option=option:router,192.168.4.1

Firewall (iptables)

Normalmente uso un'utility online per generare la base e procedo poi al ritocco secondo le esigenze, l'indirizzo del 'generatore' e`: http://easyfwgen.morizot.net/

Create la vostra configurazione e salvatela in un file chiamato "/etc/init.d/iptables", cambiate poi i permessi:

sudo chmod 755 /etc/init.d/iptables
sudo chown root:root /etc/init.d/iptables
update-rc.d iptables defaults

Link al download dello script iptables che ho predisposto, attivando anche servizi come "http" ed "ftp": iptables

Reboot

Sembra poco, ma abbiamo modificato qualche cosa e i comandi:

sudo service networking restart
sudo service hostapd restart
sudo service dnsmasq restart
sudo service iptables restart

potrebbero non funzionare, se e` cosi`, riavviate.

End

Non resta che provare il collegamento dei clients, per il WiFi ricordate di inserire il SSID e la Passphrase, quelle che avete utilizzato nella configurazione di "hostapd".

Riferimenti

 * http://www.raspibo.org/wiki/index.php/Raspberry_Pi_Access_Point_WEP2
 * http://www.raspibo.org/wiki/index.php/Raspberry_Pi_Access_Point
 * Link alla cartella delle foto