Home

Enroll Cisco ISE in PKI

Leave a comment

note: deploy CA/PKI with fully working DNS…

Biasanya klo awal2 implementasi Cisco ISE kita akan menemukan bahwa komputer kita ga percaya dengan Certificate yang diberikan oleh ISE this certificate is not trusted” klo di Firefox, analoginya kek gini: “klo gw mau buka account rekening di bank (anggeplah PC kita) tentu gw harus punya semacam kartu identitas (certificate), trus kartu identitas apa yang diakui oleh bank?? Tentunya oleh pemerintah (trusted CA)…ga mungkin kartu surat keterangan menikah lu pake buat buka rekening hahahaha… nah, berarti kita harus daftar (request CA) ke institusi yang di trusted oleh bank (yaitu pemerintah-trusted CA) untuk dibikinin KTP (valid and trusted certificate), Sedangkan untuk bikin KTP berarti harus ada data2 identitas yang harus diisi sebelum KTP itu dibuat (self-certificate), data2 identitas inilah yang kita kasi ke institusi pembuat sertifikat resmi, setelah data2 identitas ini disetujui (approved request by trusted-CA)…dibikinlah KTP Baru dah lu dengan identitas resmi lu (binding self-certificate with trusted-CA-certficate) diterima oleh bank” Begitulah cara ISE (dan semua device2 yang menggunakan PKI) bekerja Step2nya:

  1. Create PKI Server
  2. Download Certificate from PKI Server and Install it into ISE
  3. Bind ISE Certificate with CA from PKI Server
  4. Download Certificate from PKI Server and Install it into internet browser biar masuk dalam list trusted server (ga lucu kan klo gw mau bikin rekening bank pake KTP trus ditolak gara2 pembuat KTP-nya ga dikenal oleh bank wkwkwk, yang buat PEMERINTAH ENEEEH!!!)

Requirement:

