>

Dynamic dan Static NAT di ASA 8.4

Konfigurasi NAT pada cisco ASA dengan IOS 8.4 memang berbeda dengan IOS sebelumnya. Pada artikel kali ini saya akan memberikan contoh konfigurasi dynamic NAT (PAT) dan static NAT di ASA 8.4.

Alternate port SSH

Default port untuk SSH adalah 22, tapi demi alasan keamanan mungkin kita terpikir untuk menggunakan port lain selain port 22. Walaupun sekarang ini sudah banyak sekali tool untuk scan-port, tetapi gak ada salahnya kita coba mengganti port tersebut

Cisco Priviledge Level

Secara default, Cisco IOS menawarkan 3 priviledge level, yaitu 0,1 dan 15. Tetapi kita bisa membuat custom priviledge menggunakan level 2-14.

Thursday 1 November 2012

ASDM di GNS

Untuk bisa menikmati ASDM ASA di GNS, caranya hampir sama dengan mengaktifkan Cisco SDM di Cisco Router.
Pertama-tama kita download dulu asdm image-nya di website cisco., bisa di download melalui website Cisco, hanya saja perlu akun CCO yang bisa download.

Topology dalam lab yang saya buat adalah sebagai berikut.
Saya menggunakan tftpd32 sebagai server tftp, aplikasi ini digunakan untuk meng-upload asdm image ke dalam cisco ASA.
Untuk meng-upload asdm image kedalam ASA, masuk kedalam cisco ASA dan ketik perintah berikut :
ciscoasa#copy tftp: disk0:
Masukan alamat tftp server berada, dan nama file (asdm-643.bin).
File asdm bisa di verifikasi dengan menggunakan perintah dir.
Setelah asdm image masuk kedalam flash, aktifkan asdm menggunakan perintah berikut :
ciscoasa(config)#asdm image disk0:/asdm-643.bin
ciscoasa(config)#http server enable
ciscoasa(config)#http 0 0 OUTSIDE
Buat username dengan priviledge level 15.
ciscoasa(config)#username admin password admin priv 15
Gunakan asdm launcher/akses ip outside untuk mulai menikmati asdm.

Thursday 4 October 2012

Network Address Translation overload case study

Pada tulisan sebelumnya saya pernah menyinggung masalah NAT, nah tulisan kali saya juga akan membahas tentang NAT, tetapi lebih berbau teoristis. Saya pernah miss dengan pengetahuan ini, dan mungkin beberapa dari anda juga mengalaminya.
Sebelumnya saya ingin bercerita sedikit, kebetulan waktu itu saya sedang melakukan installasi IronPort web security appliance, perusahaan tersebut ada kurang lebih 500 user. Keluhan pertama mereka, Internet lambat, yang dipikiran orang awam pasti bandwidth kurang. Tetapi mengingat bandwidth mereka yang + 20M harus nya cukup. Dengan dasar ini mereka mungkin berpikir "Ini bandwidth harus di manage, sekalian kita lakukan filtering, situs-situs mana yang boleh di akses". Alhasil mereka beli beberapa alat, salah satu nya IronPort WSA.
OK, kembali kemasalah NAT, konfigurasi existing adalah + 500 user di NAT overload ke 1 ip public. Menurut anda apakah ada masalah?
Jika jawaban anda tidak, maka sama dengan apa yang saya pikirkan waktu itu. Berikut ilustrasi topology yang saya implemen.
Awalnya network di belakang core di NAT overload di router dengan 1 ip public. Kemudian dengan topologi seperti diatas, yang di NAT overload hanya IP proxy dan akses internet semua user akan dibelokkan melalui proxy menggunakan wccp. Apakah ada masalah? tidak, semua user akan tetap bisa ber-Internet ria. Oia, ada yang kurang di topologi diatas, di antara core dan router ada bandwidth shaper. Kebutuhan bandwidth sudah di atur dengan rapi.
Setelah beberapa hari pasca installasi ada keluhan dari user, Internet lambat. :D. Pertanyaan lagi kenapa?
Yang perlu kita ingat, NAT overload atau dynamic NAT atau PAT, melakukan translasi dari private address ke public address menggunakan port. PAT membagi port yang tersedia menjadi 3 bagian : 0-511, 512-1023, and 1024-65535. PAT memberikan source port yang unik untuk setiap sesi UDP atau TCP. Ia mencoba untuk menetapkan nilai port yang sama dari permintaan yang asli, tetapi jika port sumber aslinya telah digunakan, dia akan mulai memindai dari awal jangkauan port tertentu untuk menemukan port pertama yang tersedia dan memberikan kepada peminta. Jika kemudian semua port sudah terpakai untuk setiap sesi, apa yang terjadi?
Saya pribadi belum menemukan jawaban pasti, tetapi yang dipikiran saya, port yang available akan menjadi rebutan. Ini suspect mengenai internet lambat yang dikeluhkan konsumen saya tadi, dan di perkuat dengan data (show ip nat translations) di router yang nat translasinya diatas 70000.
Ada 2 cara untuk mengatasi hal ini :
1. Kita tetap menggunakan nat overload dengan nat pool, tidak dengan 1 ip public tetapi 2 atau 4 ip public.
2. Kita menggunakan 1 ip public, proxy di buat static dengan 1 ip public.
Untuk case ini saya menggunakan opsi 2, dan sampai sekarang lancar jaya .. :D

