Kebutuhan Hardware dan Software
Peralatan yang digunakan untuk mengimplementasikan sistem ini adalah:
- Satu buah PC sebagai radius server. Sistem Operasi Ubuntu Server 10.04
- Wireless Access Point WRT54G2 dengan firmwire DD-WRT untuk mensupport WPA-Enterprise.
- Freeradius versi 2.17
- Server Radius utama (tinggal menggunakan, koordinasi dengan admin PPTIK UGM)
Implementasi di sisi Radius Server
Dalam hal ini penulis beranggapan Sistem Operasi Ubuntu Server 10.04 dan Freeradius server 2.17 telah terinstall dengan baik pada komputer serta support SSl dan EAP-TLS. Server Radius Pusat disini sudah dalam kondisi siap, dalam hal ini Server Radius Utama tersebut adalah milik Pusat Pelayanan Teknologi Informasi dan Komunikasi (PPTIK UGM). Server Radius MIPA sebagai client dari Server Radius Utama PPTIK dan berkomunikasi menggunakan metode realm.
Konfigurasi penting pada Radius Server (/usr/local/radius/etc/raddb):
- Bagian client.conf, pada bagian ini kita mendifinisikan IP Address dan Secret dari authenticator/access-point yang kita miliki agar bisa terkoneksi dengan dengan authentication server radius kita.
client 10.6.1.1 {
secret = UuhHeE
shortname = access-point-auditorium-mipa
}
client 10.6.1.2 {
secret = KLIA
shortname = access-point-gedung-c
}
- Bagian eap.conf, pada bagian ini konfigurasi eap diletakkan.
eap {
default_eap_type = ttls
timer_expire = 6000
ignore_unknown_eap_types = no
cisco_accounting_username_bug = no
max_sessions = 2048
gtc {
auth_type = PAP
}
tls {
certdir = ${confdir}/certs
cadir = ${confdir}/certs
private_key_password = MerpatiPUTIH747
private_key_file = ${certdir}/server.pem
certificate_file = ${certdir}/server.pem
CA_file = ${cadir}/ca.pem
dh_file = ${certdir}/dh
random_file = ${certdir}/random
cipher_list = “DEFAULT”
make_cert_command = “${certdir}/bootstrap”
cache {
Allow-Session-Resumption = no
enable = no
lifetime = 2 # hours
max_entries = 255
}
}
ttls {
default_eap_type = md5
copy_request_to_tunnel = no
use_tunneled_reply = no
virtual_server = “inner-tunnel”
include_length = yes
}
- Bagian proxy.conf, konfigurasi pada bagian inilah yang digunakan untuk berkomunikasi dengan Server radius utama di PPTIK UGM
# Proxy server configuration
#######################################################################
proxy server {
default_fallback = no
}
######################################################################
# Configuration for the proxy realms.
######################################################################
home_server localhost {
type = auth
ipaddr = 127.0.0.1
port = 1812
secret = testing123
require_message_authenticator = no
response_window = 20
zombie_period = 40
revive_interval = 120
status_check = status-server
check_interval = 30
num_answers_to_alive = 3
coa {
# Initial retransmit interval: 1..5
irt = 2
# Maximum Retransmit Timeout: 1..30 (0 == no maximum)
mrt = 16
# Maximum Retransmit Count: 1..20 (0 == retransmit forever)
mrc = 5
# Maximum Retransmit Duration: 5..60
mrd = 30
}
}
# Sample virtual home server.
home_server virtual.example.com {
virtual_server = virtual.example.com
}
######################################################################
home_server_pool my_auth_failover {
type = fail-over
home_server = localhost
}
######################################################################
realm mipa.net {
auth_pool = my_auth_failover
}
realm LOCAL {
}
realm ugm.ac.id {
authhost = 10.13.253.3:1812
secret = HoreHore
nostrip
}
realm mail.ugm.ac.id {
authhost = 10.13.253.3:1812
secret = HoreHore
nostrip
}
- Bagian inner-tunnel.conf
server inner-tunnel {
authorize {
mschap
update control {
Proxy-To-Realm := LOCAL
}
eap {
ok = return
}
expiration
logintime
pap
}
authenticate {
Auth-Type PAP {
pap
}
Auth-Type MS-CHAP {
mschap
}
eap
}
session {
}
post-auth {
Post-Auth-Type REJECT {
attr_filter.access_reject
}
}
pre-proxy {
}
post-proxy {
eap
}
- Bagian default.conf, pada freeradius versi 2, bagian ini merupakan bagian utama dari freeradius
authorize {
preprocess
auth_log
suffix
eap {
ok = return
}
pap
}
authenticate {
Auth-Type PAP {
pap
}
Auth-Type CHAP {
chap
}
Auth-Type MS-CHAP {
mschap
}
}
preacct {
preprocess
acct_unique
}
accounting {
}
session {
}
post-auth {
}
Membuat root certificate
pada freeradius versi 2, sudah tersedia scripts yang digunakan untuk membuat certificate yaitu tersedia pada direktori certs di /usr/local/radius/etc/raddb
untuk membuat root certificate ini, kita terlebih dahulu harus menyesuaikan konfigurasi yang akan kita gunakan untuk mengenerate root sertificate. Ubah file ca.cnf terutama pada bagian:
[ req ]
prompt = no
distinguished_name = certificate_authority
default_bits = 2048
input_password = MerpatiPUTIH747
output_password = MerpatiPUTIH747
x509_extensions = v3_ca
[certificate_authority]
countryName = ID
stateOrProvinceName = D.I.Yogyakarta
localityName = Tim IT FMIPA
organizationName = FMIPA Universitas Gadjah Mada
emailAddress = endro@ugm.ac.id
commonName = “FMIPA UGM Certificate Authority”
Selanjutnya untuk membuat certificate lakukan perintah: #make ca.pem dan #make ca.der, File ca.der inilah yang nanti harus diinstalkan ke masing-masing supplicant.
Membuat server sertificate
untuk membuat server certificate ini, kita terlebih dahulu harus menyesuaikan konfigurasi yang akan kita gunakan untuk mengenerate server sertificate. Ubah file server.cnf, bagian yang diubah sama dengan konfigurasi di server.cnf
Selanjutnya untuk membuat server certificate lakukan perintah: #make server.pem dan #make server.csr
Membuat client sertificate
untuk membuat client certificate ini, kita terlebih dahulu harus menyesuaikan konfigurasi yang akan kita gunakan untuk mengenerate client sertificate. Ubah file client.cnf, bagian yang diubah sama dengan konfigurasi di ca.cnf
Selanjutnya untuk membuat client certificate lakukan perintah: #make client.pem , hasil dari perintah make tersebut akan menghasilkan beberapa file dengan awalan client, file client.pem dan client.p12 harus dinstallkan ke komputer supplicant. Ketika menginstall file tersebut akan ditanyakan input password dan output password. Isikan password tersebut sama dengan input dan output password root certificate dan server certificate.
Implementasi di sisi Authenticator (Access-Point)
Masuk ke Web Administration untuk Access Point WRT54G2 versi DDWRT, alamat default http://192.168.1.1
Setting IP address
Setting nama SSID
Setting Wireless Security
Nah untuk setting dari sisi server dan access-point saya rasa sudah cukup, tinggal nanti setting dari sisi supplicant. Untuk tiap sistem operasi mempunyai perbedaan untuk setting.
Tulisan diatas sudah penulis coba menggunakan Windows 7, dan berjalan baik.
Untuk tutorial instalasi setting di sisi supplicant, bisa di lihat di http://oit.ugm.ac.id/tutorial
Semoga tulisan ini bermanfaat. Wassalam
Referensi: