SSD Nodes Learn Hosting plans →
Panduan Matt ConnorOleh Matt Connor · Diperbarui 2026-09-01

Apakah SearXNG Aman? Siapa yang Melihat Kueri Anda

SearXNG mengganti IP Anda dengan IP server di mesin pencari. Ketahui siapa yang melihat kueri pada instance publik, VPS sendiri, dan batas privasinya.

Apakah SearXNG aman? Jawaban singkatnya

SearXNG aman dalam satu hal dan tidak aman dalam hal lain. Karena itu, pertanyaan "apakah SearXNG aman" baru dapat dijawab setelah Anda menjelaskan dari siapa Anda ingin menyembunyikan aktivitas. SearXNG adalah mesin metasearch: SearXNG menerima kueri Anda, mengirimkannya ke Google, Bing, DuckDuckGo, dan mesin lain yang Anda aktifkan, lalu menggabungkan hasilnya menjadi satu halaman hasil. Mesin-mesin tersebut melihat instance. Instance melihat Anda.

Pada instance publik yang dijalankan oleh orang lain, orang tersebut menerima setiap kueri yang Anda ketik dalam bentuk teks biasa. Tidak ada informasi pada halaman about mereka yang dapat membuktikan apa yang mereka lakukan terhadap data tersebut. Pada server milik Anda sendiri, mesin upstream melihat alamat server Anda, bukan alamat rumah Anda. Pertukaran itulah inti privasinya, dan nilainya sepenuhnya bergantung pada server tempat SearXNG berjalan.

Tidak ada bagian dari konfigurasi ini yang menyembunyikan aktivitas pencarian Anda dari jaringan Anda sendiri. Penyedia layanan Internet (ISP) Anda tetap melihat koneksi ke instance tersebut. Resolver DNS (domain name system) Anda tetap melihat hostname-nya. Ingat batasan ini saat membaca bagian selanjutnya.

Perubahan yang dibuat SearXNG pada permintaan pencarian

Jika Anda mencari langsung di Google, Google menerima alamat IP, cookie, header User-Agent, dan halaman asal Anda. Semua informasi tersebut dikaitkan dengan profil yang tetap tersimpan setelah sesi berakhir. SearXNG berada di antara Anda dan mesin pencari. Dokumentasinya menjelaskan dua hal yang dilakukan SearXNG: "menghapus data pribadi dari permintaan yang dikirim ke layanan pencarian" dan "membuat profil browser acak untuk setiap permintaan". Cookie Anda tidak pernah diteruskan ke mesin pencari. Preferensi Anda disimpan di browser sendiri, bukan di akun pada server.

Dua header respons aktif secara default, dan keduanya menjalankan fungsi penting:

default_http_headers:
  X-Robots-Tag: noindex, nofollow
  Referrer-Policy: no-referrer

Referrer-Policy: no-referrer berarti bahwa ketika Anda mengeklik hasil pencarian, situs tujuan tidak pernah mengetahui halaman pencarian yang mengarahkan Anda ke sana karena browser tidak menyertakan header Referer. X-Robots-Tag: noindex, nofollow mencegah instance Anda dan halaman hasilnya masuk ke indeks mesin pencari.

SearXNG tidak mengubah kueri itu sendiri. Kueri tiba di instance dalam bentuk lengkap dan dapat dibaca karena TLS (transport layer security) dihentikan di sana. Semua poin di bawah ini berasal dari fakta tersebut.

Pada instance publik, operator dapat melihat setiap query

Dokumentasi proyek menyatakannya dengan jelas: pengguna instance publik “harus memercayai administrator instance tersebut”, dan mereka tidak dapat mengetahui “apakah request mereka dicatat, digabungkan, lalu dikirim atau dijual kepada pihak ketiga”. Klaim tanpa log pada halaman landing tetap merupakan klaim. Dari luar, tidak ada cara untuk mengujinya. Pilihannya hanya memercayai atau tidak menggunakan layanan tersebut. Beberapa instance publik juga masih menjalankan Searx asli, bukan fork ini. Hal itu penting karena Searx tidak menerima commit kode sejak 2023 dan software pencarian yang tidak dipelihara adalah satu hal lagi yang harus Anda percayai tanpa dapat memverifikasinya.

