Erinevus lehekülje "Ruutiv mitmeharuline tulemüür" redaktsioonide vahel
(→Tähelepanekuid ehitamisel) |
(→Tähelepanekuid ehitamisel) |
||
185. rida: | 185. rida: | ||
Ajutise failoveri saavutamiseks piisab kui kõrval hoida konfitud ja töövalmis sarnane server. Kleepida serverile kaabelduse skeem st mis kaabel kuhu ümber tõsta. Igaks-juhuks teisele kettale kloonitud esimese ketta opsüsteem. | Ajutise failoveri saavutamiseks piisab kui kõrval hoida konfitud ja töövalmis sarnane server. Kleepida serverile kaabelduse skeem st mis kaabel kuhu ümber tõsta. Igaks-juhuks teisele kettale kloonitud esimese ketta opsüsteem. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− |
Redaktsioon: 10. august 2011, kell 13:24
Toores. Ehk seda pala võib täiendada.
Sisukord
Tulemüüri ja võrgu konseptsioon
On asutus Loomaaed mil domeen zoo.tartu.ee. Asutusele on ISP poolt terve C klass IP aadresse. See on omakorda jagatud veel mitmeks eri võrguks. On kontorivõrk, on serverite võrk, on majutatud serverite võrk (mitmesugused hobiteadlaste projektid, loodusuurijate serverid ja loomade jälgimise kaamerad jms). Lisaks kõigele sellele on olemas veel NATitud sisevõrk ning kasutust leiab uus edumeelne protokoll IPV6.
Asutusel on olemas server millel piisavalt CPU jõudlust ning kokku on masinas ülesannete täitmiseks neli võrgukaarti.
Võrgu poliitika
* Serverivõrk - seest välja ühendused oleksid kõik lahti - väljast sisse kõikühendused lahti va serveritele: - temperatuur.zoo.edu.ee ja monitoorija.zoo.edu.ee
(viimased kaks on vanad legacy serverid mille portidele ei tahaks lubada välismaad)
* Kontorivõrk - Seest välja ühendused kõik lahti - väljast sisse liikuvad kõik ühendused kinni va: - kontor.zoo.edu.ee - Serverivõrk
Lisaks ei jagaks DHCP teenus edaspidi enam läpakatele ja ajutistele arvutitele väliseid IP aadresse vaid sisemisi NATitavaid aadresse.
* Majutatud võrk - sees välja kõik lahti - väljas sisse kõik lahti
Lahendus ja pf.conf faili seadistus
kasutusel võimalikult palju tabeleid, kuna tabelid tõenäoliselt eraldi reeglitest kiiremad. Olemas eraldi nn mustad nimekirjad kuhu saab kiiresti vajadusel "halbu" aadresse lisada.
NB! Tähele tasub panna, et võrreldes tavalise ühe võrgukaardiga tulemüüriga on reeglid nö tagurpidi keeratud.
Põhimõte tulemüüri valmistamisel oli, mitte kirjutada iga masina kohta käivaid piiranguid üldisesse tulemüüri vaid jätta spetsiifilised porte piiravad reeglid edasi olema igas masinas eraldi Kesksest tulemüürist kehtestatakse üldised piirangud - või siis lubamised.
PS!: Reeglite süntaks on järgmine:
[pass/block(drop/return)] [in/out] [log] [quick] [on interface] [inet/inet6] \ [proto <tcp/udp/icmp/icmp6>] [from src_addr [port src_port]] [to dst_addr [port dst_port]] \ [flags tcp_flags] [state]
ext_if = "fxp0"
server_if = "fxp1"
kontor_if = "fxp2"
majutatud_if = "fxp3"
# Optimiseerimised
set optimization normal
set block-policy drop
set skip on lo0
set limit states 1048576
set state-policy if-bound
#set state-defaults pflow
# mitu erinevat remote ip aadressi saavad samaagselt state'isid pidada.
#See peaks olema koos state limiidiga
set limit src-nodes 30000
scrub in all
scrub out all random-id max-mss 1440
# Ruuteri enda aadressid
table <my_addresses> const { 193.40.45.2, 193.40.45.33, 193.40.45.77 }
# Globaalne tabel kus olevad aadressid koheselt blokeeritakse
table <global_block_in_from> { 0.0.0.0/8, 10.0.0.0/8, 127.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16, 240.0.0.0/4, fc00::/7 }
# Blokeerime spämmarite ligipääsu postiserveritele
table <smtp_block_in_from> persist
# Serverite võrgu aadressid millele ligipääs blokeeritud
table <server_block_out_to> const { 193.40.45.60, 193.40.45.61 }
# Kontori aadressid millele lubatakse ligipääs väljast
table <kontor_pass_out_to> const { 193.40.45.78 }
# Serverite võrk lubatakse kontorivõrgule ligi
table <kontor_pass_out_from> const { 193.40.45.33/26 }
# Nat reegel kontori privaataadressidele
nat on $ext_if inet from 192.168.0.0/16 to any -> ($kontor_if:0)
# IPv6 link-local on lubatud
pass quick to fe80::/10
pass quick from fe80::/10
#* Sisenev võrk
#
pass on $ext_if all
# Nende masinatega internetist me ei suhtle
block in log quick on $ext_if from <global_block_in_from> label "global_block_in"
# Keelame mõnedele kirjade saatmise
block in log quick on $ext_if proto tcp from <smtp_block_in_from> to any port 25 label "smtp_block_in"
# Paarile serverile piirame ligipääsu
block in log quick on $ext_if to <server_block_out_to> label "server_block_out"
# Ruuterile piirame ligipääsu väljast
block in log quick on $ext_if proto { tcp, udp } to <my_addresses> label "global_block_in"
#* Serverivõrk
#
# - seest välja ühendused oleksid kõik lahti
# - väljast sisse kõik ühendused lahti va:
pass on $server_if all keep state
#* Kontorivõrk
#
# - Seest välja ühendused kõik lahti
# - väljast sisse liikuvad kõik ühendused kinni va:
# - serverivõrguga liiklus
block log on $kontor_if all label "blocked_kontor"
pass in on $kontor_if all keep state
pass out on $kontor_if from $kontor_if to $kontor_if:network
pass out on $kontor_if from <kontor_pass_out_from> keep state label "kontor_pass_out"
pass out on $kontor_if to <kontor_pass_out_to> keep state label "kontor_pass_out"
#* Majutatud võrk
#
# - seest välja kõik lahti
# - väljast sisse kõik lahti:
pass on $majutatud_if all keep state
# -- END --
Blokitud IP-de tabelisse saab lisada aadressi või aadressivahemiku käsuga
# pfctl -t global_block_in_from -T add 218.70.0.0/16 # pfctl -t smtp_block_in_from -T add 218.70.0.0/16
Tabelis olevaid aadresse saab vaadata käsuga
# pfctl -t global_block_in_from -T show # pfctl -t smtp_block_in_from -T show
Ja tabelist saab kustutada ridu käsuga
# pfctl -t global_block_in_from -T delete 218.70.0.0/16 # pfctl -t smtp_block_in_from -T delete 218.70.0.0/16
RC.CONF faili seadistus
hostname="tulemyyr" sshd_enable="YES" gateway_enable="YES" defaultrouter="193.40.45.1" ifconfig_igb1="inet 193.40.45.2 netmask 255.255.255.224" # nn serverid ifconfig_igb0="inet 193.40.45.33 netmask 255.255.255.224" # nn kontor ifconfig_nfe1="inet 193.40.45.75 netmask 255.255.255.224" ifconfig_nfe1_alias0="192.168.1.254 netmask 255.255.255.0" ntpd_enable="YES" pf_enable="YES" pflog_enable="YES" pf_conf="/etc/pf.conf" Vaikimisi on IPv6 routing keelatud seepärast tuleb see eraldi veel lubada, samuti rtadvd deemon. ipv6_enable="YES" ipv6_gateway_enable="YES"
Tähelepanekuid ehitamisel
Kui serveril on IPMI liides tuleb see paigaldada võrku mis asub väljaspool tulemüüri haardeulatust.
Ajutise failoveri saavutamiseks piisab kui kõrval hoida konfitud ja töövalmis sarnane server. Kleepida serverile kaabelduse skeem st mis kaabel kuhu ümber tõsta. Igaks-juhuks teisele kettale kloonitud esimese ketta opsüsteem.