http://www.linuxidc.com/Linux/2014-10/108650.htm
1、oracle服務器下/opt/app/oracle/product/11.2.0/network/admin
該路徑下有一個sqlnet.ora文件打開該文件
增加以下內容:
#開啟ip限制功能
tcp.validnode_checking=yes
#允許訪問數據庫的IP地址列表,多個IP地址使用逗號分開
tcp.invited_nodes=(45.36.14.2)
#禁止訪問數據庫的IP地址列表,多個IP地址使用逗號分開
tcp.excluded_nodes=(192.168.1.111)
然后重啟監聽即可。
注:
1、第一行必需寫,任何平台都可以,但是只適用於TCP/IP。
2、第二行和第三行任寫一行即可,如果tcp.invited_nodes與tcp.excluded_nodes都存在,以tcp.invited_nodes為主。
3、不要禁止服務器本機的IP地址,否則通過lsnrctl將不能啟動或停止監聽,因為該過程監聽程序會通過本機的IP訪問監聽器。
數據庫防火牆開啟安全策略
刪除規則
//查看所有規則
iptables -L -n
//刪除
所以,例如上面要刪除一個INPUT鏈的規則的話可以這樣:
iptables -D INPUT 3
意思是刪除第3條規則。
開啟防火牆然后自定義規則
//禁掉1521的入口
iptables -I INPUT -p tcp --dport 1521 -j DROP
//允許本機訪問1521端口,不然oracle監聽起不來
iptables -I INPUT -s 127.0.0.1 -p tcp --dport 1521 -j ACCEPT
//允許訪問1521端口的ip
iptables -I INPUT -s 10.30.60.161 -p tcp --dport 1521 -j ACCEPT
//保存規則
/etc/rc.d/init.d/iptables save
//重啟防火牆
service iptables restart
例子:
iptables -I INPUT -s 10.30.60.166 -p tcp --dport 1521 -j ACCEPT
iptables -I INPUT -s 10.30.60.182 -p tcp --dport 1521 -j ACCEPT
iptables -I INPUT -s 10.30.60.193 -p tcp --dport 1521 -j ACCEPT
iptables -I INPUT -s 10.30.60.163 -p tcp --dport 1521 -j ACCEPT
iptables -I INPUT -s 10.30.60.66 -p tcp --dport 1521 -j ACCEPT
iptables -I INPUT -s 10.30.60.178 -p tcp --dport 1521 -j ACCEPT
iptables -I INPUT -s 10.30.60.218 -p tcp --dport 1521 -j ACCEPT
iptables -I INPUT -s 10.30.60.183 -p tcp --dport 1521 -j ACCEPT
iptables -I INPUT -s 10.30.60.172 -p tcp --dport 1521 -j ACCEPT
/etc/rc.d/init.d/iptables save
service iptables restart