Logging juga merupakan pilihan yang paling mudah, karena default yang disertakan menempatkan query Anda di URL:

server:
  method: "GET"

Dengan GET, query dikirim sebagai ?q=... dalam request line. Reverse proxy biasa mana pun menulis request line tersebut ke access log. Dengan demikian, query tercatat tanpa ada orang yang secara khusus memutuskan untuk mencatatnya:

203.0.113.5 - - [20/Aug/2026:09:14:02 +0000] "GET /search?q=redundancy+pay+notice+period&category_general=1&language=en HTTP/1.1" 200 15321 "-" "Mozilla/5.0 (X11; Linux x86_64)"

Pada instance milik Anda sendiri, periksa hal ini:

sudo tail -n 5 /var/log/nginx/access.log

Query Anda ada di sana karena format log nginx combined menulis $request, yaitu request line lengkap yang mencakup query string. SearXNG tidak dapat mengubah hal tersebut. Mengalihkan instance ke method: "POST" memindahkan query ke request body. Dengan begitu, query tidak lagi muncul di access log atau riwayat browser. Dokumentasi menjelaskan dengan jujur bahwa POST memiliki kekurangan yang “sangat membatasi kemudahan penggunaan bagi pengguna akhir”, terutama terkait tombol kembali pada browser. Ini adalah kompromi yang Anda pilih secara sadar.

Ada dua konsekuensi untuk setiap instance publik. Operator dapat membaca query Anda, baik mereka bermaksud mengumpulkannya maupun tidak. Backup atau pembobolan juga dapat mengakses log yang sama.

Di VPS Anda sendiri, mesin pencari melihat server Anda, bukan Anda

Jalankan instance Anda sendiri pada VPS (virtual private server). Perubahannya mudah dijelaskan. Google tidak lagi menerima alamat IP rumah Anda bersama kueri Anda. Google menerima alamat IP server Anda bersama kueri tersebut. Google tidak dapat mengaitkan pencarian itu dengan akun Anda yang sedang login, ponsel Anda, atau profil iklan yang terkait dengan koneksi rumah Anda. Proses pembuatannya dibahas dalam panduan menjalankan instance SearXNG sendiri pada VPS.

Pahami hal-hal yang tidak berubah. Mesin pencari tetap melihat teks kueri, waktu pengiriman, bahasa dan wilayah yang Anda minta, serta pola seluruh pencarian Anda selama berbulan-bulan, yang semuanya dikelompokkan berdasarkan satu alamat yang stabil. Jika Anda adalah satu-satunya pengguna, alamat tersebut menjadi aliran data per orang tanpa nama yang melekat padanya. Untuk memutus pengelompokan tersebut, instance harus mengakses mesin pencari melalui proxy keluar atau Tor. SearXNG mendukung kedua metode ini, tetapi penerapannya merupakan pekerjaan terpisah.

Hal-hal yang masih dapat dilihat ISP, resolver, dan host Anda

Empat pengamat tidak terpengaruh oleh semua ini.

  • ISP Anda melihat koneksi TLS ke alamat IP instance Anda. ISP juga melihat hostname pada field SNI (server name indication), yang dikirim dalam bentuk teks biasa selama handshake. ISP tidak melihat query tersebut.
  • Resolver DNS Anda melihat pencarian untuk hostname tersebut. Pantau prosesnya dari client dengan sudo tcpdump -ni any port 53 saat Anda memuat halaman. Permintaan A record untuk instance Anda akan muncul.
  • Provider VPS Anda menjalankan perangkat kerasnya. Karena itu, provider dapat membaca disk dan memori mesin virtual. Enkripsi disk di dalam VM sewaan tidak menghilangkan risiko ini karena sistem yang sedang berjalan memegang key tersebut.
  • Siapa pun yang memiliki akses root pada instance dapat melihat semuanya. Itu mencakup Anda dan siapa pun yang nantinya berhasil masuk.