Thursday 27 September 2012

Dynamic & Static NAT Cisco ASA 8.4

Konfigurasi NAT pada cisco ASA dengan IOS 8.4 memang berbeda dengan IOS sebelumnya. Untuk perbandingannya mungkin akan saya coba posting pada artikel yang lain.
Pada artikel kali ini saya akan memberikan contoh konfigurasi dynamic NAT (PAT) dan static NAT di ASA 8.4.
Topologi yang akan kita gunakan adalah sebagai berikut.
Skenarionya adalah, pada inside network akan terdapat 2 network, segmen user akan di wakili oleh interface loopback 1 dengan ip 172.16.1.0/24, network ini akan kita PAT menggunakan interface outside ASA. Kemudian ada segmen server akan diwakili interface loopback 0 dengan ip 172.16.0.0/24. Segmen ini akan kita gunakan 1 ip address 172.16.0.10 kemudian akan kita static NAT ke ip 192.168.0.10. Oia, kelupaan, segmen outside adalah 192.168.0.0/24.
Berikut ini konfigurasi R1 (inside network)
Current configuration : 802 bytes
!
version 12.4
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname INSIDE-RTR
!
// output tidak ditampilkan
!
interface Loopback0
 ip address 172.16.0.10 255.255.255.0
!
interface Loopback1
 ip address 172.16.1.1 255.255.255.0
!
interface FastEthernet0/0
 ip address 10.10.10.2 255.255.255.0
 duplex auto
 speed auto
!
interface FastEthernet0/1
 no ip address
 shutdown
 duplex auto
 speed auto
!
ip route 0.0.0.0 0.0.0.0 10.10.10.1
!
// output tidak ditampilkan

Konfigurasi R2 (outside network) :

Current configuration : 649 bytes
!
version 12.4
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname OUTSIDE-RTR
!
// output tidak ditampilkan
!
interface FastEthernet0/0
 no ip address
 shutdown
 duplex auto
 speed auto
!
interface FastEthernet0/1
 ip address 192.168.0.1 255.255.255.0
 duplex auto
 speed auto
!
Dan yang terakhir konfigurasi pada ASA :
ASA Version 8.4(2)
!
hostname ciscoasa
enable password 8Ry2YjIyt7RRXU24 encrypted
passwd 2KFQnbNIdI.2KYOU encrypted
names
!
interface GigabitEthernet0
 nameif outside
 security-level 0
 ip address 192.168.0.2 255.255.255.0
!
interface GigabitEthernet1
 nameif inside
 security-level 100
 ip address 10.10.10.1 255.255.255.0
!
ftp mode passive
object network obj-172.16.0.10
 host 172.16.0.10

object-group network obj-nat
 network-object 10.10.10.0 255.255.255.0
 network-object 172.16.1.0 255.255.255.0

access-list OUTSIDE_IN extended permit icmp any any
access-list OUTSIDE_IN extended permit ip any host 172.16.0.10
access-list OUTSIDE_IN extended permit icmp any host 172.16.0.10

pager lines 24
logging enable
logging asdm debugging
mtu inside 1500
mtu outside 1500
icmp unreachable rate-limit 1 burst-size 1
no asdm history enable
arp timeout 14400
nat (inside,outside) source dynamic obj-nat interface
!
object network obj-172.16.0.10
 nat (inside,outside) static 192.168.0.10

