請問一下各位IT大大:目前公司的連外使用ADSL 8M的寬頻,而ADSL對內先透過Cisco pix501(內部ip:192.168.40.1)這台FIREWALL,然後再連接到3com的switch上面,因這台設備要另作他用,如果我要用linux shore firewall來替代這台機器行得通嗎?目前我瞭解到的大概就是必須使用兩張網路卡,一張網路卡對外設定ADSL,一張對內,公司架構本來就有DHCP伺服器了,分配出來的ip為192.168.40.x,閘道為192.168.40.2(3com swtich),然後route表上面有一組設定為Destination 0.0.0.0 Mash 0.0.0.0 Next Hop 192.168.40.1 ,我想知道LINUX 兩張網卡應如何設置?機器上本來就有一張網卡IP為192.168.40.160,現在如果我裝上第二張網卡設定好ADSL,第一張網卡我需要改什麼設定嗎?
我的想法是把3com Switch上面本來0.0.0.0 會導向192.168.40.1改成192.168.40.160,然後linux對內的ip(160)就不需要動了,接下來就是shorewall設定的問題了!另外想問觀念問題,網卡1為adsl連網際網路,網卡2為內部ip:192.168.40.160:請問一下網卡2如何處理其它電腦要求連線到網際網路的封包,linux這台主機怎麼知道來自x.x.x.x的電腦要求連線到x.x.x.x的位置必須透過網卡1出去呢?
maxlove0319提到:
如果我要用linux shore firewall來替代這台機器行得通嗎?
當然可以啊, 我自己公司就是這樣用.....
您先把那台 Linux 兩片網卡都設定好, 對外的必須能連通 Internet, 對內的要能連通 192.168.40.x, 這邊跟一般的 Linux 設定沒有甚麼不同, 剩下的事就都交給 Shorewall 就好了.
Shorewall 要設定的檔案有幾個:
/etc/shorewall/interfaces
/etc/shorewall/rules
/etc/shorewall/zones
/etc/shorewall/masq
設定好之後, 您可以先用 shorewall check 指令來檢查語法是否正確.
記得設定好了之後, 還要把 /etc/shorewall/shorewall.conf 裡面的 STARTUP_ENABLED 改成 Yes 才會動.
然後 shorewall start 就可以啟動.
shorewall stop 可以停止防火牆的功能, 回到正常的 Linux.
maxlove0319提到:
請問一下網卡2如何處理其它電腦要求連線到網際網路的封包,linux這台主機怎麼知道來自x.x.x.x的電腦要求連線到x.x.x.x的位置必須透過網卡1出去呢?
這些都讓 shorewall 來傷腦筋就好了, 關鍵就在上面的 masq 檔案裡. 小弟的 masq 內容是這樣:
eth0 eth1
代表, 從 eth1 來的流量, 要走 eth0 的 NAT 出去.
有任何問題, 歡迎再提問.