• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

Jaranguda

Belajar Mengajar

  • Home
  • Sponsor/Jasa
  • Tentang

Memproteksi Gambar dan File di Nginx dari Hotlink

Last Updated on 20 June 2020 By tommy 8 Comments

Bila anda kehabisan bandwidth atau load server tinggi karena banyak yang meng-embed gambar atau file lainnya dari server anda, di nginx ada modul ngx_http_referer_module yang bisa digunakan untuk memblokir semua yang embed file dari server anda, ataupun untuk me-whitelist domain-domain yang diijinkan untuk mengembed file.

tambahkan potongan code dibawah ini didalam server { }

location ~ \.(mp3|webp|png|jpg)$ {
    valid_referers blocked domain.com subdomain.domain.com domain.net domain.id;
    if ($invalid_referer) {
        return 403;
    }
}

setelah menambahkan potongan kode diatas jangan lupa untuk mengetes konfigurasi nginx nginx -t lalu reload systemctl reload nginx untuk mengaplikasikan perubahannya.

Bila ada yang mengakses langsung file tersebut akan ditampilkan 403 Forbidden

halama 403 forbidden nginx

Cara Testing

Untuk testing apakah konfigurasi nginx diatas bisa digunakan, kita test menggunakan wget

Tanpa referer, akses di block

> wget http://linkdownload.jaranguda.com/file.mp3 -O /dev/null 
--2019-06-24 17:18:29--  http://linkdownload.jaranguda.com/file.mp3
Resolving linkdownload.jaranguda.com (linkdownload.jaranguda.com)... 192.168.0.1
Connecting to linkdownload.jaranguda.com (linkdownload.jaranguda.com)|192.168.0.1|:80... connected.
HTTP request sent, awaiting response... 403 Forbidden
2019-06-24 17:18:30 ERROR 403: Forbidden.

Dengan referer, file bisa diload atau di download

> wget --referer "domain.id" http://linkdownload.jaranguda.com/file.mp3 -O /dev/null 
--2019-06-24 17:18:31--  http://linkdownload.jaranguda.com/file.mp3
Resolving linkdownload.jaranguda.com (linkdownload.jaranguda.com)... 192.168.0.1
Connecting to linkdownload.jaranguda.com (linkdownload.jaranguda.com)|192.168.0.1|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 6924490 (6.6M) [audio/mpeg]
Saving to: ‘/dev/null’
 
/dev/null                        100%[=======================================================>]   6.60M   583KB/s    in 9.8s    
 
2019-06-24 17:18:42 (688 KB/s) - ‘/dev/null’ saved [6924490/6924490]

Last Updated on 20 June 2020 by tommy

Tulisan menarik lainnya

  • Menjalankan CLI Linux dari PHP

    Dari script PHP kita bisa mengakses CLI (command line interface) linux dengan fungsi shell_exec, dengan…

  • Membuat Reverse Proxy Nginx di Debian 8

    Tujuan reverse proxy ini adalah agar kita bisa mengakses situs-situs dari domain/IP kita sendiri. Kegunaan…

  • Mencetak Angka dari 1-1000 di Terminal Linux

    Untuk mencetak angka 1 sampai 1000 di terminal linux kita bisa menggunakan beberapa cara :…

  • Nginx Error GeoIP version 1010002 instead of 1011011 CentOS 7

    Permasalahan Sewaktu upgrade nginx ke 1.11.11, nginx ngambek ngga mau jalan karena beberapa error 2017/03/22…

Filed Under: Linux Tagged With: nginx

Reader Interactions

Comments

  1. candra says

    11 June 2020 at 10:31

    berapa lama hotlink baru akan bekerja setelah kita menaruh kodenya? apakah sampai seminggu baru gambar tidak bisa lagi di akses di web lain atau yang bukan web kita. trims

    Reply
    • tommy says

      13 June 2020 at 10:58

      langsung sesudah di aplikasikan perubahannya

      Reply
      • candra says

        18 June 2020 at 17:28

        saya menaruh kode tersebut di /etc/nginx/sites-available/mywebsite.com
        tapi tidak bekerja.

        Reply
        • tommy says

          18 June 2020 at 19:43

          ngga bekerjanya gimana ya?

          Reply
          • candra says

            18 June 2020 at 22:04

            saya sudah meletakkan gambar yang saya hotlink pada situs saya yang lain, yang berbeda server, tapi gambarnya tetap muncul, walaupun cache browser telah dibersihkan.

            Reply
            • tommy says

              20 June 2020 at 19:20

              barusan saya test di nginx/1.18.0 jalan kok. Coba lihat config lengkapnya

              Reply
              • candra says

                24 June 2020 at 00:51

                udah bisa, rupanya penempatannya aja yang salah, tapi hanya sebagian gambar yang di hotlink, sebagian gak

              • tommy says

                26 June 2020 at 14:26

                harusnya sih semuanya terblokir hehe, mungkin ada di config yang perlu di benerin

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Primary Sidebar

Pencarian

Tanya Jawab tentang DevOps SRE CPE, gabung di https://t.me/devopsindonesia

Terbaru

  • Cara Menonaktifkan Pager di macOS
  • Cara Mengupdate Nama Apple silicon-as-a-Service Scaleway
  • Cara Force Delete Namespace di Kubernetes
  • Install PHP MariaDB di Mac Monterey
  • MacOS Minta Install Git

Komentar

  • Ari on Cara Mematikan SSID Molecool Balifiber
  • kiki anarki on Mengambil Data dari Situs BPJS Ketenagakerjaan dengan PHP cURL
  • musgan on Password Router Huawei HG8245H5 Indihome
  • ghabily on Mengambil Informasi Router Alcatel Lucent G-241W-A dengan PHP
  • nea on Mencari urutan angka yang hilang di PHP

Tulisan Populer

  • Password Router Huawei HG8245H5 Indihome 1.1m views
  • Password Terbaru ZTE F609 Indihome 784k views
  • Password Superadmin Huawei HG8245A 314.2k views
  • Cara Setting Manual Modem GPON ZTE F609 Indihome 272.2k views
  • Cara Setting Wireless ZTE F609 Indihome 256.1k views
  • Mengaktifkan Port LAN di Huawei HG8245 Indihome 169.1k views
  • Akses UseeTV Indihome via Wireless ZTE F609 156.5k views
  • Kemana Menghilangnya Saldo BCA 50 ribu 150.3k views
  • Cara Reset Password ZTE F609 Indihome 147.2k views
  • Cara Setting DHCP Server Modem/Router ZTE F609 112.9k views

Kategori

  • Delphi
  • dll
  • Gambas
  • Internet
  • Java
  • Lazarus
  • Linux
  • PHP
  • Review
  • Teknologi

Sponsor

kadal.id
carakami.com
kuotabisa.com
Untuk jadi sponsor, hubungi kita lewat halaman sponsor
© 2021. Jaranguda
  • Linux
  • PHP
  • Internet
  • Teknologi
  • Delphi
  • Gambas
  • Java