access-group OUTSIDE_IN in interface outside
route outside 0.0.0.0 0.0.0.0 192.168.0.1 1
route inside 172.16.0.0 255.255.0.0 10.10.10.2 1
// output tidak ditampilkan 
 Untuk korelasi masing-masing command saya beri warna yang berbeda. Mudah-mudahan berguna .. :)

Wednesday 26 September 2012

Menggunakan port alternatif untuk SSH

Default port untuk SSH adalah 22, tapi demi alasan keamanan mungkin kita terpikir untuk menggunakan port lain selain port 22. Walaupun sekarang ini sudah banyak sekali tool untuk scan-port, tetapi gak ada salahnya kita coba mengganti port tersebut.
Command yang kita gunakan disini adalah rotary, command ini akan kita pasang di line vty. Hanya saja command ini tidak mengubah port SSH, dia hanya memberikan alternatif port yang bisa di gunakan untuk melakukan SSH, di akhir artikel ini akan kita bahas bagaimana melakukan blocking port 22.
Berikut konfigurasi di router.
Untuk mengaktifkan fitur SSH silahkan lihat artikel saya sebelumnya.
OMYN-RTR(config)#ip ssh port 2000 rotary 1
Command ini untuk mengaktifkan port 2000 yang nantinya akan digunakan sebagai alternatif port untuk SSH.
Untuk konfigurasi di line vty nya kurang lebih seperti berikut :

line vty 0 4
 password cisco
 login local
 rotary 1
 transport input ssh
line vty 5 15
 password cisco
 login local
 rotary 1
 transport input ssh
Selanjutnya bisa dicoba melakukan SSH ke dalam router menggunakan port 2000


Dengan ini berarti kita sudah punya alternatif port untuk melakukan SSH, tetapi kita tetep masih bisa melakukan SSH menggunakan port 22. Kita bisa melakukan blocking port 22 menggunakan Control-Plane Protection (CPPr) atau menggunakan access-list. Tetapi biar kelihatan keren kita akan coba menggunakan CPPr. Berikut konfigurasinya :
version 12.4
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname OMYN-RTR
!
boot-start-marker
boot-end-marker
!
enable password cisco
!
no aaa new-model
memory-size iomem 5
ip cef
!
no ip domain lookup
ip domain name fakeroute.com
ip ssh port 2000 rotary 1
ip ssh version 2
!
multilink bundle-name authenticated
!
username admin privilege 15 password 0 admin
!
class-map type port-filter match-any CMAPPORT22
 match  port tcp 22

!
policy-map type port-filter PMAPPORT22
 class CMAPPORT22
   drop
   log

!
interface FastEthernet0/0
 no ip address
 shutdown
 duplex auto
 speed auto
!
interface FastEthernet0/1
 ip address 10.0.100.1 255.255.255.0
 duplex auto
 speed auto
!
no ip http server
no ip http secure-server
!
control-plane host
 service-policy type port-filter input PMAPPORT22

!
control-plane
!
line con 0
 exec-timeout 0 0
 logging synchronous
line aux 0
line vty 0 4
 password cisco
 login local
 rotary 1
 transport input ssh
line vty 5 15
 password cisco
 login local
 rotary 1
 transport input ssh
!
!
end
Saat kita coba melakukan SSH maka di router akan muncul error.
OMYN-RTR#
*Mar  1 01:03:02.815: %CP-6-TCP: DROP TCP/UDP Portfilter  10.0.100.20(16871) -> 10.0.100.1(22)
OMYN-RTR#
*Mar  1 01:03:05.795: %CP-6-TCP: DROP TCP/UDP Portfilter  10.0.100.20(16871) -> 10.0.100.1(22)
OMYN-RTR#
*Mar  1 01:03:11.795: %CP-6-TCP: DROP TCP/UDP Portfilter  10.0.100.20(16871) -> 10.0.100.1(22)
OMYN-RTR#


Sunday 9 September 2012

Cisco Priviledge Level

Secara default, Cisco IOS menawarkan 3 priviledge level, yaitu 0,1 dan 15. Priviledge level 0 hanya bisa mengetikkan perintah disable, enable, exit, help dan logout. Priviledge level 1 menawarkan semua user-exec command dengan router> prompt. Priviledge level 15 menawarkan semua command pada router dengan router# prompt.

