Contoh Kasus

Saya hanya ingin API saya bisa di akses oleh beberapa server saja, sehingga memperkecil potensi adanya serangan dari luar. Saya sudah menggunakan traefik dengan docker swarm sebagai orchestrator nya.



Cara Whitelist di Traefik

Karena saya ga punya API yang bisa dijadiin tutorial, jadi saya pake image containous/whoami sebagai contoh

  1. Buat 1 buat file saha_aing.yml
version: "3.7"

services:

  saha_aing:
    image: containous/whoami

    deploy:
      mode: replicated
      replicas: 1

      placement:
        constraints:
          - node.role == manager
      labels:
        - traefik.enable=true
        - traefik.docker.network=traefikprod
        - traefik.http.routers.saha_aing-http.rule=Host(`saha-aing.ipang.my.id`)
        - traefik.http.routers.saha_aing-http.entrypoints=http
        #140 dan 112 itu IP XL
        - traefik.http.middlewares.saha_aing_whitelist.ipwhitelist.sourcerange=127.0.0.1/32, 140.213.11.233/32, 112.215.151.155/32
        #define nama middleware
        - traefik.http.routers.saha_aing-http.middlewares=saha_aing_whitelist
        - traefik.http.services.saha_aing.loadbalancer.server.port=80

    networks:
      - traefikprod

networks:
  traefikprod:
     external: true
Dua-dua nya aja di whitelist, daripada pusing

Dua-dua nya aja di whitelist, daripada pusing

  1. Deploy aplikasi docker stack deploy -c saha_aing.yml saha_aing

  2. Coba akses lewat browser

Bisa Di akses dari Laptop Saya

Bisa Di akses dari Laptop Saya

Kalau di Browser Begini Tampilan IP yang Ga di Whitelist

Kalau di Browser Begini Tampilan IP yang Ga di Whitelist

Referensi:Traefik - IPWhiteList


Jika kamu merasa tulisan ini bermanfaat & membantu kamu, kamu bisa berdonasi lewat saweria

If you feel this website help you, you can donate at saweria