Anda di halaman 1dari 9

AUTENTIKASI PROXY

Pengertian

Autentikasi proxy adalah sebuah proxy yang membutuhkan hak akses apabila klien ingin
mengaksesnya. Hak akses ini berupa username dan password yang telah terdaftar pada server
proxy.
Autentikasi yang dilakukan oleh proxy server biasanya tidak terenkripsi,sehingga emungkinkan
pihak-pihak yang tidak berwenang mendapatkan informasi mengenai username dan password
milik client. Dengan mendapatkan username dan password milik client, pelanggan yang berada
dalam jaringan dapat melakukan akses ke internet tanpa perlu takut identitasnya ketahuan.
Sistem autentikasi yang kurang sempurna ini juga mengakibatkan aliran data antar client-server
yang tidak terenkripsi ini rentan terhadap penyadapan. Untuk itu sistem kriptografi berupa
enkripsi terhadap perangkat lunak sangat dibutuhkan oleh squid server

Beberapa autentikasi proxy

NCSA : Menggunakan username dan password file NCSA. NCSA authentication merupakan
autentikasi berbasis httpd (web server) password yang memungkinkan seorang client elakukan
koneksi setelah melakukan autentikasi berupa username dan password. Username dan
password ini telah tersimpan di server dengan format yang telah ditentukan sebelumnya. Cara
kerja NCSA authentication adalah :

1. Client mengirimkan username dan password kepada sistem, yang telah terenrkripsi.
2. Sistem akan melakukan decoding ulang dari password dan membandingkan dengan berkas
passwd yang ada pada server.
3. Jika password dan username cocok, maka client akan diizinkan untuk melakukan koneksi
internet melalui proxy.

LDAP : menggunakan Lightweight Directory Access Protocol. LDAP adalah sebuah protokol yang
mengatur mekanisme pengaksesan layanan direktori (Directory Service) yang dapat digunakan
untuk mendeskripsikan banyak informasi seperti informasi tentang people, organizations, roles,
services dan banyak entitas lainnya.

LDAP menggunakan model client-server, dimana client mengirimkan identifier data kepada
server menggunakan protokol TCP/IP dan server mencoba mencarinya pada DIT (Directory
Information Tree) yang tersimpan di server. Bila di temukan maka hasilnya akan dikirimkan ke
client tersebut namun bila tidak maka hasilnya berupa pointer ke server lain yang menyimpan
data yang di cari.
LDAP tersebut memiliki bentuk struktur yang berhirarki, bukannya berformat kolom dan baris,
seperti halnya database normal, sehingga memudahkan untuk memasukkan sejumlah besar
detail yang mirip dalam bentuk yang terorganisir. Awalnya, server LDAP merupakan sesuatu
yang terdapat diantara LDAP client dan sebuah server DAP (X 500), jadi untuk mengurangi
resource yang dibutuhkan menjalankan client.

Di dalam LDAP terdapat 2 service utama yaitu : slapd dan slurp. Slapd merupakan LDAP daemon
yang melayani request atau permintaan dari client, query dan berkomunikasi dengan backend
database. Sedangkan slurp merupakan replication daemon yang berfungsi melayani replikasi
data agar terus terjadi sinkronisasi data antara client dan server.

Pada sebuah sistim proxy server yang menggunakan database LDAP sebagai media
penyimpanan data user yang ada, kebanyakan sistem autentikasi yang digunakan tidak dengan
pesan yang terenkripsi hanya berupa plainteks biasa.

MSNT : Menggunakan autentikasi domain Windows NT

PAM : Menggunakan skema Linux Pluggable Authentication Modules

SMB : Menggunakan SMB server seperti Windows NT atau Samba

Getpwarm : menggunakan password file model lama UNIX

SASL : menggunakan SASL Libraries

NTLM: adalah teknik otentifikasi Challenge/Response yang digunakan oleh Window NT. NTLM
singkatan dari Windows NT LAN Manager, sebab teknik ini dikembangkan pertama kali dan
digunakan oleh Microsoft LAN Manager. NT LAN Manager (NTLM) adalah protokol otentikasi
yang sering digunakan dalam jaringan ber-platform Windows. Protokol jaringan yang
diperkenalkan oleh Microsoft ini didukung oleh NT Lan Manager Security Support Provider
(NTLMSSP). NTLM menggantikan protocol otentikasi jaringan LAN Manager karena LAN
Manager sudah dianggap tidak aman lagi. Protokol NTLM menjadi protokol default untuk
otentikasi jaringan pada Windows NT 4.0. Protokol NTLM menggunakan challenge-response
sequence
untuk otentikasi client. Proses ini memerlukan tiga kali pengiriman pesan antara client dan
server. Tiga pesan ini dikenal sebagai Tipe I (negotiation), Tipe II (challenge), dan Tipe III
(authentication). Protokol ini menggunakan algoritma hash MD4/MD5 dan algoritma enkripsi
DES.