Pada saat kita membuat username pada sebuah router, biasanya kita akan melihat banyak sekali pilihan priviledge level, mulai dari 0 sampai dengan 15. Walaupun secara default priviledge level di cisco hanya 3 (0,1,15) tetapi kita bisa membuat custom priviledge menggunakan priviledge level 2-9. Setiap priviledge pada custom priviledge, bisa kita masukan command-command apa aja yang bisa.

Dibawah ini sedikit contoh penggunaannya :
Building configuration...
// output tidak ditampilkan
!
username cisco password 0 cisco
username cisco7 privilege 7 password 0 cisco7
username admin privilege 15 password 0 admin
!
interface FastEthernet0/0
no ip address
shutdown
duplex auto
speed auto
!
interface FastEthernet0/1
ip address 10.0.100.1 255.255.255.0
duplex auto
speed auto
!
// output tidak ditampilkan
!

privilege configure all level 7 interface
privilege exec level 7 configure terminal
privilege exec level 7 configure
privilege exec level 7 show running-config
privilege exec level 7 show

!
line con 0
exec-timeout 0 0
logging synchronous
line aux 0
line vty 0 4
login local
line vty 5 15
login local
!
!
end

OMYN-RTR(config)#

Bisa dilihat dalam contoh diatas username cisco7 merupakan user dengan priviledge level 7. Command yang di ijinkan pada saat user cisco7 melakukan login adalah dia bisa masuk kedalam configure terminal untuk melakukan konfigurasi, tetapi apa aja yang bisa di konfigurasi akan di batasi yaitu hanya bisa melakukan konfigurasi interface saja. Selain itu dia juga bisa melakukan command show running-config, tetapi karena dia hanya bisa melakukan konfigurasi interface saja, maka pada saat melakukan perintah show running-config yang muncul hanya konfigurasi interface saja.

Mudah-mudahan bermanfaat .. :)

Wednesday 27 June 2012

Priviledge level menggunakan Radius

Saya sendiri masih agak asing dengan radius, karena memang attribute nya yang sangat banyak. Saat kita menggunakan ACS sebagai AAA server, kita bisa membuat priviledge level untuk setiap user yang melakukan otentikasi ke dalam device, entah itu switch/router/asa atau device lainya yang support tacacs maupun radius. Biasanya, ketika saya melakukan implementasi, saya selalu menggunakan tacacs, selain device yang akan di manage adalah Cisco, juga karena Tacacs support command set, dimana kita bisa memberikan batasan kepada user, command apa aja yang bisa dilakukan saat dia berhasil melakukan otentikasi ke sebuah device.

Ada pertanyaan, "Apakah Radius juga bisa membatasi level user?", jawabnya bisa, hanya saja radius tidak bisa memberikan batasan command. Misalnya gini, user A dengan level 15, dia bisa melakukan semua command, dengan Tacacs user B dengan level 15 saya bisa batasi dia hanya bisa command show, tidak bisa selain itu, Radius tidak bisa melakukan itu.

Ok, berikut konfigurasi di switch dan ACS nya, untuk ACS saya menggunakan ACS 5.3
aaa authentication login SSH2 group radius local
aaa authorization exec SSH2 group radius local if-authenticated
!
!! Beberapa output di potong
radius-server host 172.16.10.138 auth-port 1645 acct-port 1646 key compnet123
!
!! Beberapa output di potong
line vty 0 4
authorization exec SSH2
login authentication SSH2
transport input ssh

Untuk konfigurasi di ACS nya, berikut beberapa screenshootnya.

[caption id="attachment_564" align="aligncenter" width="300"] Manage user[/caption]

[caption id="attachment_566" align="aligncenter" width="300"] Menambah radius attribute av-pair[/caption]

[caption id="attachment_567" align="aligncenter" width="300"] Manage Access profile[/caption]

Sedikit note untuk av-pair, shell:priv-lvl=15, 15 disini menunjukan priviledge level.

Tuesday 26 June 2012

Mengaktifkan fitur "SSH"

SSH, atau secure shell, merupakan salah satu fitur dimana kita bisa melakukan remote kedalam sebuah device. Jika sebelumnya kita menggunakan Telnet, maka untuk alasan keamanan maka dikenalkan fitur SSH. Kelebihan dari SSH sendiri adalah dilakukannya proses enkripsi pada saat mengirimkan informasi, terutama username dan password. Untuk router cisco sendiri fitur SSH mulai di dukung pada IOS versi  Release 12.1(3)T.

