firewall-cmd 如何做port-mapping

1. 特定port轉到內部某ip的port

firewall-cmd --add-rich-rule="rule family=ipv4  forward-port port=8080 protocol=tcp to-port=8080 to-addr=192.168.1.1" --zone=public --permanent

2. 特定ip,特定port轉道內部某ip的port

firewall-cmd --add-rich-rule="rule family=ipv4 source address=x.x.x.x forward-port port=8080 protocol=tcp to-port=8080 to-addr=192.168.1.1" --zone=public --permanent

 

CentOS 6 網卡卡號異動處理方式

咖啡偶有台vm,裝的是CentOS, 因為搬移的關係, 網卡卡號與之前的不一樣,開機的時候發現網卡起不來(慘,come some of music “我們不一樣”) XD

於是問了google, 要改兩個地方:

1. 修改成正確的卡號
XXX : 網卡代號,通常是eth0 ,eth1

/etc/sysconfig/network-scripts/ifcfg-ethXXX

2. 修改

改成與步驟1一樣的卡號

/etc/udev/rules.d/70-persistent-net.rules

 

改完重開機就行了.

ps. 可下指令取得新網卡卡號

dmesg|grep eth

 

關於fail2ban注意事項,jail.conf

安裝fail2ban很安全也很危險, 因為有時候對方無法連線, 是fail2ban造成的, 而我們又會主觀認定fail2ban是對的.

因此要知道fail2ban如何清除關在監獄裡面的ip, 而且還要加上白名單ignore list

以CentOS為例子

1. 清除 jail ip

systemctl stop fail2ban

systemctl restart firewalld

2. 加上ignore ip

vi /etc/fail2ban/jail.local

找出

ignoreip = 127.0.0.1/8,x.x.x.x/32

3.重啟 fail2ban

systemctl start fail2ban

 

 

Linux 如何如實轉寄郵件而不會顯示是誰轉寄的

Linux 如何如實轉寄郵件而不會顯示是誰轉寄的, 這有點繞舌 , 意思就是網管攔截到一封疑似廣告信

但是後來判定不是, 需要重新還給使用者, 這時候用網管的角色轉寄, 寄件者將會出現網管的名字, 而不是原本的寄件者.

因此, 需要原封不動的轉寄過去,

請使用這個指令

 
 swaks  -f <網管帳號> -t <收件者帳號>  -d <郵件檔案>

-f 網管帳號 的選項可以不用,這只是藏在檔頭裡面方便以後查驗

安裝方式:

CentOS: yum install swaks
Ubuntu:  apt install swaks

Postfix 擋廣告的限制設定 sender, client, and recipient restrictions

Postfix 擋廣告的限制設定, 重要的有三個,簡稱三兄弟:

老大: smtpd_sender_restrictions 

這部份著墨不多, 基本上就是檢查寄件者格式是否正確, 是第一階段限制

老2: smtpd_client_restrictions 

這個設定重點在於限制主機名稱 或是 ip 

例如:

check_client_access hash:/etc/postfix/sender_mail_hostname_check

代表你必須正確地, 將要限制的郵件主機名稱,或是ip (不能使用萬用字元), 寫入sender_mail_hostname_check 這個檔案裡面, 才能限制該主機.

接著再加上這個很威猛的設定 reject_unknown_client_hostname

利用dns方式, 來驗證主機名稱是否相符正, 否則就拒絕, 舉例來說:

若該郵件主機 ip 是1.2.3.4 , 且dns查詢結果是 xxx.com , 可是實際上 xxx.com 正向查詢不是 1.2.3.4 , 就會被擋下來!

ps. 1.2.3.4 可以宣稱是yyy.com 這個網域的郵件主機, 跟實際dns是xxx.com可以不一樣的.

光是這一招就能解決大部分廣告信, 因為廣告主機都會胡亂宣稱.

當然也造成很多誤判狀況, 因為有些IT人員並不會很認真處理主機ip的反解.

** reject_unknown_client_hostname 可以改用 reject_unknown_reverse_client_hostname 來替代, 只要反查不要查不出主機名稱 , 就不會擋下來, 比較寬鬆.

老3. smtpd_recipient_restrictions 

這部份就很多設定了, 重點在於

check_sender_access hash:/etc/postfix/sender_email_check

sender_email_check 紀錄了寄件者郵箱或是網域是否可以限制

與老2不同的是, 這裡可以使用萬用字元, 因為阻擋的不是ip , 而是email

請點此參考編號 10023 範例

postfix 檢查檔頭header_checks

這也是postfix老掉牙的阻擋廣告信方式, 偶爾可以用一下,

大家都知道postfix 可以檢查檔頭header_checks, 然後阻擋

在 /etc/postfix/main.cf 設定一下即可啟用功能

header_checks = regexp:/etc/postfix/header_checks

接下來修改規則檔案 /etc/postfix/header_checks, 設定要阻擋的字串,

這裡比較有趣的是, 如何定位字串? 總共有兩個地方要注意的:

1.是”.”與”*” 後面加上要定位的字串 , 再加上”/” , 代表搜尋多個相同的字串,

例如 /^Subject:.*AV/ DISCARD

找出所有標題是AV的字串

2.中文需要考慮UTF-8, GBK, BIG5,然後進行Base64編碼

例如要定位”警告”這個字串, 有可能是utf8 , gbk, big5 三個

/^Subject:.*6K2m5ZGK/ DISCARD
/^Subject:.*vq+45g==/ DISCARD
/^Subject:.*xLWnaQ==/ DISCARD

編碼服務可參考
https://www.base64encode.org

 

1 ... 10 11 12 13 14