2013-06-19 3 views
1

Я работаю с Баш файл, и я хочу, чтобы вставить и получить строки в Iptables лет файлВставить строку в IPTables файл

# Firewall configuration written by system-config-firewall 
# Manual customization of this file is not recommended. 
*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 
{My Line Here} 
-A INPUT -m state --state NEW -m udp -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT 
-A INPUT -j REJECT --reject-with icmp-host-prohibited 
-A FORWARD -j REJECT --reject-with icmp-host-prohibited 
COMMIT 

заменить {Моей линии здесь} для

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT 
  1. Тогда я хочу найти и получить открытые порты брандмауэра и их отображение

ответ

0
sed 's/-A INPUT -i lo -j ACCEPT/-A INPUT -i lo -j ACCEPT\n-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT/g' <filename> > temp ; mv temp <filename> 

Заменить <filename> фактическим файлом. Это работает, только если предыдущая строка -A INPUT -i lo -j ACCEPT

+0

спасибо, что это работает, но как найти открытые порты? – mindia

+0

'netstat -tulpn | less'. Я думаю, это поможет. Дополнительная информация здесь http://www.cyberciti.biz/faq/howto-rhel-linux-open-port-using-iptables/ –

Смежные вопросы