Untuk mengaktifkan fitur SSH di Cisco Switch/Router, berikut langkah-langkahnya :

Konfigurasi hostname dan ip domain name.
Router#
Router(config)# hostname HO-RTR
HO-RTR(config)# ip domain-name company.co.id

Setelah itu, kita generate crypto rsa nya.
HO-RTR(config)# crypto key generate rsa

Secara default besarnya modulus 512, tetapi cisco sendiri merekomendasikan 1024. Selanjutnya buat username di router dan melakukan konfigurasi line vty supaya menggunakan SSH serta login menggunakan username dan password di local router.
HO-RTR(config)# username admin priviledge 15 password P@ssw0rd!
HO-RTR(config)# line vty 0 15
HO-RTR(config-line)# transport input ssh
HO-RTR(config-line)# login local

Seandainya ingin menggunakan fitur SSH version 2 ketik command berikut.
HO-RTR(config)#ip ssh version 2

Untuk melakukan verifikasi konfigurasi bisa menggunakan beberapa perintah berikut.
HO-RTR#show ip ssh
SSH Enabled - version 1.99
Authentication timeout: 120 secs; Authentication retries: 3
HO-RTR#
HO-RTR#show ssh
Connection Version Encryption State Username
2 1.5 3DES Session started donc
%No SSHv2 server connections running.
HO-RTR#

Friday 1 June 2012

Check Point training at Mtech Indonesia

Weits, ketemu dengan Linux lagi ..

Check Point merupakan salah satu product security yang paling terkemuka saat ini. Bahkan rekan kerja saya bilang bahwa saat ini check point adalah yang terbaik di seluruh dunia. Dari sisi Operating System, check point di rilis dalam banyak varian, mulai dari UNIX, Linux, BSD dan windows. Tetapi untuk UNIX dan windows sudah mulai tidak dikembangkan lagi.

Dari training yang saya dapet kemarin, saya sempat hands-on sebentar, dan dari penglihatan sekilas itu, saya sempet note beberapa fitur yang menurut saya memang oke. Oia sebelumnya saya mau menginformasikan terlebih dahulu bahwa check point bukanlah UTM, tetapi XTM (eXtensible Threat Management) *pesan sponsor* artinya apa? Check Point bisa dibilang software base, kita bisa menambah fitur baru hanya dengan melakukan installasi fitur tersebut, ingat core dari check point adalah OS biasa ( Windows, Linux etc). Mereka biasa menyebut fitur-fitur itu dengan sebutan "module", jadi saat ada istilah Security Gateway Module, Security Management Module, itu adalah aplikasi-aplikasi yang membentuk Check Point.

Ok, balik lagi ke beberapa note yang ingin saya sebutkan tadi;

  1. Access-list pada check point boleh saya bilang sangat flexible, kita sudah tidak lagi bicara layer 3 baik itu untuk source atauun destination. Kita bisa menggantinya dengan ID (people ID) mungkin semacam object-group kalau di ASA dan juga untuk destination kita sudah bicara aplikasi ( facebook, youtube, twitter). Bagi saya ini sangat flexible.

  2. Ada satu fitur lagi yang membuat saya cukup wahh, smartTracker (kalo gak salah inget), semacam logging. Bagi saya view nya cukup detail, apalagi pada saat kita troubleshoot, terdapat beberapa icon berbeda untuk setiap aplikasi, sehingga jika ada sebuah paket di drop di IPS misalnya, maka akan ada pesen dengan icon semacam tameng, atau jika di blok di firewall, maka kita bisa liat pesen error dengan icon bata.

  3. Note yang terakhir adalah report, sangat-sangat rapi. Report tersusun dengan rapi, berupa tabel-tabel dengan penjelasan yang cukup detail dan mudah di baca.

hehehe tertarik untuk mencobanya? jika berminat untuk mencoba ada versi VM nya, namanya SPLAT, downloadnya dimana saya kurang tahu, karena kemarin saya hanya dapat dari trainernya .. :D

Oke lah segitu dulu, ngomongin yang baik-baik dulu lah sebelum kena ribetnya firewall hahaha ..