Linux服务器安全篇

临时iptables、selinux

service iptables stop

setenforce 0

永久关闭iptables、selinux

chkconfig iptables off

sed -i 'SELINUX=/enforcing/disabled' /etc/selinux/config


iptables

不存在/etc/sysconfig/iptables文件

#iptables -P OUTPUT ACCEPT

#service iptables save

# iptables -F 清除预设表filter中的所有规则链的规则

# iptables -X 清除预设表filter中使用者自定链中的规则


nmap可以扫描一个服务器的端口

yum install -y nmap

命令格式#nmap ip

netfilter/iptables,类似于ipvs和LVS的关系


iptables的规则链分为三种:输入,转发,输出

配置规则/etc/sysconfig/iptables

:fliter

:INPUT ACCEPT [0:0]

:FORWARD ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

这三个冒号优先级最低。ACCEPT默认全部通过,防火墙形同虚设,三种模式:

1、全部ACCEPT

2、全部DROP,只有新加的指定的可以ACCEPT

3、INPUT设为DROP,只有指定的可以进来,OUTPUT设为ACCEPT,默认都可以出去

-A INPUT -m state --state ESTABLISHED.RELATED -j ACCEPT


命令为iptables -A INPUT -p tcp --dport 80 -j ACCEPT

禁止一个IP访问,加入-A INPUT -S 192.168.1.1 -j DROP


#-A INPUT -j REJECT(丢弃) --reject-with icmp-host-prohibited(icmp禁止返回信息)

意为除了上面的INPUT链生效其他的和下面的链都会禁止,优先级比上面的三个冒号优先级高

#-A OUTPUT -j REJECT(丢弃) --reject-with icmp-host-prohibited(icmp禁止返回信息)

#iptables --list 看哪些服务能过防火墙

本机端口转发用nat表,中的prerouting链

iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

iptables -t nat -A PREROUTING -d 192.168.2.102 -p tcp --dport 80 -j DNAT --to-destination 192.168.2.103:8080

iptables -t nat -A OUTPUT -d 192.168.2.1 -p tcp --dport 80 -j REDIRECT --to-port 8080

(-t是选表,prerouting是nat表里的一个链)


允许yum

iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 
iptables -A INPUT -p udp --sport 53 -j ACCEPT 
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 
iptables -A OUTPUT -p udp --dport 53 -j ACCEPT 
iptables -A OUTPUT -p tcp --sport 10000:65535 -j ACCEPT 
/etc/rc.d/init.d/iptables save 
service iptables restart

允许ping

-A INPUT -p icmp -j ACCEPT