WLAN/openRADIUS

Aus C3D2
Zur Navigation springen Zur Suche springen

Ziel ist es einen "offenen" Zugang zum Netz anzubieten, aber jedoch Verschlüsselung beim Transport (zwischen Client und AP) bereitzustellen.

Dieses Ziel ist mit openRADIUS erreicht.

Einerseits wird WPA2-EAP (CCMP AES) verwendet und andererseits können zum Anmelden beliebige Zugangsdaten (login credentials) verwendet werden.

Hardware/Software

openRADIUS

Installation?

Abgeleitet von:

https://github.com/plitc/lxc-to-go/blob/master/hooks/templates/org.openwrt.freeradius.anonymous-eap-ttls

allgemeine Konfiguration

  • Proto: EAP-TTLS
  • AP: C3D2.anybert
  • AP: C3D2.anybert 5 (5 GHZ)
  • Username: anonymous
  • Password: anonymous

EAP-TTLS, Username: anonymous, Password: anonymous

Konfiguration vom Client

!!! für eine "höhere" Sicherheit sollte ein beliebiger Username/Password mit mindestens 16 Zeichen verwendet werden !!!

Konfiguration für das Verbinden mit NetworkManager

Konfiguration für das Verbinden mit wpa_supplicant

Konfiguration für das Verbinden mit wpa_supplicant bei Linux

<source lang=bash> network={ ssid="C3D2.anybert" key_mgmt=WPA-EAP eap=TTLS phase2="auth=PAP" identity="anonymous" password="anonymous"

  1. priority=25

} </source>

5 GHz Netz

<source lang=bash> network={ ssid="C3D2.anybert 5" key_mgmt=WPA-EAP eap=TTLS phase2="auth=PAP" identity="anonymous" password="anonymous"

  1. priority=25

} </source>

Konfiguration für das Verbinden mit wpa_supplicant bei BSD

Konfiguration für das Verbinden mit wpa_supplicant bei FreeBSD

<source lang=bash> network={ ssid="C3D2.anybert" proto=RSN key_mgmt=WPA-EAP eap=TTLS phase2="auth=PAP" identity="anonymous" password="anonymous" scan_ssid=1

  1. priority=145

} </source>

5 GHZ Netz

<source lang=bash> network={ ssid="C3D2.anybert 5" proto=RSN key_mgmt=WPA-EAP eap=TTLS phase2="auth=PAP" identity="anonymous" password="anonymous" scan_ssid=1

  1. priority=145

} </source>

Konfiguration für das Verbinden mit wpa_supplicant bei PC-BSD

Grundsätzlich kann die grafischen Oberfläche für die Verwaltung der Netzwerkverbindungen genutzt werden.

<source lang=bash>pc-su pc-netmanager</source>

Es ist halt das verfügbare Netzwerk C3D2.anybert hinzuzufügen (zu verwenden) und dabei WPA Enterprise i.V.m. EAP-TTLS einzustellen.

Verfahren für phase2 richtig eintragen

Bei grafischen Oberfläche für die Verwaltung der Netzwerkverbindungen (pc-bsd:Network Configuration) gibt es keine Möglichkeit die Einstellung für phase2 zu ändern. Sie ist immer MD5.

Um den Wert zu richtig einzutragen, muss wie bei #FreeBSD üblich, die Datei /etc/wpa_supplicant.conf manuell bearbeitet werden.

<source lang=bash>ee /etc/wpa_supplicant.conf</source>

<source lang=bash> network={ ssid="C3D2.anybert" proto=RSN key_mgmt=WPA-EAP eap=TTLS phase2="auth=PAP" identity="anonymous" password="anonymous" scan_ssid=1

  1. priority=145

} </source>

Zertifikate

Zertifikat radius.hq.c3d2.de

WLAN/openRADIUS/radius.hq.c3d2.de.pem

Einrichtung des Certificate für WPA_Supplicant

siehe: https://gitlab.hq.c3d2.de/daniel.plominski/anybert.radius.hq.c3d2.de/blob/master/README.md

Version 0.2.1

<source lang=bash> $ sudo su $ cd /etc/wpa_supplicant; mkdir certs; cd certs $ wget --no-check-certificate https://gitlab.hq.c3d2.de/daniel.plominski/anybert.radius.hq.c3d2.de/raw/master/certs/anybert.radius.hq.c3d2.de $ wget --no-check-certificate https://gitlab.hq.c3d2.de/daniel.plominski/anybert.radius.hq.c3d2.de/raw/master/certs/radius.hq.c3d2.de </source>

  • vi /etc/wpa_supplicant/wpa_supplicant.conf

<source lang=bash>

      1. C3D2 Wireless Network // ###

network={

       ssid="C3D2.anybert"
       key_mgmt=WPA-EAP
       eap=TTLS
       phase2="auth=PAP"
       identity="anonymous"
       password="anonymous"
       ca_cert="/etc/wpa_supplicant/certs/radius.hq.c3d2.de"
       # priority=25

}

network={

       ssid="C3D2.anybert 5"
       key_mgmt=WPA-EAP
       eap=TTLS
       phase2="auth=PAP"
       identity="anonymous"
       password="anonymous"
       ca_cert="/etc/wpa_supplicant/certs/radius.hq.c3d2.de"
       # priority=26

}

      1. // C3D2 Wireless Network ###

</source>

Herunterladen vom RootCA

https://gitlab.hq.c3d2.de/daniel.plominski/anybert.radius.hq.c3d2.de/tree/master

Konfiguration vom Server

anonymous-eap-ttls erstellen

<source lang=bash>lxc-to-go-provisioning -n radius -t deb8 -h yes -p 1812,1813,1814 -s yes</source>

  • works currently only with deb8 lxc

https://github.com/plitc/lxc-to-go/blob/master/hooks/templates/org.openwrt.freeradius.anonymous-eap-ttls

RootCA für RADIUS erstellen

<source lang=bash>ssh root@172.22.99.15</source>
<source lang=bash>lxc-to-go login (anybert)</source>
<source lang=bash>cd /etc/freeradius/certs</source>
<source lang=bash>mv ca.pem ca.pem_ORI</source>
<source lang=bash>mv server.key server.key_ORI</source>
<source lang=bash>mv server.pem server.pem_ORI</source>
<source lang=bash>openssl genrsa -aes256 -out ca.key 2048</source>
<source lang=bash>openssl req -new -x509 -days 3650 -key ca.key -out ca.pem</source>
<source lang=bash>openssl genrsa -aes256 -out server.key 2048</source>
<source lang=bash>openssl req -new -key server.key -out server.csr</source>
<source lang=bash>openssl x509 -req -days 3650 -in server.csr -CA ca.pem -CAkey ca.key -set_serial 01 -out server.pem</source>
<source lang=bash>vi /etc/freeradius/eap.conf</source>

<source lang=bash>

  private_key_password = CHANGEME

</source>

<source lang=bash>systemctl restart freeradius; systemctl status freeradius; tail -n 30 /var/log/freeradius/radius.log</source>

Siehe auch

Weblinks