Dalam jaringan komputer, server proxy
server (sistem komputer atau program aplikasi) yang bertindak sebagai
perantara untuk permintaan dari klien mencari sumber daya dari server
lain. Seorang klien terhubung ke proxy server, meminta beberapa layanan,
seperti file, sambungan, halaman web, atau sumber yang lain, yang
tersedia dari server yang berbeda. Proxy Server mengevaluasi permintaan
sesuai dengan aturan penyaringan. Sebagai contoh, mungkin filter lalu
lintas menurut alamat IP atau protokol. Jika permintaan tersebut
divalidasi oleh penyaring, proxy menyediakan sumber daya dengan
menghubungkan ke server dan relevan yang meminta layanan atas nama
klien. Sebuah server proxy opsional dapat mengubah permintaan klien atau
respon server, dan kadang-kadang dapat melayani permintaan tanpa perlu
menghubungi server yang ditentukan. Dalam hal ini, ‘cache’ tanggapan
dari server jauh, dan selanjutnya kembali permintaan untuk konten yang
sama secara langsung.
Sebuah proxy server memiliki banyak potensi tujuan, termasuk:
- Untuk menjaga mesin dari gangguan orang (terutama untuk keamanan)
- Untuk mempercepat akses ke sumber daya (menggunakan cache). Web proxy biasanya digunakan untuk cache halaman web dari web server
- Untuk menerapkan kebijakan akses ke layanan jaringan atau konten, misalnya untuk memblokir situs yang tidak diinginkan.
- Untuk log / audit penggunaan, yaitu karyawan perusahaan untuk memberikan laporan penggunaan internet.
- Untuk bypass keamanan / parental kontrol.
- Untuk memindai konten ditularkan malware sebelum pengiriman.
- Untuk memindai konten outbound, misalnya, perlindungan kebocoran data.
- Untuk menghindari pembatasan regional.
Sebuah proxy server yang melewati
permintaan dan balasan yang belum diubah biasanya disebut gateway atau
kadang-kadang tunneling proxy.
Sebuah proxy server dapat ditempatkan
pada pengguna komputer lokal atau pada berbagai titik antara pengguna
dan server tujuan di Internet.
Sebuah reverse proxy adalah (biasanya)
Internet-menghadap proxy digunakan sebagai front-end untuk mengontrol
dan melindungi akses ke server di jaringan pribadi, umumnya juga
melakukan tugas-tugas seperti load-balancing, otentikasi, dekripsi atau
caching.
Type dan Fungsi Proxy Server
Proxy Server memiliki satu atau lebih fungsi-fungsi sebagai berikut:
Caching proxy server
Sebuah caching proxy server dalam
permintaan layanan mempercepat dengan mengambil konten disimpan dari
permintaan sebelumnya yang dibuat oleh klien yang sama atau bahkan klien
lain. Caching proxy menyimpan salinan setempat sesuai dengan sumber
daya yang diminta, yang memungkinkan organisasi besar untuk secara
signifikan mengurangi penggunaan bandwidth dan biaya, sementara
meningkatkan secara signifikan kinerja jaringan komputer. Sebagian besar
ISP dan perusahaan besar memiliki caching proxy. Mesin ini dibuat untuk
memberikan kinerja sistem berkas yang luar biasa (sering dengan RAID
dan journal) dan juga mengandung hot-rodded versi TCP. Caching proxy
adalah jenis pertama dari proxy server.
Beberapa keburukan-caching proxy yang
memiliki kelemahan (misalnya, ketidakmampuan untuk menggunakan
otentikasi pengguna). Beberapa masalah yang dijelaskan dalam RFC 3143
(Ditemukan masalah HTTP Proxy / Caching).
Kepentingan lainnya dalam penggunaan
proxy server adalah untuk mengurangi biaya hardware. Sebuah organisasi
mungkin memiliki banyak sistem di jaringan yang sama atau di bawah
kendali server tunggal, melarang kemungkinan seorang individu
mengkoneksi ke Internet untuk setiap sistem. Dalam kasus seperti itu,
sistem individu dapat dihubungkan ke salah satu server proxy, dan server
proxy yang terhubung ke server utama.
Web proxy
Sebuah proxy yang berfokus pada lalu
lintas World Wide Web disebut ‘web proxy’. Yang paling sering
menggunakan web proxy adalah untuk melayani sebagai web cache. Sebagian
besar program proxy menyediakan cara untuk menolak akses ke URL yang
ditetapkan dalam daftar hitam, sehingga memberikan penyaringan konten.
Hal ini sering digunakan dalam perusahaan, pendidikan atau lingkungan
perpustakaan, dan tempat lain di mana penyaringan konten yang
diinginkan. Beberapa web proxy memformat ulang halaman web untuk tujuan
tertentu atau khalayak, seperti untuk ponsel dan PDA.
AOL dialup pelanggan digunakan untuk
memilih permintaan mereka dialihkan melalui proxy yang extensible
‘dipersempit’ atau mengurangi detail gambar dalam format JPEG. Ini
mempercepat kinerja tetapi menimbulkan masalah, baik ketika resolusi
yang dibutuhkan atau ketika program berkurang menghasilkan hasil yang
salah. Inilah sebabnya mengapa pada masa awal dari web banyak halaman
web berisi link mengatakan ‘AOL Users Klik’ untuk melewati web proxy dan
untuk menghindari bug dalam perangkat lunak yang melemah.
Memfilter web proxy
Sebuah filter konten web proxy server
menyediakan kontrol administratif atas konten yang dapat disampaikan
melalui proxy. Hal ini biasanya digunakan dalam usaha komersial dan
organisasi non-komersial (khususnya sekolah) untuk memastikan bahwa
penggunaan internet sesuai dengan acceptable use policy. Dalam beberapa
kasus pengguna dapat menghindari proxy, karena terdapat layanan yang
dirancang untuk proxy tersebut dari situs web yang disaring melalui
situs yang tidak disaring untuk memungkinkan melalui pengguna proxy.
Beberapa metode umum yang digunakan untuk
penyaringan konten meliputi: URL atau DNS blacklist, URL filter regex,
MIME penyaringan, atau konten filter kata kunci. Beberapa produk yang
telah dikenal untuk menggunakan teknik analisis isi untuk mencari
sifat-sifat umum digunakan oleh jenis tertentu dari penyedia konten.
Sebuah proxy filtering konten akan selalu
mendukung otentikasi pengguna, untuk mengontrol akses web. Ini juga
biasanya menghasilkan log, baik untuk memberikan informasi rinci tentang
URL yang diakses oleh pengguna tertentu, atau untuk memantau statistik
penggunaan bandwidth. Mungkin juga berkomunikasi dengan daemon-based dan
/ atau ICAP berbasis perangkat lunak antivirus untuk menyediakan
keamanan terhadap virus dan malware lain dengan memindai konten masuk
secara real time sebelum memasuki jaringan.
Proxy server Bebas
Proxy server bebas (kadang-kadang disebut
web proxy) umumnya usaha untuk pengguna web surfing. Ada berbagai
varietas bebas. Salah satu variasi yang lebih umum adalah proxy terbuka.
Karena mereka biasanya sulit untuk dilacak, proxy terbuka terutama
berguna untuk mereka yang mencari online anonimitas, dari pembangkang
politik ke komputer kriminal. Beberapa pengguna yang hanya tertarik pada
anonimitas untuk keamanan tambahan, menyembunyikan identitas mereka
dari website berpotensi berbahaya misalnya, atau pada prinsipnya, untuk
memfasilitasi konstitusional hak asasi manusia kebebasan berbicara.
Server menerima permintaan dari server proxy pengganggu, akan tetapi
tidak mengetahui informasi tentang alamat pengguna akhir.
Kontrol akses: Beberapa server proxy
menerapkan persyaratan logon. Dalam organisasi besar, kuasa pengguna
harus log on untuk mendapatkan akses ke web. Organisasi dengan demikian
dapat melacak penggunaan untuk individu.
Beberapa proxy server yang tidak dikenal
akan meneruskan paket data dengan baris header seperti HTTP_VIA,
HTTP_X_FORWARDED_FOR, atau HTTP_FORWARDED, yang dapat mengungkapkan
alamat IP klien. proxy server tidak dikenal lainnya, yang dikenal
sebagai elit atau anonimitas tinggi proxy, hanya menyertakan header
REMOTE_ADDR dengan alamat IP dari server proxy, menimbulkan kesan bahwa
proxy server adalah klien. Sebuah situs web masih bisa tersangka proxy
yang digunakan jika klien mengirimkan paket yang berisi cookie dari
kunjungan sebelumnya yang tidak menggunakan server proxy anonimitas
tinggi. Kliring cookie, dan mungkin cache, akan memecahkan masalah ini.
Hostile proxy
Proxy juga dapat diinstal dalam rangka
untuk memata-matai mesin dataflow antara klien dan web. Semua halaman
diakses, dan juga segala bentuk diajukan, dapat ditangkap dan dianalisis
oleh operator proxy. Untuk alasan ini, sandi untuk layanan online
(seperti webmail dan perbankan) harus selalu cryptographically
dipertukarkan melalui sambungan aman, seperti SSL.
Mencegat server proxy
Sebuah proxy mencegat menggabungkan
server proxy dengan gateway atau router (umumnya dengan kemampuan NAT).
Sambungan dibuat oleh browser klien melalui gateway ini dialihkan ke
proxy tanpa konfigurasi sisi klien (atau sering pengetahuan). Sambungan
juga dapat dialihkan dari SOCKS server atau proxy level sirkuit.
Mencegat proxy juga sering disebut
sebagai ‘transparan’ proxy, atau ‘memaksa’ proxy, mungkin karena
keberadaan dari proxy adalah transparan kepada pengguna, atau user
dipaksa untuk menggunakan proxy tanpa pengaturan lokal.
Tujuan
Mencegat proxy biasanya digunakan dalam usaha untuk mencegah atau
menghindari acceptable use policy, dan untuk meringankan beban
administrasi, karena tidak ada konfigurasi browser klien diperlukan.
Namun alasan kedua ini adalah dikurangi oleh fitur-fitur seperti Active
Directory kebijakan kelompok, atau DHCP dan otomatis deteksi proxy.
Mencegat proxy juga umum digunakan oleh
ISP di beberapa negara untuk menghemat bandwidth Sumber dan meningkatkan
respons arus pelanggan oleh caching. Ini lebih umum di negara-negara di
mana bandwidth yang lebih terbatas (misalnya negara-negara pulau) atau
harus dibayar.
Pengalihan / pencegatan dari sebuah
koneksi TCP menciptakan beberapa masalah. Pertama tujuan asli IP dan
port harus entah bagaimana dikomunikasikan ke proxy. Ini tidak selalu
memungkinkan (misalnya di mana gateway dan proxy berada pada host yang
berbeda). Ada kelas serangan lintas situs yang bergantung pada perilaku
tertentu mencegat proxy yang tidak memeriksa atau memiliki akses ke
informasi tentang tujuan asli (disadap). Masalah ini dapat diatasi
dengan menggunakan paket-tingkat terpadu dan alat tingkat aplikasi atau
perangkat lunak yang kemudian bisa mengkomunikasikan informasi antara
paket penangan dan proxy.
Mencegat juga menimbulkan masalah bagi
otentikasi HTTP, khususnya berorientasi sambungan otentikasi seperti
NTLM, karena browser klien percaya itu bukan berkomunikasi ke server
proxy. Hal ini dapat menyebabkan masalah di mana sebuah proxy mencegat
memerlukan otentikasi, kemudian menghubungkan pengguna ke sebuah situs
yang juga memerlukan otentikasi.
Hal ini memungkinkan untuk mendeteksi
penggunaan server proxy yang mencegat dengan membandingkan eksternal
alamat IP klien ke alamat yang dilihat oleh eksternal web server, atau
kadang-kadang dengan memeriksa HTTP header yang diterima oleh server.
Sejumlah situs telah diciptakan untuk mengatasi masalah ini, dengan
melaporkan pengguna alamat IP seperti yang terlihat oleh situs kembali
ke pengguna di halaman web.
Membuka Proxy Server
Karena proxy dapat digunakan untuk
penyalahgunaan, administrator sistem telah mengembangkan sejumlah cara
untuk menolak layanan untuk membuka proxy. Banyak jaringan IRC tes
secara otomatis sistem klien untuk diketahui jenis proxy terbuka.
Demikian juga, server email mungkin dikonfigurasi untuk secara otomatis
menguji pengirim e-mail untuk proxy terbuka.
Grup dari IRC dan menjalankan surat
elektronik operator DNSBLs penerbitan daftar alamat IP yang diketahui
proxy terbuka, seperti AHBL, Lampung, NJABL, dan Sorbs.
Etika pengujian secara otomatis klien
open proxy yang kontroversial. Beberapa ahli, seperti Vernon Schryver,
mempertimbangkan pengujian tersebut setara dengan seorang penyerang
portscanning client host. Lain-lain mempertimbangkan klien telah diminta
scan dengan menghubungkan ke server dengan persyaratan layanan yang
meliputi pengujian.
Reverse proxy server
Sebuah reverse proxy adalah server proxy
yang terinstal di lingkungan satu atau lebih web server. Semua lalu
lintas yang datang dari Internet dan dengan tujuan dari salah satu web
server berjalan melalui server proxy. Ada beberapa alasan untuk
menginstal reverse proxy server:
- Enkripsi / SSL percepatan: ketika situs
Web aman diciptakan, enkripsi SSL sering tidak dilakukan oleh server web
itu sendiri, melainkan oleh sebuah reverse proxy yang dilengkapi dengan
SSL percepatan hardware. Lihat Secure Socket Layer. Lebih jauh lagi,
sebuah host dapat menyediakan satu ‘SSL proxy’ untuk menyediakan
enkripsi SSL untuk jumlah host yang sewenang-wenang; menghilangkan
perlunya SSL Server Certificate yang terpisah untuk masing-masing host,
dengan kerugian bahwa semua host di belakang proxy SSL harus berbagi
Common nama DNS atau alamat IP untuk koneksi SSL.
- Load balancing: reverse proxy dapat
mendistribusikan beban ke beberapa web server, setiap web server yang
melayani aplikasi sendiri ke daerah. Dalam kasus seperti itu, sebaliknya
proxy mungkin perlu untuk menulis ulang URL dalam setiap halaman web
(terjemahan dari URL eksternal dikenal lokasi internal).
- Sajikan / cache konten statis: Sebuah
reverse proxy dapat offload web server dengan caching konten statis
seperti gambar-gambar dan konten grafis statis.
- Kompresi: server proxy dapat mengoptimalkan dan menekan konten untuk mempercepat waktu buka.
- Mengurangi penggunaan resource yang
lambat disebabkan oleh klien di web server dengan caching konten web
server yang dikirim dan perlahan-lahan itu kepada klien. Hal ini
terutama manfaat halaman yang dihasilkan secara dinamis.
- Keamanan: proxy server lapisan tambahan
pertahanan dan dapat melindungi terhadap beberapa OS dan serangan
WebServer spesifik. Namun, ini tidak memberikan perlindungan terhadap
serangan terhadap aplikasi web atau layanan itu sendiri, yang umumnya
dianggap sebagai ancaman yang lebih besar.
- Extranet Penerbitan: reverse menghadap
server proxy internet dapat digunakan untuk berkomunikasi dengan server
firewall internal bagi suatu organisasi, menyediakan extranet akses ke
beberapa fungsi sekaligus mempertahankan server di belakang firewall.
Jika digunakan dengan cara ini, langkah-langkah keamanan harus
dipertimbangkan untuk melindungi sisa kasus infrastruktur di server yang
terganggu, sebagai aplikasi web yang terkena serangan dari Internet.