Changes between Version 65 and Version 66 of WikiStart
- Timestamp:
- Jun 4, 2013, 2:05:14 PM (11 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
WikiStart
v65 v66 18 18 == Betrokkenheid van Wireless Leiden? == 19 19 De betekenis en werkwijze van eduroam voor dit Wireless Leiden project is vanuit een "aanbieders" perspectief. Daarbij zal voornamelijk de onderliggende technische werking van de infrastructuur om eduroam accesspoints (voor gebruikers) te realiseren ter sprake komen. 20 Wireless Leiden neemt momenteel niet als "identity provider" deel aan eduroam, maar faciliteerd louter het doorgeven van de vereiste authenticatie "aanvragen" en autorisatie "goedkeuringen"via een grotendeels intern ontwikkeld prototype infrastructuur.20 Wireless Leiden neemt momenteel niet als eduroam idP (identity provider) deel, maar faciliteerd louter het doorgeven van de vereiste authenticatie "aanvragen" en autorisatie "goedkeuringen" en is een eduraom SP (service provider) via een grotendeels intern ontwikkeld prototype infrastructuur. 21 21 Als partieel serviceprovider koppelt Wireless Leiden eduroam gebruikers automatisch en beveiligd door aan de daarvoor aangewezen (onderwijs)netwerken. Een onderwijsinstelling vervult vaak meerdere rollen binnen het eduroam project inclusief internet-gateway, maar Wireless Leiden beperkt zich puur tot de ondersteunende koppeling en integratie van deze diensten. 22 22 … … 30 30 Met tenslotte een succesvolle testcase van het prototype met dank aan [http://www.surfnet.nl Surfnet] dat heeft geresulteerd in de "bijna" alles omvattende en sluitende handleiding (die u nu leest) voor het op grote schaal implementeren en uitrollen van de eduroam infrastructuur op het Wireless Leiden netwerk door Walter Sonius. 31 31 32 *Ontwikkelaars van Wireless Leiden zelf kunnen de roaming eigenschap van deze infrastuctuur alleen gebruiken, testen en ontwikkelen wanneer ze beschikken over een geldig eduroam accounts -naam en -wachtwoord. Dit dient geleverd te zijn door een aan eduroam/surf foundation gelieerde identity provider. Als voorbeeld beschikken studenten/scholieren en mederwerkers van Universiteit Leiden of Hogeschool Leiden hierover. Het aanvragen van een eduroam test-account voor een ontwikkelaar van wireless-leiden bij de Surffoundation behoort tot de mogelijkheden. 32 *Ontwikkelaars van Wireless Leiden zelf kunnen de roaming eigenschap van deze infrastuctuur alleen gebruiken, testen en ontwikkelen wanneer ze beschikken over een geldig eduroam accounts -naam en -wachtwoord. Dit dient geleverd te zijn door een aan eduroam/surf foundation gelieerde identity provider. Als voorbeeld beschikken studenten/scholieren en mederwerkers van Universiteit Leiden of Hogeschool Leiden hierover. Het aanvragen van een eduroam test-account voor een ontwikkelaar van wireless-leiden bij de Surffoundation behoort tot de mogelijkheden. Via een eigen interne idP met de realm @wleiden.net kunnen wirelessleiden ontwikkelaars alleen op hun eigen eduroam netwerk geauthenticeerd worden om te testen. Dit account zal niet op andere eduroam hotspots fungeren! 33 33 34 34 == Benodigdheden waaronder technisch en organisatorisch? == … … 47 47 2. "Radius-!Server/Proxy & gateway": eenmalig installeren en configureren 48 48 3. Certnode: eenmalig easy-rsa opzetten voor benodige keys/certificaten voor 1 en 2 49 50 Voor het opleveren van veel AP's (batches) met unieke instelligen zal er uiteindelijk een configuratie script volgen waarmee op basis van het MAC-adres van het AP een aantal unieke parameters meegegeven kunnen worden voor de configuratie: MultiSSID, hostname, kanaal, ipadres(bedraad/draadloos), etc... vergeet de unieke openvpn client certificaten niet, tevens zouden er per AP unieke client gegevens om met de radius-proxy/server te communiceren gemaakt kunnen worden. 51 52 Door het gebruik van het opensource software [http://www.openwrt.org OpenWRT], [http://www.freebsd.org FREEBSD]/[http://www.debian.org Debian] en gerelateerde software projecten (isc-dhcp-server/freeradius/openvpn/syslog-ng), is deze setup niet gelimiteerd aan een enkel merk en of type hardware. Een kleine aanpassing aan de configuratie bestanden zou een vereiste kunnen zijn voordat het op ander hardware platvorm werkt. Deze handleiding zal overigens alleen toegespitst zijn op Ubiquiti AP's zoals Bullet m2 HP/ Nano station/loco m2 en via-epia-m/alixboard als radiusproxy/server & gateway. Als uitgangssituatie om deze handleiding uit te voeren word ubuntu 12.04LTS AMD64 gebruikt! 53 54 *Wat niet behandeld gaat worden is het aanmaken van een user-database/list voor de radius server, aangezien alle users extern via proxy geauthenticeerd worden en niet intern want Wireless Leiden is geen eduroam identityprovider! 49 4. Batch-Flash scripts 50 51 Voor het opleveren van veel AP's (batches) met unieke instelligen zal er uiteindelijk een configuratie script volgen waarmee op basis van het MAC-adres van het AP een aantal unieke parameters meegegeven kunnen worden voor de configuratie: MultiSSID, hostname, kanaal, ipadres(bedraad/draadloos), etc... in een simpel csv text bestand dat in een keer geflashed kan worden. vergeet de unieke openvpn client certificaten niet, tevens zouden er per AP unieke client gegevens om met de radius-proxy/server te communiceren gemaakt kunnen worden. 52 53 Door het gebruik van het opensource software [http://www.openwrt.org OpenWRT], [http://www.freebsd.org FREEBSD]/[http://www.debian.org Debian] en gerelateerde software projecten (isc-dhcp-server/freeradius/openvpn/syslog-ng), is deze setup niet gelimiteerd aan een enkel merk en of type hardware. Een kleine aanpassing aan de configuratie bestanden zou een vereiste kunnen zijn voordat het op ander hardware platvorm werkt. Deze handleiding zal overigens alleen toegespitst zijn op Ubiquiti AP's zoals Bullet m2 HP/ Nano station/loco m2 en X86 based via-epia-m/alixboard als radiusproxy/server & gateway. Als uitgangssituatie om deze handleiding uit te voeren word ubuntu 12.04LTS AMD64 gebruikt! 55 54 56 55 === 1 setup eduroam !AccessPoints === … … 905 904 netmask 255.255.255.0 #! bigger subnet for more clients/AP's? <--- 906 905 }}} 907 Continue setting up freeradius, only 3 config files really need to be edited. See following 3 example config files. 908 909 #example code# /etc/freeradius/clients.conf 910 {{{ 911 #q&d test externe clients from uu surfnet (accesspoins) 912 client 131.211.0.0/16 { 913 secret = testsecret 914 shortname = testsecret 915 } 916 917 #clients from the openvpn tunnel (accesspoints) 918 client 192.168.4.0/24 { 919 secret = testsecret 920 shortname = testsecret 921 } 922 923 #direct local eth1 test client without openvpn 924 client 172.17.169.66 { 925 secret = testsecret 926 shortname = testsecret 927 } 928 929 # if you are a iP provider for eduroam you also put the surfnet top level proxy here! 930 }}} 906 907 Continue setting up freeradius. See following 5 example config files for eduroam SP + idP setup. 931 908 932 909 #example code# /etc/freeradius/radiusd.conf … … 977 954 security { 978 955 max_attributes = 200 979 reject_delay = 1956 reject_delay = 0 980 957 status_server = yes 981 958 } 982 959 $INCLUDE ${raddbdir}/clients.conf 983 960 $INCLUDE ${raddbdir}/sites-enabled/default 961 $INCLUDE ${raddbdir}/sites-enabled/eduroam-inner 984 962 thread pool { 985 963 start_servers = 5 … … 1011 989 }}} 1012 990 991 #example code# /etc/freeradius/clients.conf 992 {{{ 993 #clients are Accesspoints not users! 994 995 #as idP requests from other eduroam institutions to 996 #authenticate your users for realm wleiden.net go here 997 client antarctica-flr-1 { 998 ipaddr = 172.20.1.2 999 netmask = 32 1000 secret = secretstuff 1001 require_message_authenticator = no 1002 shortname = antarctica-flr-1 1003 nastype = other 1004 virtual_server = eduroam 1005 } 1006 1007 #from uu surfnet eyof (accesspoins) 1008 client 131.211.0.0/16 { 1009 secret = testsecret 1010 shortname = testsecret 1011 } 1012 1013 #from the openvpn tunnel (accesspoints) 1014 client 192.168.4.0/24 { 1015 secret = testsecret 1016 shortname = testsecret 1017 } 1018 1019 #direct local eth1 test client without openvpn 1020 client 172.17.169.66 { 1021 secret = testsecret 1022 shortname = testsecret 1023 } 1024 1025 }}} 1026 1013 1027 #example code# /etc/freeradius/proxy.conf 1014 1028 {{{ 1029 #as eduroam idP this is for authenticating your local user realm locally 1030 realm wleiden.net { 1031 nostrip 1032 } 1033 1034 #as eduraom SP this is for forwarding user authenticate request 1035 #via surfnet to their local institutions central 1015 1036 realm DEFAULT { 1016 1037 authhost = radius.showcase.surfnet.nl:1812 … … 1021 1042 }}} 1022 1043 1044 #example code# /etc/freeradius/eap.conf 1045 {{{ 1046 eap { 1047 default_eap_type = peap 1048 timer_expire = 60 1049 ignore_unknown_eap_types = no 1050 cisco_accounting_username_bug = no 1051 1052 tls { 1053 certdir = ${confdir}/certs 1054 cadir = ${confdir}/certs 1055 private_key_password = whatever 1056 private_key_file = ${certdir}/server.key 1057 certificate_file = ${certdir}/server.pem 1058 CA_file = ${cadir}/ca.pem 1059 dh_file = ${certdir}/dh 1060 random_file = /dev/urandom 1061 fragment_size = 1024 1062 include_length = yes 1063 check_crl = no 1064 cipher_list = "DEFAULT" 1065 } 1066 1067 ttls { 1068 default_eap_type = mschapv2 1069 copy_request_to_tunnel = yes 1070 use_tunneled_reply = yes 1071 virtual_server = eduroam-inner 1072 } 1073 1074 peap { 1075 default_eap_type = mschapv2 1076 copy_request_to_tunnel = yes 1077 use_tunneled_reply = yes 1078 virtual_server = eduroam-inner 1079 } 1080 1081 mschapv2 { 1082 } 1083 1084 } 1085 }}} 1086 1023 1087 #example code# /etc/freeradius/sites-enabled/default 1024 1088 {{{ 1089 server eduroam { 1090 1025 1091 authorize { 1026 preprocess 1027 chap 1028 mschap 1029 digest 1030 DEFAULT 1031 eap { 1092 #preprocess 1093 #chap 1094 #mschap 1095 #digest 1096 #DEFAULT 1097 #auth_log 1098 suffix 1099 eap { 1032 1100 ok = return 1033 1101 } 1034 files1035 pap1102 #files 1103 #pap 1036 1104 } 1037 1105 authenticate { 1038 Auth-Type PAP {1039 pap1040 }1041 Auth-Type CHAP {1042 chap1043 }1044 Auth-Type MS-CHAP {1045 mschap1046 }1047 digest1048 unix1106 #Auth-Type PAP { 1107 # pap 1108 #} 1109 #Auth-Type CHAP { 1110 # chap 1111 #} 1112 #Auth-Type MS-CHAP { 1113 # mschap 1114 #} 1115 #digest 1116 #unix 1049 1117 eap 1050 pap 1051 } 1118 #pap 1119 } 1120 1121 preacct { 1122 suffix 1123 } 1124 1125 accounting { 1126 } 1127 1128 1129 1052 1130 session { 1053 1131 radutmp 1054 1132 } 1133 1055 1134 post-auth { 1056 } 1135 # reply_log 1136 # Post-Auth-Type REJECT { 1137 # reply_log 1138 # } 1139 } 1140 1057 1141 pre-proxy { 1058 } 1142 # pre_proxy_log 1143 # if (pre-proxy:Packet-Type != Accounting-Request) { 1144 # attr_filter.pre-proxy 1145 # } 1146 } 1147 1059 1148 post-proxy { 1149 # post_proxy_log 1150 # attr_filter.post-proxy 1060 1151 eap 1061 1152 } 1062 1153 }}} 1154 1155 #example code# /etc/freeradius/sites-enabled/eduroam-inner 1156 {{{ 1157 server eduroam-inner { 1158 1159 authorize { 1160 # auth_log 1161 eap 1162 files 1163 mschap 1164 pap 1165 } 1166 1167 authenticate { 1168 Auth-Type PAP { 1169 pap 1170 } 1171 Auth-Type MS-CHAP { 1172 mschap 1173 } 1174 eap 1175 } 1176 1177 post-auth { 1178 # reply_log 1179 # Post-Auth-Type REJECT { 1180 # reply_log 1181 # } 1182 } 1183 1184 } 1185 }}} 1186 1187 #example code# /etc/freeradius/users 1188 {{{ 1189 radiustest@wleiden.net Cleartext-Password := "abcdefg123" 1190 }}} 1191 1192 During install of freeradius, certificates are probably auto generated see "/etc/freeradius/certs" folder. These are needed for the eduroam idP part to allow locally authentication of the @wleiden.net realm. However these certificates are made with a common/default credentials but they can also be made again/customized by running the ./bootstrap command and editing the *.cnf files to fit your institution. See /usr/share/doc/freeradius/examples/certs/ 1193 1194 TODO Which public certificate files needs to be distributed to the users for their supplicants? 1063 1195 1064 1196 Continue setting up isc-dhcp-server. Besides editing the conf file, the service also needs to be removed from its default boot routine because it starts to early before its openvpn interface is online!