Re: [問題] ipfw防火牆設定的問題

看板FreeBSD作者時間17年前 (2008/07/29 02:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/6 (看更多)
※ 引述《pondaniel.bbs@ptt.cc (NICE~~彭彭!!)》之銘言: > 已爬文~~但還是沒辦法解決~~所以PO文請教前輩~ > 就算我讓全部通行,可是防火牆還是會把全部擋下來 > 但由內部往外連卻OK > 我在核心設定檔加入以下內容,為了要有ipfw和NAT > ========================= > options IPFIREWALL > options IPDIVERT > options IPFIREWALL_DEFAULT_TO_ACCEPT > options IPFIREWALL_VERBOSE > options IPFIREWALL_VERBOSE_LIMIT=10 > options IPFIREWALL_FORWARD > options DUMMYNET > 編譯完核心並沒有出現錯誤~~ ^^^^^^^^^^^^^^^^^^^^^^^^ 編完之後有重開機嗎? > ========================== > /etc/rc.conf的設定檔內容如下 > #===對外網卡=== > ifconfig_rl0="inet aa.bb.cc.dd netmask 255.255.255.0" > #===對內網卡=== > ifconfig_rl1="inet 192.168.1.254 netmask 255.255.255.0" > # 宣告本主機可做為gateway > gateway_enable="YES" > # 設定 NAT 所使用的對外網路卡 > natd_enable="YES" > natd_interface="rl0" > natd_flags="-config /etc/natd.conf" 那 /etc/natd.conf 內容是? 妳沒貼。 通常設定 natd 規則有兩種作法, 簡單的一行就直接在 /etc/rc.conf 加上類似下面這樣 natd_flags="redirect_port tcp 192.168.0.2:6667 6667" 複雜點就寫 natd_flags="-f /etc/natd.conf" 然後在 /etc/natd.conf 寫類似下面這樣 redirect_port tcp 192.168.0.1:22 22 redirect_port tcp 192.168.0.1:23 23 redirect_port tcp 192.168.0.1:24 24 > ============================ > /etc/rc.firewall的設定檔如下 > #!/bin/sh > #delete all rule > /sbin/ipfw -f flush > #設定server本機可以跟server本機通訊 > /sbin/ipfw add pass all from 127.0.0.1 to 127.0.0.1 > #設定nat可以任何通行 > /sbin/ipfw add divert natd all from any to any via rl0 > #讓本機可以通行到任何地方 > /sbin/ipfw add pass all from 127.0.0.1 to any > #如果有設dhcp一定要設這行 > /sbin/ipfw add pass all from 192.168.1.255 to any > #讓內部ip全部可以連上本機 > /sbin/ipfw add pass all from 192.168.1.1/24 to 192.168.1.254 > #開放 dns給使用者 > /sbin/ipfw add pass all from 192.168.1.1/24 to 140.115.1.31 > /sbin/ipfw add pass tcp from any to me 22 > /sbin/ipfw add allow tcp from any to me 23 > #開放所有通行給該ip > /sbin/ipfw add pass all from 192.168.1.1 to any > #剩下的通通放行 > /sbin/ipfw add pass all from any to any > ================================== 妳可以打 ipfw list 看一下現在跑的 ipfw 規則是甚麼 然後在預設的 /etc/rc.firewall 原始檔(/usr/share/examples/etc/rc.firewall) 可以看到儘量是用 ${fwcmd} 變數來代,這樣會比較有彈性, 不然妳在 /etc/rc.conf 設的 firewall_quiet="YES" 等於白設 另外 ipfw 規則使用上,習慣是會加上第幾條規則,以便辨別跟日後維護。 看完這篇感覺你那些設定檔應該是從別人那邊抄來的, 只是來源不明(妳沒說),寫法也有漏 最好附上妳參考來源,比較好讓別人判別你是哪邊有所出入, 或者根本對方那邊就『科學』以訛傳訛了。 > 如果改完/etc/rc.conf,不想重開機來更新 > 是不是下指令/etc/netstart就好了?? > 可是我試了好像沒用?? 若只是改完 /etc/rc.firewall 規則後要重啟才會生效,就打 sh /etc/rc.firewall 或者要在 console 手動一行一行指令改也可以 若要重啟 natd(8) 則 /etc/rc.d/natd restart 以妳這情況若改完之後,應該是下 /etc/netstart 再 /etc/rc.d/ipfw restart 即可 -- 靜中見真境,淡中識本然 -- ※ Origin: SayYA 資訊站 <bbs.sayya.org> ◆ From: 118-166-51-73.dynamic.hinet.net
文章代碼(AID): #18ZWbZ00 (FreeBSD)
文章代碼(AID): #18ZWbZ00 (FreeBSD)