Mengakses instance sebagai layanan onion Tor menutup dua hal pertama. Tidak ada hostname publik yang perlu di-resolve dan tidak ada field SNI yang dapat dibaca. Panduan untuk menambahkan layanan onion v3 ke VPS menjelaskan penyiapannya, termasuk kebocoran yang jika tidak ditangani dapat mengaitkan alamat tersebut kembali ke IP publik server Anda.

Ada satu hal lagi yang sering dilupakan. Request keluar dari server Anda terlihat dari jaringan server itu sendiri. Karena itu, provider dapat melihat bahwa mesin Anda berkomunikasi dengan Google dan Bing sepanjang hari. Ini merupakan pola trafik, bukan query, tetapi tetap memberikan informasi.

Di sinilah pertanyaan tentang VPN muncul. VPN (virtual private network) mengalihkan apa yang dilihat ISP Anda menjadi apa yang dilihat perusahaan VPN. VPN tidak mengubah apa pun terkait operator instance dan tidak mengubah apa pun terkait mesin pencari, karena mesin pencari berkomunikasi dengan server Anda, bukan dengan Anda. Keduanya dibandingkan secara tepat dalam perbandingan VPS dan VPN.

Mengapa SearXNG memblokir Anda, dan arti sebenarnya dari 429

Dua kejadian berbeda sering sama-sama disebut sebagai "SearXNG memblokir saya", padahal perbaikannya berbeda.

Yang pertama adalah limiter Anda sendiri yang merespons dengan HTTP 429. Ini adalah perlindungan bot SearXNG, dan secara default dinonaktifkan:

server:
  limiter: true
valkey:
  url: valkey://localhost:6379/0

Per Agustus 2026, limiter memerlukan database Valkey dan membaca aturannya dari /etc/searxng/limiter.toml. Atur server.public_instance: true juga jika orang lain benar-benar menggunakan server tersebut, karena secara default nilainya adalah false dan pengaturan ini mengaktifkan perilaku yang ditujukan untuk penggunaan publik.

Limiter menjalankan beberapa pemeriksaan. http_user_agent menganggap User-Agent yang tidak ditetapkan, atau yang cocok dengan tool umum seperti curl dan wget, sebagai bot. http_accept menganggap request yang header Accept-nya tidak berisi text/html sebagai bot. link_token menandai client sebagai mencurigakan jika client tersebut tidak pernah mengambil URL /client<token>.css yang dimuat oleh browser sungguhan. Jika salah satu pemeriksaan terpenuhi, SearXNG mengembalikan 429 dan menulis baris ERROR ke logger botdetection.

Jadi, ini gagal, dan memang seharusnya demikian:

curl -s -o /dev/null -w '%{http_code}\n' 'https://searx.example.com/search?q=test'