========================================= Unduh Sertifikat from PKI Server (unduh?!? Wkwkw download aja kali bahasanya…) Masuk ke internet browser, ketik http://ip-nya-pki-server/certsrv (klo ga bisa diakses link-nya berarti lu belum bikin role Certificate Authority di Server), klik “download a CA certificate… Lu boleh langsung install this CA certificate klo mau langsung di install di web browser, atau mau download (gw prefer yang download), nanti hasilnya kek dibawah ini: File yang udah di download di klik 2x. Sebelum itu CA diinstall, kita bisa liat certificate information-nya…valid dari tgl brp sampe tgl brp, trus klik deh install certificate Ada beberapa folder untuk certificate, taro aja di Trusted Root Certification Authorities Klo uda silahkan di cek di web browser option (IE: Internet Option -> Content -> Certificates, Firefox: Options -> Advance tab -> Certificates -> View Certificates) Ada tuh…PKI Server bernama “CA” ============================================ (Optional) Connecting End User using Certificates Karena kita pake certificate…ada baiknya kita setting dot1x authentication di PC pake “verify the server’s identity by validating the certificate Hasilnya seperti dibawah (Authentication Failed because PC doesn’t recognize ISE certificate) So what do we do to make PC recognize ISE, the answer is in below chapter =============================================== Enroll ISE to PKI Server Masuk ke Administration -> System -> Certificates Trus klik Certificate Operations -> Certificate Store -> klik Import Masukin certificate file yang udah kita download, centang/check option “trust for client authentication or Scure Syslog services” dan klik submit ========================================= Binding ISE Certificate with CA Masuk ke Certificate Operations -> Local Certificate -> klik add -> Generate Certificate Signing Request Masukin data2 sertifikatnya (PKI server gw namanya CN=ise.domain.com, liatnya pas lo bikin CA/PKI Server pertama kali…ada informasi ini), key length dan Hashing nya, klik submit Nah, nanti di Certificate Operations -> Certificate Signing Request…ada sertifikat bernama “ise.domain.com” yang ready untuk di upload ke PKI Server untuk di “bikinin” versi “resmi”-nya Caranya?? Ya klik Export Nah, download dah itu file isedomaincom.pem Setelah itu kita akan masuk ke PKI Server kembali untuk upload itu file isedomaincom.pem Masuk ke http://ip-nya-pki-server/certsrv kembali, trus klik Request a certificate Klik advanced certificate request Copy paste informasi isedomaincom.pem kedalam text box yang disediakan oleh kolom Saved Requestl, trus klik Submit Lah, informasi-nya isedomaincom.pem-nya dapet darimana?? Oh iya… Masuk ke folder tempat lo download file isedomaincom.pem, trus klik kanan file-nya -> open with -> wordpad (gw pake notepad++…sama aja) Nah…lo blok semua kata2nya…paste ke kolom saved request yang tadi (ctrl+a trus ctrl+c aja) Setelah di submit, catet nomor Your Request Id-nya, gw nomor 8…nyok kita masuk ke PKI Server-nya Masuk ke Server Manager -> Roles -> Active Directory Certificate Services -> CA -> Pending Request, cari nomor kita Klik kanan -> all tasks -> pilih issue Masuk lagi ke alamat web tempat kita request certificate…pilih “View the status of a pending certificate… Klik “Saved-Request Certificate…” (klo lo belum issue ini pending request…tulisan saved-request ini ga ada) Download dengan option DER (Distinguished encoding Rules) Encoded trus klik download certificate (Ga usa pusing dengan apa itu DER…klo lo belajar lebih dalam tentang security terutama yang berkaitan dengan PKI Server dan X.509 baru dah lu oprek2) note: klo CA ga bisa issue gara2 di deny, mungkin lo harus liat microsoft link ini: https://technet.microsoft.com/en-us/library/dd441378(office.13).aspx Download…kasi nama yang beda (contohnya ise-certnew), sertifikat inilah yang akan dibinding ke ISE, jadi ISE akan ngomong ke PC kita dengan nama ISE yang terotorisasi PKI Server (ceritanya ISE punya KTP Resmi inih) Masuk ke Certificate Operations -> Certificate Store -> klik add Bind CA signed Certificate Masukin file yang uda kita download tadi ke ISE, jgn lupa di centang EAP dan HTTPS nya Nanti pas di submit, ada notice dari ISE klo servernya harus direstart..OK-in aja Wait a couple of minutes…then login back to ISE ==================== Verification Harusnya sih…klo gw mau ke GUI-nya ISE lewat web browser…ga ada tulisan certificate error lagi, yuk kita coba Weleh…masuk “certificate error”, pas dilihat…valid from 15 januari 2015….HAHAHAHA (gw posting ini tanggal 14 januari…so…kita tunggu besok dah) ….updated, masih error…kek-nya Certificate yang gw bikin di PKI Server-nya engga valid deh (salah domain) nih screenshotnya This Connection is untrustedthis certificate is only valid for ise.domain.com” yah…tapi klo lu bener domain dan setting CA di PKI server-nya…harusnya ga ada lagi tulisan “certificate error” nah…skrg kita tes show authen sess int fa0/2, success ga show authen sess int fa02 yup…success

Configure Cisco ISE Monitoring Mode

Leave a comment

Kali ini kita belajar nge-lab ISE basic configuration

Lab pertama yang akan kita oprek adalah monitoring mode

Apa itu monitoring mode? Kalau ada end device mau konek ke jaringan akan di authentikasi di ISE, hanya saja klo end device authentikasi-nya FAIL, tetap diperbolehkan masuk

Cocok untuk fase awal2 deployment implementasi, biar kita bisa melihat (monitor) user2 mana yang FAIL, apa yang menyebabkan FAIL, dan bagaimana cara menanggulangi-nya tanpa harus mengganggu kinerja user

Untuk lebih jelas liat disini

