Kebutuhan Hardware dan Software

Peralatan yang digunakan untuk mengimplementasikan sistem ini adalah:

  1. Satu buah PC sebagai radius server. Sistem Operasi Ubuntu Server 10.04
  2. Wireless Access Point WRT54G2 dengan firmwire DD-WRT untuk mensupport WPA-Enterprise.
  3. Freeradius versi 2.17
  4. 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:

timer_expire     = 6000
ignore_unknown_eap_types = no
cisco_accounting_username_bug = no
max_sessions = 2048
gtc {
#challenge = “Password: “
auth_type = PAP
}
tls {
certdir = ${confdir}/certs
cadir = ${confdir}/certs
private_key_password = UGMOkIntegrated
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
}
“eap.conf” 55L, 1088C