Contoh Konfigurasi NTLM Active Directory – Squid

tujuannya adalah agar user login ke active directory windows, dapat langsung menggunakan
internet dengan cara user men-setup browser agar diarahkan ke port squid.
Yang pasti harus install ubuntunya dulu. Selanjutnya bisa diinstall paket berikut :

1. # apt-get install squid


2. # apt-get install samba winbind

3. # apt-get install krb5-doc krb5-config krb5-user libkrb53 libkdb5-4 libkadm5srv6


libkadm5clnt6 libgssrpc4
Ketika installasi Kerberos, ubuntu akan meminta nama realm. Masukan dengan nama
domain lengkap dari AD nya. Contoh : NAMADOMAIN.LOCAL

Setelah semua paket terinstall, selanjutnya adalah konfigurasinya

 # pico /etc/squid/squid.conf
Tambahkan :

auth_param ntlm program /usr/bin/ntlm_auth –helper-protocol=squid-2.5-ntlmssp


auth_param ntlm children 10
#auth_param ntlm max_challenge_reuses 0
#auth_param ntlm max_challenge_lifetime 2 minutes
#auth_param ntlm use_ntlm_negotiate off
auth_param basic program /usr/bin/ntlm_auth –helper-protocol=squid-2.5-basic
auth_param basic children 5
auth_param basic realm Domain Proxy Server
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
authenticate_cache_garbage_interval 10 seconds

# Credentials past their TTL are removed from memory


authenticate_ttl 0 seconds

Untuk pengertian protocol ntlm dan basic bisa dicari digoogle.


Selanjutnya tambahkan pada bagian acl :

acl AuthorizedUsers proxy_auth REQUIRED

Lalu pada bagian http_access :

http_access allow all AuthorizedUsers

 # pico /etc/samba/smb.conf
Tambahkan :

netbios name = NAMAKOMPUTERSAMBA


workgroup = NAMADOMAIN
realm = NAMADOMAIN.LOCAL
security = ADS
password server = serverdomaincontrollernya.namadomain.local
winbind enum users = yes
winbind uid = 10000-20000
winbind gid = 10000-20000
winbind use default domain = yes

 ntpdate serverdomaincontrollernya.namadomain.local
Berfungsi untuk mensinkronkan waktu antara komputer samba dengan
serverdomaincontroller.
 # kinit administrator
Administrator disini adalah user yang akan berguna untuk mendaftarkan komputer
samba ke dalam AD. Apabila ketika masukan passwordnya tidak ada masalah, maka bisa
lanjut. Apabila ada masalah, bisa coba reconfigure krb5 nya dengan menggunakan
perintah dpkg-reconfigure krb5-config lalu masukan nama domain yang sesuai. Apabila
tidak bisa juga, bisa langsung edit file /etc/krb5.conf dan coba dimainkan satu persatu.

Fungsi dari kinit adalah untuk mentest authentikasi tanpa harus mendaftarkan
komputer samba ke AD

 # net ads join -U administrator


Masukan passwordnya, apabila berhasil maka komputer samba sudah terdaftar pada
serverdomaincontroller.
Apabila terdapat pesan “DNS update failed!”, maka tidak ada masalah karena pesan ini
muncul ketika serverdomaincontroller tidak mengaktifkan fungsi dynamic dns server.
Untuk mengakalinya yaitu dengan memasukan di /etc/hosts pada komputer sama
dengan masukan berikut :

192.168.xx.xx namakomputersamba.namadomain.local namakomputersamba

 # wbinfo -t
Berfungsi untuk melihat trust antara komputer samba dengan serverdomaincontroller
 # wbinfo -u
Berfungsi untuk melihat user yang berada di serverdomaincontroller

 # /etc/rc.d/squid restart && /etc/rc.d/samba restart && /etc/rc.d/winbind restart


Restart semua service

 # gpasswd -a proxy winbindd_priv


Memasukan user proxy ke dalam group winbindd_priv. User proxy disesuaikan dengan
cache_effective_user pada /etc/squid/squid.conf

 # /usr/bin/ntlm_auth –helper-protocol=squid-2.5-basic
NAMADOMAIN\administrator passwordadministrator
OK
Berfungsi untuk mencoba authentikasi basic ke AD berupa plain text. Formatnya yaitu
ketik NAMADOMAIN\administrator passwordadministrator, apabila ditekan enter dan
proses berhasil maka akan muncul pesan OK bukan ERR

 Selanjutnya tinggal konfigurasikan agar client mengarahkan koneksi internetnya ke