Requirement:

  • Ngerti dot1x alias 802.1x (port-based authentication)
  • Internet Browser (IE/Firefox only…Chrome not recommended)
  • Switch dengan IOS version 12.2(55)SE keatas, IOS version 15 recommended (banyak command baru untuk benerin syntax command yang lama)
  • ISE Appliance (boleh ditaro di VM, jgn tanya gw image/iso-nya dari mana wkwkw)
  • Test PC/Laptop (untuk ngetes konektivitas, klo bisa windows based – XP keatas)

Scenario: switch interface fa0/1 untuk ke server ISE dan interface fa0/2 untuk ke end device (PC), untuk konek ke jaringan maka PC harus provide credentials (like username password) ke ISE (dengan bantuan switch tentunya)

==========================

First…Define Local User in Cisco ISE

Wokeh, pertama2 kita akan create local user di ISE (nanti kita bisa pake ActiveDir klo mau)

Masuk ke https://ip-nya-ISE/ -> isi username password -> navigasi ke Administration -> Identity Management -> Identities

Klik Users folder -> add

Isi Name, Password, dan User Group-nya, klik save

Nanti dikanan bawah layar ada server response-nya tiap kita klik save (berlaku untuk hamper semua settingan)

==================================

Setting NAD (Network Access Device)…which is switch

Setting user udah, nah…supaya ISE “ngenalin” Switch nya sebagai NAD berarti kita setting juga

Masuk ke Administration -> Network Resources -> Network Device Groups

Masing2 All Device Types dan All Location, kita klik Add

Kasih aja nama HQ untuk Location-nya

Untuk Device Type-nya kita kasih nama IOS-SW

Nah, skerang kita add switch-nya

Masuk ke Administration -> Network Resources -> Network Devices

Klik Network Devices folder -> klik add

Isi name-nya (hostname switch-nya), ip address management switch-nya, Network Device Group-nya, dan Authentication Settings-nya..kita pake secret “radius-key

=====================================

Setting Switch to Accept ISE

Nah, di ISE sudah, skrg kita masuk ke switch-nya…kita setting supaya ini alat nerusin informasi2 yang user kasih ke ISE

Set hostname dan ip address management yang sama dengan yang terdaftar di ISE

FIRST…setting AAA dulu

Karena kita pake authentication, authorization, dan accounting (AAA) untuk network kita…keyword aaa new-model hukum-nya wajib ‘ain (bukan sunnah apalagi makruh wkwkwk)

Supaya semua login behavior-nya ganti pake aaa (walaupun cuma level “enable”)…kita pake aaa authentication login default enable

Untuk authentication, kita pake dot1x dengan konfigurasi yang ada di ISE-RADIUS configuration template (aaa authentication dot1x default group ISE-RADIUS)

Untuk authorization yang mau akses jaringan, kita pake ISE-RADIUS juga (aaa authorization network default group ISE-RADIUS)

Untuk accounting, kita pake dot1x, dengan ISE-RADIUS juga (aaa accounting dot1x default start-stop group ISE-RADIUS)

Maksudnya ISE-RADIUS apa?? Bukannya belum di defined?? Iya…makanya ada tulisan “%AAAA-4-SERVUNDEF” wkwkwk

Note: start-stop buat supaya bikin accounting di switch langsung jalan tapa harus nunggu perintah (default, mau diilangin ini command juga ga bisa, harus diketik)

Nah, sekarang yuk kita bikin ISE-RADIUS nya

Contohnya kayak diatas, note: ini di IOS 15 version, yang jadul punya konfig-nya kek dibawah ini:

Kita define di switch agar klo mau kirim user credentials ke ISE lewat IP berapa (IP nya ISE), password untuk connect ke ISE-nya dan pake port apa (baik authorization maupun accounting-nya), yang semua itu ditaro di ISE-RADIUS configuration template-nya

Radius-server host 10.2.22.111 auth-port 1812 acct-port 1813 key radius-key

Note: ISE pake port 1812 dan 1813 untuk authorization dan accounting-nya

