Buat firewall anda sendiri dengan iptables menggunakan skrip ringkas ini

Saya meluangkan masa untuk memikirkan dua perkara mengenai iptables ini: kebanyakan mereka yang mencari tutorial ini adalah pemula dan kedua, banyak yang sudah mencari sesuatu yang cukup sederhana dan sudah dihuraikan.

Contoh ini adalah untuk pelayan web, tetapi anda boleh menambahkan lebih banyak peraturan dengan mudah dan menyesuaikannya dengan keperluan anda.

Apabila anda melihat "x" ubah untuk ip anda


#!/bin/bash

#Kami membersihkan jadual iptables -F iptables -X # Kami membersihkan NAT iptables -t nat -F iptables -t nat -X # mangle table untuk perkara seperti PPPoE, PPP, dan ATM iptables -t mangle -F iptables -t mangle -X # Polies Saya fikir ini adalah cara terbaik untuk pemula dan # masih tidak buruk, saya akan menerangkan output kerana semuanya adalah sambungan keluar #, input kami membuang semuanya, dan tidak ada pelayan yang harus meneruskan. iptables -P INPUT DROP iptables -P OUTPUT MENERIMA iptables -P FORWARD DROP #Intranet LAN intranet = eth0 #Extranet wan extranet = eth1 # Keep state. Segala-galanya yang telah disambungkan (dibentuk) dibiarkan seperti ini: iptables -SATU INPUT -m -state DITETAPKAN, BERKAITAN -j MENERIMA # Peranti gelung. iptables -A INPUT -i lo -j MENERIMA # http, https, kami tidak menentukan antara muka kerana # kami mahu ia untuk semua iptables -A INPUT -p tcp --dport 80 -j MENERIMA iptables -A INPUT -p tcp - dport 443 -j MENERIMA # ssh hanya secara dalaman dan dari rangkaian iptables ip ini -A INPUT -p tcp -s 192.168.xx / 24 -i $ intranet --dport 7659 -j MENERIMA # pemantauan misalnya jika mereka mempunyai zabbix atau yang lain perkhidmatan snmp iptables -A INPUT -p tcp -s 192.168.xx / 24 -i $ intranet --dport 10050 -j ACCEPT # icmp, ping baik terpulang kepada anda iptables -A INPUT -p icmp -s 192.168.xx / 24 - i $ intranet -j MENERIMA #mysql dengan postgres adalah port 5432 iptables -A INPUT -p tcp -s 192.168.xx --sport 3306 -i $ intranet -j MENERIMA #sendmail bueeeh jika anda ingin menghantar beberapa surat #iptables -A OUTPUT -p tcp --dport 25 -j MENERIMA # Anti-SPOOFING 09/07/2014 # SERVER_IP = "190.xxx" # IP pelayan - ip sebenar pelayan anda LAN_RANGE = "192.168.xx / 21" # rangkaian LAN rangkaian atau vlan # Ip anda yang tidak boleh memasuki extranet,adalah menggunakan sedikit logik # jika kita mempunyai antara muka WAN semata-mata ia tidak boleh memasuki # jenis lalu lintas LAN melalui antara muka itu SPOOF_IPS = "0.0.0.0/8 127.0.0.0/8 10.0.0.0/8 172.16.0.0/12 192.168.0.0 / 16 "# Tindakan lalai - untuk dilaksanakan apabila mana-mana peraturan sepadan dengan TINDAKAN =" DROP "# Paket dengan ip pelayan saya yang sama melalui wan iptables -A INPUT -i $ extranet -s $ SERVER_IP -j $ ACTION # iptables -A OUTPUT -o $ extranet -s $ SERVER_IP -j $ ACTION # Paket dengan Julat LAN untuk wan, saya meletakkannya seperti ini sekiranya anda mempunyai # rangkaian tertentu, tetapi ini berlebihan dengan # peraturan berikut di dalam gelung " untuk "iptables -A INPUT -i $ extranet -s $ LAN_RANGE -j $ ACTION iptables -A OUTPUT -o $ extranet -s $ LAN_RANGE -j $ ACTION ## Semua Rangkaian SPOOF tidak dibenarkan oleh wan untuk ip dalam $ SPOOF_IPS lakukan iptables -A INPUT -i $ extranet -s $ ip -j $ ACTION iptables -A OUTPUT -o $ extranet -s $ ip -j $ TINDAKAN selesai

Seperti biasa saya menunggu komen anda, nantikan blog ini, Terima kasih