komputer samba dengan port squid nya.

Konfigurasi ncsa_auth pada squid

ncsa_auth adalah sebuah fungsi dalam squid yang mengijinkan squid untuk melakukan
otentikasi dengan menggunakan NCSA/Apache httpd-style password. Hal pertama yang harus di
lakukan adalah mengistal squid nya dan melakukan konfigurasi. Jika proses instalasi squid suah
selesai maka lakukan penambahan pada file konfigurasi nya. Tahap-tahap yang harus di lakukan
adalah :

 Membuat user untuk ncsa_auth


# htpasswd /etc/squid/passwd user1
Hasil nya akan sperti ini :
New password:
Re-type new password:
Adding password for user user1
 Pastikan squid dapat membaca file tersebut
# chmod o+r /etc/squid/passwd

 Tambahkan konfigurasi Squid


# vi /etc/squid/squid.conf
Lalu masukan konfigurasi ini pada squid.conf
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/passwd
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off

 Juga tambahkan perintah di bwah ini


acl ncsa_users proxy_auth REQUIRED
http_access allow ncsa_users

 Lalu Restart squid


# /etc/init.d/squid restart

 Contoh Konfigurasi ldp_auth pada squid


1. Install library untuk authentikasi ke ldap

o $ sudo apt-get install ldap-auth-client ldap-auth-config nscd

o Masukkan entry bind dn untuk domain yang kita gunakan di ldap

2. Sekarang setup konfigurasi agar ubuntu bisa authentikasi ke ldap dengan menggunakan
ldap-auth-client. Edit file config di /etc/auth-client-config/profile.d/acc-default dan ubah
seperti ini:

[ldap_ku]
nss_passwd=passwd: files ldap
nss_group=group: files ldap
nss_shadow=shadow: files ldap
nss_netgroup=netgroup: nis
pam_auth=auth required pam_env.so
auth sufficient pam_unix.so likeauth nullok
auth sufficient pam_ldap.so use_first_pass
auth required pam_deny.so
pam_account=account sufficient pam_unix.so
account sufficient pam_ldap.so
account required pam_deny.so
pam_password=password required pam_cracklib.so difok=2 minlen=8 dcredit=2 ocredit=2
retry=3
password sufficient pam_unix.so nullok md5 shadow use_authtok
password sufficient pam_ldap.so use_first_pass
password required pam_deny.so
pam_session=session required pam_limits.so
session required pam_unix.so
session required pam_mkhomedir.so skel=/etc/skel/
session optional pam_ldap.so
session optional pam_foreground.so

 Lakukan update konfigurasi


o $ sudo auth-client-config -a -p ldap_ku

 Lakukan edit file /etc/ldap.conf

o $ sudo nano /etc/ldap.conf

o Ubah beberapa section seperti dibawah ini


host ldap.domainku.com
uri ldap://ldap.domainku.com/
# The search scope.
Scope sub
nss_base_passwd ou=People,dc=domainku,dc=com
nss_base_shadow ou=People,dc=domainku,dc=com
nss_base_group ou=Groups,dc=domainku,dc=com

 Install webmin untuk membantu konfigurasi


o $ sudo dpkg -i webmin.xxx

 Masuk ke webmin melalui https://localhost:10000

 Masuk ke konfigurasi system, kemudian pilih ldap client.

 Selanjutnya pilih “LDAP server configuration” untuk setup koneksi ke server ldap dan
setup seperti gambar di bawah ini
 Simpan konfigurasi, kemudian pilih “LDAP search base” dan ubah seperti gambar
dibawah ini, sesuaikan dengan domain yang kita pakai.

 Jika sudah selesai, lakukan validasi configurasi dengan menekan tombol “Validation..”,
hasilnya seperti ini:

Finding LDAP base for users ..

.. found base ou=People,dc=suprama,dc=co,dc=id.


Connecting to LDAP server ..
.. connected to ldap.suprama.co.id.lokal
Searching for users ..
.. found 133 users.
Checking Unix users service ..
.. service is setup to query LDAP.
Looking for Unix user DMaskoro ..
.. user found successfully.
Your system has been successfully configured as an LDAP client!
 Sekarang ini harusnya ubuntu lucid sudah bisa ter-authentikasi dengan fedora ds, untuk
menguji apakah sudah benar kita bisa lakukan 2 cara. Cara pertama menggunakan
webmin langsung dan cara kedua adalah menggunakan terminal console. Jika
menggunakan webmin bisa langsung dicoba dengan memilih “LDAP browser” di section
“ldap client” dan pilih salah satu child object yang keluar.

Anda mungkin juga menyukai