Optional: set radius timeout jadi 10 detik dan retries 3x

Lalu kita set attribute2 yang digunakan oleh protocol radius untuk dikirim ke ISE (hafalan ini, udah ada nomor2-nya)

Radius-server attribute 6 on-for-login-auth

Radius-server attribute 8 include-in-access-req

Radius-server attribute 25 access-request include

Yang intinya…kita minta tolong switch pake protocol radius untuk kirim ke ISE supaya di-prompt untuk login, minta ijin include kirim IP user juga, dan prompt untuk request akses jaringan (udah…ikutin aja wkwkwk)

Nah, tiap vendor punya settingan customized untuk radius-nya (allowed in RFC 2882) yang dinamakan VSA (vendor specific attributes)

Kita liat diatas…Cisco Switch bisa kirim accounting, authentication, sampe NAS (network access server port, ya buat handle vsa2 ini)

Trus karena kita pengen switch ngirim IP kedalam radius authentication request (attribute 8), kita juga harus ketik ip device tracking

Kenapa ga sekalian disetting pas “radius-server attribute”?? Dah…ikutin aja haha, klo lo yang bikin gpp deh…wkwkkw

Dah, setting AAA-nya selese…yuk kita coba test authentikasi (test aaa group ISE-RADIUS [username yang di ISE] [password] new-code)

Yup…success, si switch kirim user dengan nama rahman dan password-nya ke ISE…dan ISE-nya kenal credential itu

Nah, itu dari sisi switchnya sendiri…klo dari sisi end-user berarti kita harus setting apa di switch…?? Setting port-nya

Metode apa yang bisa ngirimin credentials dari port switch ke ISE…?? Dot1x

SECOND…setting dot1x

Dot1x system-auth-control untuk enable dot1x authentication globally on switch

Switchport mode access (atau switchport host juga bisa)…mandatory, alias wajib…klo ga, command authentication open ga akan keluar (tes sendiri)

Authentication open…ini keyword untuk monitor mode, open…alias klo authentikasi-nya fail pun tetep allowed accessing network

Authentication host-mode multi-auth…ada beberapa mode untuk metode authentikasi host, salah satunya ini (apa itu multiple authentication lihat disini)

Authentication periodic supaya authentikasi-nya ga cuma 1x pas initial aja…periodic nanyain terus untuk authentikasi (bahaya kan klo fail, klo udah di blok..ya udah, ga coba attempt lagi)

Authentication timer reauthenticate server supaya si server yang nentuin/specify re-authentication interval (klo pake authen timer reauth 10 berarti tiap 10 detik attempt-nya)

Dot1x pae authenticator untuk membuat role/tugas/mode port menjadi authenticator dot1x (pae = port access entity)

Dot1x timeout tx-period 10 supaya supplicant (PC end user) retries attempt negosiasi dot1x setiap 10 detik

Authentication port-control auto supaya dot1x yang ngontrol port ini authorized apa engga secara otomatis

Nah, kita liat status dot1x di switch dengan show dot1x all atau show dot1x interface x/x

Yaks..statusnya ENABLED dan status port-nya jadi AUTHENTICATOR

Trus kita liat status authentikasi dot1x di interface fa0/2 dengan show authentication session interface fa0/2

Yaks…username: unresponsive, status: authz failed, dan dot1x: failed over

Why? Ya karena supplicant alias end user PC-nya belum kita setting apa2

===========================================================

The End User Device (PC/Laptop) Configuration

In Windows Environment (klo UNIX/LINUX cari sendiri ya…gw windows-oriented soalnya haha), type services.msc on run

Cari Wired AutoConfig service (default-nya ga aktif/stopped), aktifkan/klik kanan -> start

Setelah itu masuk ke network properties (Control Panel\Network and Internet\Network Connections), klik kanan Local Area Network -> pilih Authentication tab (klo Wired AutoConfig-nya ga ada…ga ada ini tab)