curl mengirim User-Agent: curl/8.5.0 dan Accept: */*, sehingga dua pemeriksaan terpenuhi sekaligus. Itulah sebabnya script dan agen AI menerima 429 dari instance yang berfungsi normal di browser. Perbaiki hal ini sebelum mengarahkan skill pencarian agen ke instance Anda sendiri. Daftar lengkap penyebab dan pengaturan tersedia dalam panduan tentang rate limit SearXNG dan error 429.

Ada satu jebakan limiter yang perlu disebutkan. Di balik reverse proxy, SearXNG melihat alamat proxy, bukan alamat pengunjung, kecuali proxy tersebut dipercaya:

[botdetection]
ipv4_prefix = 32
ipv6_prefix = 48
trusted_proxies = ['127.0.0.0/8', '::1']

[botdetection.ip_limit]
link_token = false

[botdetection.ip_lists]
pass_ip = []
block_ip = []

Daftar default mencakup proxy pada host yang sama. Proxy dalam jaringan Docker terpisah datang dari alamat seperti 172.18.0.5, yang tidak ada dalam daftar tersebut. Akibatnya, semua pengunjung dihitung sebagai satu client, dan pengguna pertama yang sibuk dapat memblokir semua pengguna lainnya. Tambahkan subnet tersebut ke trusted_proxies.

Jenis pemblokiran kedua terjadi di upstream. Sebuah engine menganggap alamat datacenter yang menjalankan banyak pencarian sebagai scraper, lalu berhenti merespons server Anda. Dalam kondisi ini, Anda tidak menerima 429. Anda menerima halaman hasil yang tidak memuat hasil dari engine tersebut, disertai keterangan kegagalan pada engine itu. Setelah kegagalan berulang, SearXNG akan menangguhkan engine tersebut untuk sementara. Penyebabnya adalah alamat tempat VPS Anda berada. Karena itu, solusinya adalah memilih engine lain dan menunggu, bukan mengubah limiter.

Apakah berbagi sebuah instance dengan orang yang tidak dikenal membantu atau justru merugikan?

Keduanya, dalam arah yang berlawanan. Karena itu, jawabannya terasa tidak pasti. Anonimitas merupakan efek kerumunan. Pada instance publik yang sibuk, query Anda berasal dari alamat yang sama dengan query milik ribuan orang lain. Dengan demikian, tidak ada engine yang dapat memisahkan query Anda dari kumpulan tersebut. Pada instance untuk satu pengguna, setiap query dari alamat itu adalah milik Anda. Engine menerima aliran query yang bersih dari satu orang, tanpa nama yang terlampir.

Dari sisi operator, situasinya berbalik. Kerumunan besar berarti seorang asing menyimpan query teks biasa milik seluruh kerumunan, termasuk milik Anda. Dengan server Anda sendiri, Anda menyimpan query Anda dan tidak menyimpan query milik orang lain.

Jadi, tentukan pilihan berdasarkan ancaman yang benar-benar Anda hadapi. Khawatir terhadap pembuatan profil iklan dan pelacakan lintas situs? Kerumunan menangani hal itu dengan baik, dan risiko dari operator relatif kecil. Khawatir bahwa orang atau perusahaan tertentu dapat membaca satu pencarian tertentu yang Anda lakukan? Kerumunan sama sekali tidak membantu, karena operator melihat teks mentahnya. Pilihan tengah yang baik adalah menggunakan instance untuk beberapa orang yang Anda kenal. Anda mendapatkan kerumunan kecil dan operator yang dapat diverifikasi, karena operatornya adalah Anda.

Apakah hasil SearXNG lebih baik daripada Google?

Tidak. SearXNG tidak memiliki indeks sendiri, sehingga setiap hasil pada halaman berasal dari mesin upstream, dan batas kualitasnya ditentukan oleh kualitas mesin yang Anda aktifkan. Jika Google dan Bing dinonaktifkan, kualitas turun pada hari yang sama karena sebagian besar cakupan web umum berasal dari kedua mesin tersebut.

Yang berubah adalah pemrosesan yang diterapkan terhadap Anda. Tidak ada pihak yang membuat profil iklan berdasarkan kueri, dan tidak ada pihak yang mengurutkan ulang hasil berdasarkan hal yang Anda klik minggu lalu. Hal ini memiliki dua sisi, karena personalisasi juga membawa konteks lokal. Pencarian seperti "pharmacy open now" menghasilkan hasil yang lebih lemah melalui SearXNG karena mesin tersebut tidak memiliki sinyal lokasi untuk server Anda selain pusat data tempat server itu berada. Atur wilayah di preferensi jika hasil lokal diperlukan.

Dua pengaturan menentukan seberapa banyak instance Anda membocorkan informasi saat Anda membaca hasil tersebut. image_proxy secara default adalah false, sehingga thumbnail dimuat langsung dari situs yang menyediakannya dan situs tersebut dapat melihat alamat browser Anda. Dengan menetapkan image_proxy: true, thumbnail dialihkan melalui instance, dengan konsekuensi penggunaan bandwidth dan memori yang lebih tinggi. Selain itu, formats hanya tersedia sebagai html, sehingga permintaan JSON (JavaScript object notation) ditolak dengan 403 Forbidden:

curl -s -o /dev/null -w '%{http_code}\n' 'https://searx.example.com/search?q=test&format=json'

Aktifkan json pada instance publik, dan Anda telah menyediakan API scraping gratis. Ini adalah cara tercepat agar alamat server Anda diblokir oleh mesin yang menjadi dependensi Anda. Biarkan fitur tersebut nonaktif, atau lindungi dengan autentikasi.

Batas perlindungan privasi SearXNG

SearXNG menyembunyikan identitas pihak yang melakukan permintaan dari mesin pencari. SearXNG tidak menyembunyikan aktivitas Anda dari jaringan. Dari sini, ada empat batasan.

  • Trafik Anda tidak berubah di bagian mana pun selain kotak pencarian. Semua aktivitas lain yang dilakukan mesin tetap keluar dari jaringan Anda seperti sebelumnya.
  • Satu pengguna pada satu server merupakan pengenal yang stabil bagi setiap mesin pencari. Pengenal tersebut tidak memuat nama, dan hanya itu manfaatnya.
  • Operator instance mana pun dapat membaca kueri dalam teks biasa. Menjadi operator instance itu sendiri adalah satu-satunya cara untuk memverifikasi hal ini.
  • Log akses Anda sendiri dapat membangun kembali catatan yang ingin Anda hindari. Baca log tersebut, lalu beralih ke method: "POST" jika Anda ingin log tetap kosong.

SearXNG memindahkan pihak yang melakukan pemantauan. SearXNG tidak menghapus pemantauan. Tentukan pihak mana yang paling mengkhawatirkan Anda, pilih instance yang sesuai, dan jangan menganggap antarmuka pencarian sebagai software anonimitas.

FAQ

Apakah SearXNG aman digunakan pada instance publik?

SearXNG aman dari mesin pencari, tetapi tidak aman dari operator instance. Kueri Anda sampai ke server tersebut dalam bentuk teks biasa. Dokumentasi proyek menyatakan bahwa pengguna "harus memercayai administrator instance tersebut" dan tidak dapat mengetahui "apakah permintaan mereka dicatat, dikumpulkan, lalu dikirim atau dijual kepada pihak ketiga". Dengan default bawaan method: "GET", kueri tersebut juga masuk ke access log reverse proxy sebagai bagian dari baris permintaan, terlepas dari apakah operator menginginkannya. Gunakan instance publik untuk pencarian biasa jika kekhawatiran Anda adalah pembuatan profil oleh iklan. Jangan masukkan informasi ke instance yang tidak akan Anda serahkan kepada pemiliknya.

Apakah SearXNG menyembunyikan pencarian saya dari penyedia layanan Internet?

Teks kueri tersembunyi. Aktivitasnya tidak. Penyedia layanan Anda dapat melihat koneksi TLS ke alamat instance dan hostname pada field SNI teks biasa dalam proses handshake. Resolver DNS Anda juga dapat melihat pencarian hostname tersebut. Keduanya tidak dapat melihat hal yang Anda cari karena koneksinya terenkripsi. SearXNG bukan VPN dan tidak melindungi aktivitas lain pada mesin Anda.

Mengapa SearXNG mengembalikan error 429?

Kode 429 berasal dari limiter milik instance itu sendiri. Ini adalah perlindungan terhadap bot, bukan pesan dari Google. Probe-nya menandai permintaan yang header Accept-nya tidak memiliki text/html, serta User-Agent yang tidak ditetapkan atau cocok dengan tool seperti curl dan wget. Probe ketiga, yaitu token tautan, menandai client yang tidak pernah mengambil URL /client<token>.css yang dimuat browser. Jika reverse proxy tidak tercantum dalam trusted_proxies pada /etc/searxng/limiter.toml, setiap pengunjung dihitung sebagai satu client. Akibatnya, satu pengguna yang sibuk dapat memblokir pengguna lainnya. Jika engine upstream memblokir server Anda, hasil dari engine tersebut hanya hilang dari halaman dan Anda tidak akan menerima error 429.

Apakah self-hosting SearXNG membuat hasil pencarian saya lebih buruk?

Terkadang, karena dua alasan yang perlu diketahui. Hasil pencarian berasal dari engine upstream. Jika engine membatasi alamat datacenter, lebih sedikit engine yang memberikan jawaban sehingga halaman hasil menjadi lebih terbatas. Selain itu, pemeringkatan yang dipersonalisasi tidak digunakan. Ini menghapus pengurutan berdasarkan iklan sekaligus konteks lokal. Akibatnya, pencarian yang bergantung pada lokasi dapat memberikan jawaban yang kurang relevan sampai Anda menetapkan region di preferensi.