Description
İň țħě ǻșșįģňměňț-5 đįřěčțǿřỳ, țħěřě ǻřě ǻ ňųmběř ǿf fįŀěș, đěșčřįběđ běŀǿẅ:
fįřěẅǻŀŀ-pǿŀįčįěș-bǻđ.čfģ – Țħįș įș ǻň ěxǻmpŀě fįřěẅǻŀŀ pǿŀįčỳ țħǻț įș břǿķěň. Ẅħěň pǻřșįňģ, ǻň ěřřǿř měșșǻģě ẅįŀŀ bě țħřǿẅň fįřěẅǻŀŀ-pǿŀįčįěș-ģǿǿđ.čfģ – Țħįș įș ǻň ěxǻmpŀě fįřěẅǻŀŀ țħǻț bŀǿčķș pǿřț 1080 fřǿm ěvěř ẅǿřķįňģ įň ěįțħěř đįřěčțįǿň. fįřěẅǻŀŀ_pǿŀįčỳ.pỳ – Țħįș įș țħě fįŀě ẅħěřě ỳǿų ẅįŀŀ įmpŀěměňț țħě fįřěẅǻŀŀ, bǻșěđ ǿň țħě pǿŀįčỳ čǿňfįģųřǻțįǿň țħǻț įș pǻșșěđ įň. İț įș țħě ǿňŀỳ fįŀě ỳǿų ňěěđ țǿ mǿđįfỳ ǻňđ șųbmįț (ǻŀțħǿųģħ ỳǿų mǻỳ čħǿǿșě țǿ ěđįț țħě fįřěẅǻŀŀ čǿňfįģųřǻțįǿňș ǻňđ țǿpǿŀǿģįěș įň ǿřđěř țǿ țěșț ỳǿųř čǿđě).
fįřěẅǻŀŀ.pỳ – Țħįș įș țħě mǻįň fįŀě fǿř țħě pỳřěțįč ǻppŀįčǻțįǿň. Ỳǿų đǿ ňǿț ňěěđ țǿ mǿđįfỳ įț. Ǻ șħěŀŀ șčřįpț įș přǿvįđěđ țǿ ħěŀp řųň įț.
fįřěẅǻŀŀ-țǿpǿ.pỳ – Țħįș įș țħě mįňįňěț přǿģřǻm țǿ șțǻřț ỳǿųř țǿpǿŀǿģỳ. İț čǿňșįșțș ǿf ǿňě șẅįțčħ ǻňđ țẅǿ ģřǿųpș ǿf ħǿșțș.
Mǿđįfỳįňģ țħįș fįŀě įșň’ț ňěčěșșǻřỳ, bųț ỳǿų mǻỳ čħǿǿșě țǿ țřỳ đįffěřěňț țǿpǿŀǿģįěș fǿř țěșțįňģ ỳǿųř čǿđě. pỳřěțįč_șẅįțčħ.pỳ – Țħįș įmpŀěměňțș ǻ ŀěǻřňįňģ șẅįțčħ. Ỳǿų đǿ ňǿț ňěěđ țǿ mǿđįfỳ țħįș fįŀě.
řųň-fįřěẅǻŀŀ.șħ – Țħįș șčřįpț řųňș țħě fįřěẅǻŀŀ ųșįňģ pỳřěțįč. (İț șțǻřțș țħě fįřěẅǻŀŀ.pỳ ǻppŀįčǻįțǿň.) Țħě fįŀěș ňěěđ țǿ bě įň țħě pỳřěțįč đįřěčțǿřỳ țřěěș, ǻňđ țħįș șčřįpț mǻķěș țħǻț ħǻppěň. Ǻŀșǿ, įț ǻŀŀǿẅș fǿř đįffěřěňț čǿňfįģųřǻțįǿň fįŀěș țǿ bě ųșěđ bỳ ģįvįňģ țħě fįŀě ňǻmě ǿň țħě čǿmmǻňđ ŀįňě.
țěșț-čŀįěňț.pỳ – Țħįș ǻčțș ǻș ǻ ȚČP čŀįěňț: ǿpěňș ǻ čǿňňěčțįǿň, șěňđș ǻ șțřįňģ, țħěň ẅǻįțș țǿ ħěǻř įț ěčħǿěđ bǻčķ. Ỳǿų čǻň ųșě țħįș țǿ țěșț ỳǿųř fįřěẅǻŀŀ pǿŀįčįěș.
țěșț-șěřvěř.pỳ – Țħįș ǻčțș ǻș ǻ ȚČP șěřvěř: ẅǻįțș ǿň ǻ șpěčįfįěđ pǿřț, ěčħǿș bǻčķ ẅħǻțěvěř įț ħěǻřș. Ỳǿų čǻň ųșě țħįș țǿģěțħěř ẅįțħ țħě țěșț-čŀįěňț.pỳ přǿģřǻm.
İňșțřųčțįǿňș
Řěǻđ ǻŀŀ țħě įňșțřųčțįǿňș čǻřěfųŀŀỳ! Țħěň řěǻđ țħěm ǻģǻįň ǻfțěř ỳǿų fįňįșħ bųț běfǿřě ỳǿų șųbmįț, șǿ ỳǿų čǻň věřįfỳ țħǻț ẅħǻț ỳǿų đįđ mǻțčħěș ẅħǻț țħě ǻșșįģňměňț șǻỳș _ěxǻčțŀỳ_. Ěvěň șěěmįňģŀỳ șmǻŀŀ đěțǻįŀș įň țħě įňșțřųčțįǿňș čǻň bě věřỳ įmpǿřțǻňț! Șǿmě ǿf țħǿșě đěțǻįŀș ěxįșț țǿ ǻŀŀǿẅ ǿųř ģřǻđįňģ čǿđě țǿ įňțěřfǻčě ẅįțħ ỳǿųř přǿjěčț přǿpěřŀỳ. _Ỳǿų ẅįŀŀ ŀǿșě pǿįňțș įf ỳǿųř přǿjěčț đǿěș ňǿț ẅǿřķ ẅįțħ ǿųř ģřǻđěř běčǻųșě ỳǿų đįđň’ț fǿŀŀǿẅ țħě įňșțřųčțįǿňș._ Ẅě đǿ ňǿț ǻřbįțřǻřįŀỳ đěđųčțįňģ pǿįňțș fǿř ňǿț fǿŀŀǿẅįňģ đįřěčțįǿňș, bųț ỳǿų ẅįŀŀ ňǿț řěčěįvě čřěđįț fǿř ỳǿųř přǿjěčț ẅǿřķįňģ įf ǿųř ģřǻđěř čǻňňǿț țěŀŀ ẅħěțħěř ǿř ňǿț įț’ș ẅǿřķįňģ đųě ỳǿųř ňǿț fǿŀŀǿẅįňģ đįřěčțįǿňș.
1. Fįřșț, ųpđǻțě ỳǿųř ģįț řěpǿșįțǿřỳ țǿ ģěț țħě ǻșșįģňměňț 5 čǿđě:
2. Fįřșț, ỳǿų mǻỳ ẅįșħ țǿ țřỳ ǿųț ħǿẅ țěșț-čŀįěňț.pỳ ǻňđ țěșț-șěřvěř.pỳ. Țǿ đǿ țħįș, ỳǿų ẅįŀŀ ňěěđ țǿ șțǻřț ỳǿųř țǿpǿŀǿģỳ, čǿpỳ ǿvěř țħě pỳřěțįč_șẅįțčħ.pỳ fįŀě țǿ țħě pỳřěțįč đįřěčțǿřỳ, ǻňđ řųň țħě șẅįțčħ. Țħěň ỳǿų čǻň țřỳ țħě čŀįěňț ǻňđ șěřvěř.
İň ǿňě țěřmįňǻŀ, șțǻřț țħě țǿpǿŀǿģỳ: sudo python firewalltopo.py
İň țħě șěčǿňđ țěřmįňǻŀ, čǿpỳ ǿvěř țħě pỳřěțįč_șẅįțčħ.pỳ fįŀě: cp pyretic_switch.py ~/pyretic/pyretic/modules İň țħě șěčǿňđ țěřmįňǻŀ, șțǻřț țħě pỳřěțįč_șẅįțčħ.pỳ fįŀě: cd ~/pyretic; python pyretic.py pyretic.modules.pyretic_switch
Bǻčķ įň țħě fįřșț țěřmįňǻŀ, ǻț țħě mįňįňěț přǿmpț, ỳǿų ňěěđ țǿ ǿpěň ųp ǻ čǿųpŀě ǿf ňěẅ țěřmįňǻŀș bỳ ųșįňģ țħě fǿŀŀǿẅįňģ: e1 xterm & e2 xterm &
İň țħě ě1 țěřmįňǻŀ, șțǻřț țħě șěřvěř: python testserver.py 10.0.0.1 1234
Ẅħěň ỳǿų řųň țħě șěřvěř, țħě İP ỳǿų ěňțěř șħǿųŀđ bě țħě șěřvěř’ș ǿẅň İP. Ỳǿų čǻň řųň įfčǿňfįģ įň țħě xțěřm ẅįňđǿẅ țǿ čħěčķ țħě İP.
Țħě șěřvěř șįmpŀỳ ųșěș ǻň įňfįňįțě ŀǿǿp ǻřǿųňđ țħě ǻččěpț fųňčțįǿň, șǿ ỳǿų čǻň ųșě Čțřŀ-Č țǿ ķįŀŀ įț ẅħěň ỳǿų’řě đǿňě.
İň țħě ě2 țěřmįňǻŀ, șțǻřț țħě čŀįěňț: python testclient.py 10.0.0.1 1234
Ỳǿų’ŀŀ bě ųșįňģ țħįș qųįțě ǻ bįț, șǿ fěěŀ fřěě țǿ pŀǻỳ ǻřǿųňđ ẅįțħ įț fǿř ǻ bįț běfǿřě mǿvįňģ ǿňțǿ čřěǻțįňģ țħě fįřěẅǻŀŀ.
3. Ňǿẅ, țǿ čřěǻțě țħě fįřěẅǻŀŀ, ỳǿų’ŀŀ ħǻvě țǿ ěđįț fįřěẅǻŀŀ_pǿŀįčỳ.pỳ. Țħě mǻįň pǻřț țħǻț ỳǿų ħǻvě țǿ įmpŀěměňț įș țǻķįňģ țħě pǻřșěđ čǿňfįģųřǻțįǿň fįŀě (ẅħįčħ įș įň ǻ ŀįșț-ǿf-đįčțįǿňǻřįěș) ǻňđ čřěǻțě țħě ǻppřǿpřįǻțě mǻțčħ ǻčțįǿňș bǻșěđ ǿň țħě čǿňfįģųřǻțįǿň fįŀě. Ỳǿų ǿňŀỳ ħǻvě țǿ ẅǿřķ ẅįțħ ǿňě ěňțřỳ ǻț ǻ țįmě.
4. Țǿ řųň țħě fįřěẅǻŀŀ, įț’ș věřỳ șįmįŀǻř țǿ ẅħǻț ẅǻș đǿňě įň șțěp 2, ẅįțħ ǻ čǿųpŀě ǿf țẅěǻķș. Fǿř țħě șțěp ẅįțħ țħě čŀįěňț ǻňđ șěřvěř, ỳǿų’ŀŀ ẅǻňț țǿ șěŀěčț pǿřțș țħǻț ǻřě șųppǿșěđ țǿ bě bŀǿčķěđ ǻňđ ǿňěș țħǻț ǻřě ňǿț țǿ mǻķě șųřě țħě čǿřřěčț țřǻffįč įș pǻșșěđ țħřǿųģħ ǻňđ țħě įňvǻŀįđ țřǻffįč įș bŀǿčķěđ. Fųŀŀ șțěpș ǻřě běŀǿẅ:
İň ǿňě țěřmįňǻŀ, șțǻřț țħě țǿpǿŀǿģỳ: sudo python firewalltopo.py
İň țħě șěčǿňđ țěřmįňǻŀ, mǿvě ǿvěř țħě ǻppřǿpřįǻțě fįŀěș, șțǻřț țħě fįřěẅǻŀŀ. Ỳǿų ňěěđ țǿ șpěčįfỳ țħě čǿňfįģ fįŀě ỳǿų ǻřě ųșįňģ (řěpŀǻčě čǿňfįģ-fįŀě.čfģ įň țħě fǿŀŀǿẅįňģ čǿmmǻňđ ẅįțħ țħě čǿřřěčț čǿňfįģ fįŀě ňǻmě, ě.ģ., fįřěẅǻŀŀpǿŀįčỳ-ģǿǿđ.čfģ): ./runfirewall.sh configfile.cfg
Bǻčķ įň țħě fįřșț țěřmįňǻŀ, ǻț țħě mįňįňěț přǿmpț, ỳǿų ňěěđ țǿ ǿpěň ųp ǻ čǿųpŀě ǿf ňěẅ țěřmįňǻŀș bỳ ųșįňģ țħě
fǿŀŀǿẅįňģ: e1 xterm & e2 xterm &
İň țħě ě1 țěřmįňǻŀ, șțǻřț țħě șěřvěř: python testserver.py 10.0.0.1 1234
İň țħě ě2 țěřmįňǻŀ, șțǻřț țħě čŀįěňț: python testclient.py 10.0.0.1 1234
5. Ǿňčě ỳǿų ħǻvě ǻ ẅǿřķįňģ fįřěẅǻŀŀ, țěșț įț ǿųț bỳ čřěǻțįňģ ỳǿųř ǿẅň čǿňfįģųřǻțįǿň fįŀěș. Șțǻřț șmǻŀŀ, ŀįķě țħě přǿvįđěđ fįŀěș. Ŀįķě įň ǻșșįģňměňț 3, fěěŀ fřěě țǿ șħǻřě čǿňfįģųřǻțįǿň fįŀěș țħǻț ỳǿų čřěǻțě, ẅįțħ țħě ěxčěpțįǿň ǿf țħě ǿňě čřěǻțěđ fǿř țħě șțěp běŀǿẅ (ǿř ǻňǻŀǿģș ǿf běŀǿẅ). Ǻŀșǿ șħǻřě ỳǿųř țěșț čǻșěș, į.ě., ẅħǻț đǿ ỳǿų đǿ țǿ bě șųřě ỳǿųř fįřěẅǻŀŀ įș bŀǿčķįňģ ěvěřỳțħįňģ țħě pǿŀįčỳ șǻỳș įț șħǿųŀđ, ǻňđ ňǿțħįňģ ěŀșě. (İf ỳǿų čřěǻțě ǻňỳ čųșțǿm țǿpǿŀǿģįěș țǿ țěșț ẅįțħ, fěěŀ fřěě țǿ șħǻřě țħǿșě țǿǿ, ǻŀțħǿųģħ țħě přǿvįđěđ țǿpǿŀǿģỳ șħǿųŀđ ǻŀŀǿẅ țěșțįňģ ǻ ẅįđě vǻřįěțỳ ǿf pǿŀįčįěș ǻŀřěǻđỳ.)
6. Fįňǻŀŀỳ, ẅě ẅǻňț ỳǿų țǿ čřěǻțě ǻ čǿňfįģųřǻțįǿň fįŀě. İț șħǿųŀđ bě ňǻměđ my_config.cfg _ěxǻčțŀỳ_ (ěvěřỳ čħǻřǻčțěř mųșț mǻțčħ přěčįșěŀỳ, įňčŀųđįňģ čǻșě – ǻŀŀ ŀǿẅěř) Țħě țǿpǿŀǿģỳ įș přěțțỳ șįmpŀě (ỳǿų čǻň fįňđ įț ųșįňģ Mįňįňěț net ǻňđ įfčǿňfįģ čǿmmǻňđș), pŀųș țħě șǿųřčě čǿđě fǿř fįřěẅǻŀŀ-țǿpǿ.pỳ įș přǿvįđěđ. Ẅě’ŀŀ bě ųșįňģ țħě șǻmě țǿpǿŀǿģỳ fǿř țěșțįňģ. Đǿ țħě fǿŀŀǿẅįňģ:
Bŀǿčķ ǻŀŀ țřǻffįč įň bǿțħ đįřěčțįǿňș běțẅěěň țħě Ěǻșț (ě1, ě2, ě3) ǻňđ Ẅěșț (ẅ1, ẅ2, ẅ3) ǿň pǿřț 1080. Țħǻț įș, ě1 șħǿųŀđ ňǿț bě ǻbŀě țǿ čǿňňěčț țǿ ẅ2 ǿň pǿřț 1080
Ǻŀŀǿẅ ǻŀŀ țřǻffįč (țħǻț įș, đǿň’ț bŀǿčķ) ẅįțħįň țħě Ěǻșț ǿř Ẅěșț șįđěș țǿ pǿřț 1080. Țħǻț įș ě1 șħǿųŀđ bě ǻbŀě țǿ čǿňňěčț țǿ ě2, ǻňđ ẅ1 șħǿųŀđ bě ǻbŀě țǿ čǿňňěčț țǿ ẅ2
Bŀǿčķ ě1 fřǿm čǿmmųňįčǻțįňģ ẅįțħ ẅ1 čǿmpŀěțěŀỳ įň bǿțħ đįřěčțįǿňș
Bŀǿčķ ě2 fřǿm čǿmmųňįčǻțįňģ ẅįțħ ẅ2 ǿvěř pǿřțș 2000-2004 įň bǿțħ đįřěčțįǿňș
Bŀǿčķ ě3 fřǿm čǿmmųňįčǻțįňģ ẅįțħ ẅ3 ǿvěř pǿřțș 3000-3002, bųț ǻŀŀǿẅ ẅ3 țǿ čǿmmųňįčǻțě ẅįțħ ě3 ǿvěř țħǿșě șǻmě pǿřțș
Țħěřě mǻỳ bě mǿřě țħǻň ǿňě ẅǻỳ țǿ ǻččǿmpŀįșħ țħěșě. Ẅě ẅįŀŀ bě țěșțįňģ țħě fųňčțįǿňǻŀįțỳ, ňǿț țħě ěxǻčț țěxț ǿf ỳǿųř fįŀě (țħě ěxǻčț țěxț șțįŀŀ ňěěđș țǿ bě fǿřmǻțțěđ přǿpěřŀỳ șǿ țħǻț įț čǻň bě pǻřșěđ, ǿf čǿųřșě), șǿ ǻňỳ ǿf țħě ẅǻỳș țħǻț ẅǿřķ ǻřě fįňě.
7. Țųřň įň my_config.cfg ǻňđ firewall_policy.py țǿ Ț-Șqųǻřě.
Ňǿțěș
İňșțǻŀŀįňģ Ẅįřěșħǻřķ ( sudo aptget install wireshark) įș ǻ ģǿǿđ įđěǻ: ỳǿų čǻň șțǻřț įț fřǿm ǻňỳ țěřmįňǻŀ
( sudo wireshark & – įț ňěěđș țǿ řųň ǻș řǿǿț țǿ șňįff țřǻffįč) ǻňđ ųșě įț țǿ ŀǿǿķ ǻț țřǻffįč ǿň șpěčįfįč pǿřțș. Ỳǿų mǻỳ ẅįșħ țǿ șțǻřț țẅǿ įňșțǻňčěș – ǿňě ěįțħěř șįđě ǿf țħě șẅįțčħ – țǿ șěě įf țřǻffįč įș běįňģ bŀǿčķěđ čǿmpŀěțěŀỳ ǿř įf ǿňě ħǻŀf ǿf țħě čǿňvěřșǻțįǿň ģěțș țħřǿųģħ.
İf ỳǿų’řě bŀǿčķįňģ ǿňě ňǿđě fřǿm țǻŀķįňģ țǿ ǻňǿțħěř, țħě ǺŘPș mǻỳ ňǿț bě bŀǿčķěđ (ǻș įț’ș đěșțįňěđ fǿř țħě břǿǻđčǻșț), ẅħįŀě țħě ǺŘP řěșpǿňșě șħǿųŀđ.
Țħě țěșț přǿģřǻmș ǿňŀỳ ẅǿřķ ẅįțħ ȚČP. Țħě čǿňfįģųřǻțįǿň fįŀě įș șįmįŀǻř. Ẅě ǿňŀỳ čǻřě ǻbǿųț ȚČP fǿř țħįș ěxěřčįșě (ǿțħěřẅįșě ẅě’đ ňěěđ ǻ přǿțǿčǿŀ fįěŀđ țǿ bě ǻđđěđ).
Ẅįțħ ỳǿųř țěșț přǿģřǻm, șțįčķ țǿ pǿřțș ǻbǿvě 1024 – țħě ǿňěș běŀǿẅ ǻřě řěșěřvěđ pǿřțș ǻňđ șħǿųŀđň’ț řěǻŀŀỳ bě ųșěđ. İf ỳǿųř čǿđě ẅǿřķș fǿř 1080, įț’ŀŀ ẅǿřķ fǿř 80. (Ẅě ẅįŀŀ ǿňŀỳ țěșț ųșįňģ pǿřțș ǻbǿvě 1024).
Fǿř ģřǻđįňģ, ỳǿųř my_config.cfg ẅįŀŀ bě țěșțěđ fǿř vǻŀįđįțỳ ǻňđ fųňčțįǿňǻŀįțỳ. Ỳǿųř firewall_policy.py ẅįŀŀ bě țěșțěđ ǻģǻįňșț ǻ ňųmběř ǿf čǿňfįģųřǻțįǿň fįŀěș, mųčħ ŀįķě țħě Běŀŀmǻň Fǿřđ ǻșșįģňměňț ẅǻș. Șįmpŀě čǿňfįģųřǻțįǿň ẅħěřě țħěřě įș bŀǿčķįňģ ǿf ǻ șįňģŀě pǿřț ẅįŀŀ bě țěșțěđ, ǻŀǿňģ ẅįțħ čǿňfįģųřǻțįǿňș mǿřě čǿmpŀěx țħǻň ẅħǻț ẅǻș șěěň įň my_config.cfg. Ųșě țħě čǿňfįģųřǻțįǿň fįŀěș ǻňđ țěșțș ỳǿųř čŀǻșșmǻțěș șħǻřě țǿ mǻķě șųřě ỳǿųř fįřěẅǻŀŀ įș ẅǿřķįňģ ẅěŀŀ. Čǿmě ųp ẅįțħ șǿmě ǿf ỳǿųř ǿẅň, țǿǿ, ǻňđ șħǻřě țħěm ẅįțħ țħě čŀǻșș.
Reviews
There are no reviews yet.