Pastikan dot1x nya di enable dan pake PEAP (default ini), trus klik settings (disamping Microsoft: Protected EAP)

Uncheck Verify the Server Identity (nanti LAB berikutnya kita bahas tentang Validating Server Identity Certificate) dan klik configure (disamping EAP-MSCHAP v2)

Uncheck “Automatically use my Windows logon”, OK…trus masuk ke authentication tab -> Additional Settings

Kita pake User Authentication

(optional: klik save credential untuk input userpass, jadi windows otomatis kasi credentials tanpa harus di prompt untuk lakukan verify lagi)

Nah, sekarang kita konekin PC ke switch (interface fa0/2), nanti ada tampilan dibawah ini

Klik…trus isi username dan password (yg terdaftar di ISE)

Attempting to Authenticate

Klo sukses, ya bagus…klo ga sukses nanti ada tulisan “failed to authenticate” dan berhubung kita pake monitor mode, jadi ga berpengaruh terhadap end user (fail-ga fail tetep konek)

Yuk kita liat di Cisco ISE, klik Operation -> Authentication

hasilnya

authentication success

(sorry kecil banget….intinya warna biru/ijo menandakan authentikasi sukses, merah = gagal)

Yaks..sukses, coba kita lihat di switch

Authz success !!!

=================================

Misc.

Kita bisa ganti konfigurasi dasar Cisco ISE dengan masuk ke CLI-nya ISE (contoh kita mau ganti IP address, gateway, dll), mirip lah command-nya dengan IOS

Note: biasanya klo ganti IP Address, ISE nya ngasih tau bahwa ISE-nya harus direstart

Untuk ngeliat process dan status yang ada di ISE (jalan apa engga, hang/unresponsive apa engga) kita bisa ketik show application status ise di CLI-nya

kita juga bisa reset admin password untuk GUI ISE-nya dengan command application reset-passwd ise [nama administrator]

==================================================

Troubleshooting…

Test user account di reject

Cek:

  • IP address-nya bener ga (baik ISE dan Switch)
  • Radius authentication key (switch dan ISE harus di cek)
  • User-nya ada engga di ISE (klo pake ActiveDir, cek udah singkron sama ISE engga)
  • Cek port 1812 dan 1813 (udah ada apa engga, di blok ama firewall/ASA apa engga)

Cek Radius Activity (Logging) dengan masuk ke Operation -> Authentication-> klik Details (yang ada gambar kaca pembesarnya)

Nanti akan keliatan proses yang fail

lihat FAILURE REASON-nya “11007 Could not locate Network Device or AAA Client

Diatas adalah contoh bahwa gw salah ngasi IP switch di ISE wakakakak (sempet fail wkwkw)

Windows Credentials ga dikenal di ISE (padahal udah di input di ISE)

Ada beberapa cara:

  1. Uncheck “Automatically use my windows logon”, biar manual prompt
  2. Kalau bisa bikin user account baru, biar gampang
  3. Kalau mau coba2 rename existing account silahkan tetapi kita harus rubah user information kita di Computer Management juga
  4. Klo semuanya ga bisa…Restart ISE-nya wkwkwk (seriusan tapi ini…kadang suka gitu)

Note: catatan untuk yang nomor 2 dan nomor 3 dibawah ini

Masuk ke Computer Management

Klik ke Local Users and Group -> Users

Nah, user dengan nama ABC klo kita rename jadi XYZ di Control Panel…di Computer Management tetep terdaftar dengan nama ABC (so…be careful)

================================================

Reference:

Cisco IOS Radius Server Configuration (old and new) @link

Radius NAS on RFC 2882 @https://www.ietf.org/rfc/rfc2882.txt

Radius NAS on Wiki @http://en.wikipedia.org/wiki/Network_access_server

Port Access Entity (Pae) @https://learningnetwork.cisco.com/thread/14910

IEEE 802.1x Port Based Auth on Wiki @http://en.wikipedia.org/wiki/IEEE_802.1X

Older Entries Newer Entries