原因
今天在學習UDP組播通訊是,兩臺主機之間不能順利通訊。linux
A機 - Ubuntu12.04,B機 - Centos7.0,相互之間能夠ping通。安全
A做爲發送端,B做爲接收端,B接收不到數據。網絡
B做爲發送端,A做爲接收端,A能夠接收數據。dom
緣由:B機的防火牆的問題,關閉了防火牆以後,通訊正常。tcp
CentOS 7.0默認使用的是firewall做爲防火牆,這裏改成iptables防火牆。ide
firewall
firewall可以容許哪些服務可用,那些端口可用.... 屬於更高一層的防火牆。
firewall的底層是使用iptables進行數據過濾,創建在iptables之上。
firewall是動態防火牆,使用了D-BUS方式,修改配置不會破壞已有的數據連接。學習
關閉firewall
systemctl stop firewalld.service #中止firewall
systemctl disable firewalld.service #禁止firewall開機啓動
iptables
iptables用於過濾數據包,屬於網絡層防火牆.this
在設置iptables後須要重啓iptables,會從新加載防火牆模塊,而模塊的裝載將會破壞狀態防火牆和確立的鏈接。會破壞已經對外提供數據連接的程序。可能須要重啓程序。.net
iptables防火牆
yum install iptables-services #安裝iptables
vi /etc/sysconfig/iptables #編輯iptables防火牆配置文件設計
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
:wq! #保存退出
systemctl restart iptables.service #最後重啓防火牆使配置生效
systemctl enable iptables.service #設置防火牆開機啓動
SELinux
SELinux(Security-Enhanced Linux) 是美國國家安全局(NSA)對於強制訪問控制的實現,是 Linux歷史上最傑出的新安全子系統。它不是用來防火牆設置的。但它對Linux系統的安全頗有用。Linux內核(Kernel)從2.6就有了SELinux。
SELinux是一種基於 域-類型 模型(domain-type)的強制訪問控制(MAC)安全系統,它由NSA編寫並設計成內核模塊包含到內核中,相應的某些安全相關的應用也被打了SELinux的補丁,最後還有一個相應的安全策略。任何程序對其資源享有徹底的控制權。假設某個程序打算把含有潛在重要信息的文件扔到/tmp目錄下,那麼在DAC狀況下沒人能阻止他。SELinux提供了比傳統的UNⅨ權限更好的訪問控制。
關閉SELINUX
vi /etc/selinux/config
#SELINUX=enforcing #註釋掉
#SELINUXTYPE=targeted #註釋掉
SELINUX=disabled #增長
:wq! #保存退出
setenforce 0 #使配置當即生效
原文連接
http://blog.csdn.net/geng823/article/details/41806205
做者:GENGLUT
來源:CSDN
原文:https://blog.csdn.net/geng823/article/details/41806205 版權聲明:本文爲博主原創文章,轉載請附上博文連接!