Naudodami šį paprastą scenarijų, sukurkite savo ugniasienę naudodami „iptables“

Aš praleidau šiek tiek laiko galvodamas apie du dalykus apie šį „iptables“: dauguma tų, kurie ieško šių vadovėlių, yra pradedantieji, antra, daugelis jau ieško kažko gana paprasto ir jau parengto.

Šis pavyzdys skirtas žiniatinklio serveriui, bet galite lengvai pridėti daugiau taisyklių ir pritaikyti ją savo poreikiams.

Kai pamatysite „x“ pakeitimą savo ip


#!/bin/bash

#Nuvalome „iptables“ lenteles -F iptables -X # Mes išvalome NAT iptables -t nat -F iptables -t nat -X # mangle lentelę tokiems dalykams kaip PPPoE, PPP ir ATM iptables -t mangle -F iptables -t mangle -X # Politika, manau, kad tai geriausias būdas pradedantiesiems ir # vis dar neblogas, aš paaiškinsiu visus išvestį (išvestį), nes jie yra išeinantys ryšiai #, įvestis mes viską atmetame ir nė vienas serveris neturėtų persiųsti. „iptables“ -P INPUT DROP „iptables“ -P IŠĖJIMO PRIĖMIMAS „iptables“ -P FORWARD DROP #Intranet LAN intranetas = eth0 #Extranet wan ekstranetas = eth1 # Išlaikyti būseną. Viskas, kas jau yra prijungta (nustatyta), paliekama kaip šie „iptables“ - „INPUT“ - „m“ būsena - būsena ĮSTATYTA, SUSIJED - j ACCEPT # Loop įrenginys. „iptables“ -A INPUT -i lo -j ACCEPT # http, https, sąsajos nenurodome, nes # mes norime, kad tai būtų visi „iptables“ -A INPUT -p tcp --dport 80 -j ACCEPT iptables -A INPUT -p tcp - dport 443 -j ACCEPT # ssh tik viduje ir iš šio „ipptables“ diapazono -A INPUT -p tcp -s 192.168.xx / 24 -i $ intranetas --port 7659 -j ACCEPT # stebėjimas, pavyzdžiui, jei jie turi zabbix arba kai kurie kiti „snmp“ paslaugos „iptables“ -A INPUT -p tcp -s 192.168.xx / 24 -i $ intranetas --port 10050 -j ACCEPT # icmp, gerai, jei ping, tai priklauso nuo jūsų „iptables“ -A INPUT -p icmp -s 192.168.xx / 24 - i $ intranet -j ACCEPT #mysql with postgres is port 5432 iptables -A INPUT -p tcp -s 192.168.xx --sport 3306 -i $ intranet -j ACCEPT #sendmail bueeeh, jei norite išsiųsti laišką # iptables -A IŠĖJIMAS -p tcp --portas 25 -j PRIIMTI # Anti-SPOOFING 09-07-2014 # SERVER_IP = "190.xxx" # serverio IP - tikrasis jūsų serverio IP LAN_RANGE = "192.168.xx / 21 "# Jūsų tinklo LAN # diapazonas ar jūsų IP # IP, kurie niekada neturėtų patekti į ekstranetąyra naudoti šiek tiek # logikos, jei turime vien tik WAN sąsają, ji niekada neturėtų įvesti # LAN tipo srauto per tą sąsają. 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 / XNUMX "# Numatytasis veiksmas - turi būti atliekamas, kai kuri nors taisyklė atitinka ACTION =" DROP "# Paketai su tuo pačiu mano serverio IP per wan iptables -A ĮVADAS -i $ ekstranetas -s $ SERVER_IP -j $ ACTION # iptables -A IŠĖJIMAS -o $ ekstranetas -S $ SERVER_IP -j $ ACTION # Paketai su LAN diapazonu wan, aš tai išdėstiau taip, jei turite # bet kurį konkretų tinklą, tačiau tai yra nereikalinga, kai viduje yra ši # taisyklė ciklas „for“ iptables -A INPUT -i $ extranet -s $ LAN_RANGE -j $ ACTION iptables -A OUTPUT -o $ extranet -s $ LAN_RANGE -j $ ACTION ## Visų SPOOF tinklų neleidžia wan ip $ SPOOF_IPS daro „iptables“ -A ĮVADAS -i $ ekstranetas -s $ ip -j $ ACTION „iptables“ -A IŠĖJIMAS -o $ ekstranetas -s $ ip -j $ VEIKSMAS atliktas

Kaip visada laukiu jūsų komentarų, stebėkite šį tinklaraštį, dėkoju