Portál AbcLinuxu, 10. května 2025 08:38

Dotaz: Iptables, po restartu port opet blokovany

12.3.2008 17:45 Honza
Iptables, po restartu port opet blokovany
Přečteno: 935×
Odpovědět | Admin
Ahoj,
na linuxovem stroji FC6 (2.6.22.7-57.fc6 #1 SMP Fri Sep 21 19:45:12 EDT 2007 x86_64 x86_64 x86_64 GNU/Linux) bezi na portu 7788 licence manager (lmgrd) k nejakemu softu a programy se k nemu hlasi overit si platnost licence.

Pres graficke nastavovatko v X byl povolen port TCP/UDP 7788 a vse jede. Nicmene po restartu jako by nastaveni uz nemelo efekt (v tom nastavovatku to vypada stejne jako predtim, tj. 7788 povolen). Jedina moznost jak to zase zprovoznit bylo odebrat port 7788 a pak ho zase pridat a az pak to melo efekt a na licence manager bylo mozne se pripojit.

Zkoumal jsem trosku iptables a cim to a na nic jsem neprisel. Takze ve stavu po restartu jsou nastaveni nasledujici a presto neni mozne se pripojit.
[root@wat247 sysconfig]# cat iptables
# Firewall configuration written by system-config-securitylevel
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT - [0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -p 50 -j ACCEPT
-A RH-Firewall-1-INPUT -p 51 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 7788 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 7788 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT
[root@wat247 sysconfig]# iptables -L -n
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
RH-Firewall-1-INPUT  all  --  0.0.0.0/0            0.0.0.0/0

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
RH-Firewall-1-INPUT  all  --  0.0.0.0/0            0.0.0.0/0

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Chain RH-Firewall-1-INPUT (2 references)
target     prot opt source               destination
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0           icmp type 255
ACCEPT     esp  --  0.0.0.0/0            0.0.0.0/0
ACCEPT     ah   --  0.0.0.0/0            0.0.0.0/0
ACCEPT     udp  --  0.0.0.0/0            224.0.0.251         udp dpt:5353
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:631
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:631
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           state NEW udp dpt:7788
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:7788
REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited
[root@wat247 sysconfig]# netstat -tupln
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program            name
tcp        0      0 127.0.0.1:2208              0.0.0.0:*                   LISTEN      2886/hpiod            
tcp        0      0 0.0.0.0:37738               0.0.0.0:*                   LISTEN      3775/altair           _lm
tcp        0      0 0.0.0.0:42443               0.0.0.0:*                   LISTEN      -                     
tcp        0      0 0.0.0.0:7788                0.0.0.0:*                   LISTEN      3774/lmgrd            
tcp        0      0 0.0.0.0:111                 0.0.0.0:*                   LISTEN      2645/portma           p
tcp        0      0 127.0.0.1:631               0.0.0.0:*                   LISTEN      2903/cupsd            
tcp        0      0 0.0.0.0:728                 0.0.0.0:*                   
...
Zda se mi, ze pravidla na povoleni prislusneho portu tam jsou, lmgrd nasloucha, tak v cem je problem?

Pokud restartuji iptables, uplne stejne. Pokud ho vypnu, jede to, takze je to urcite ve firewallu.
Nejaka rada?
Iptables verze: 1.3.8
Diky,
Honza
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

12.3.2008 18:20 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Iptables, po restartu port opet blokovany
Odpovědět | | Sbalit | Link | Blokovat | Admin
Porovnejte si výpis z iptables ve stavu, kdy vám to funguje, a ve stavu, kdy to nefunguje. Nicméně takhle na první pohled se mi zdá, že by to přes firewall s výše uvedenými pravidly mělo projít…
12.3.2008 19:37 Honza
Rozbalit Rozbalit vše Re: Iptables, po restartu port opet blokovany
Dobry napad, ze me to nenapadlo. Ted je nejaky prazdny a moc moudry z toho nejsem. Co se vlastne stalo?
[root@wat247 sysconfig]# iptables -L -n
Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
12.3.2008 21:22 Karel Dušek | skóre: 11
Rozbalit Rozbalit vše Re: Iptables, po restartu port opet blokovany
Jak je řečeno níže :-). Neukládá se Ti obsah pravidel. Bud si to nastav dle příspěvku autora "ja", nebo si udělej skript s obsahem pravidel a spouštěj ho automaticky při startu.
13.3.2008 09:20 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Iptables, po restartu port opet blokovany
Neukládá se Ti obsah pravidel. Bud si to nastav dle příspěvku autora "ja", nebo si udělej skript s obsahem pravidel a spouštěj ho automaticky při startu.
O ukládání obsahu pravidel by se ale měl starat ten klikací software, jinak je na nic. Takže než dobastlovat nějaké vlastní řešení, to bych se raději pokusil opravit ten klikací software.
13.3.2008 10:12 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
Rozbalit Rozbalit vše Re: Iptables, po restartu port opet blokovany
Měl ale asi je tam nějaká chyba.

1.) Máte spuštěnou službu iptables.

Potom co nastavíte tím klikačem pravidla oběví se ve firewallu ? Co vůbec používáte ? U Fedory je toho více.....

2.) Potom co jsou ty pravidla nastavené proveďte "/etc/rc.d/init.d/iptables save" a koukněte zda se ty pravidla zapsaly do /etc/sysconfig/iptables.

3.) Potom to můžete vyskoušet "/etc/rc.d/init.d/iptables stop" měly by se vyprázdnit a "/etc/rc.d/init.d/iptables start" měly by se zase načíst.

Jinak v iptables-config mám....
[root@soban /etc/sysconfig]# cat /etc/sysconfig/iptables-config
# Load additional iptables modules (nat helpers)
#   Default: -none-
# Space separated list of nat helpers (e.g. 'ip_nat_ftp ip_nat_irc'), which
# are loaded after the firewall rules are applied. Options for the helpers are
# stored in /etc/modprobe.conf.
IPTABLES_MODULES=""

# Unload modules on restart and stop
#   Value: yes|no,  default: yes
# This option has to be 'yes' to get to a sane state for a firewall
# restart or stop. Only set to 'no' if there are problems unloading netfilter
# modules.
IPTABLES_MODULES_UNLOAD="yes"

# Save current firewall rules on stop.
#   Value: yes|no,  default: no
# Saves all firewall rules to /etc/sysconfig/iptables if firewall gets stopped
# (e.g. on system shutdown).
IPTABLES_SAVE_ON_STOP="no"

# Save current firewall rules on restart.
#   Value: yes|no,  default: no
# Saves all firewall rules to /etc/sysconfig/iptables if firewall gets
# restarted.
IPTABLES_SAVE_ON_RESTART="no"

# Save (and restore) rule and chain counter.
#   Value: yes|no,  default: no
# Save counters for rules and chains to /etc/sysconfig/iptables if
# 'service iptables save' is called or on stop or restart if SAVE_ON_STOP or
# SAVE_ON_RESTART is enabled.
IPTABLES_SAVE_COUNTER="no"

# Numeric status output
#   Value: yes|no,  default: yes
# Print IP addresses and port numbers in numeric format in the status output.
IPTABLES_STATUS_NUMERIC="yes"

# Verbose status output
#   Value: yes|no,  default: yes
# Print info about the number of packets and bytes plus the "input-" and
# "outputdevice" in the status output.
IPTABLES_STATUS_VERBOSE="no"

# Status output with numbered lines
#   Value: yes|no,  default: yes
# Print a counter/number for every rule in the status output.
IPTABLES_STATUS_LINENUMBERS="yes"
Prostě jde hlavně o to zda vám ty pravidla nevyprázdní nějaký jiný program a zda se ta služba spustí a nahraje ta uložená pravidla.

Prostě vypněte v konfiguráku iptables položku IPTABLES_SAVE_ON_STOP="no" a IPTABLES_SAVE_ON_RESTART="no" - prostě dát no zda vám někdo před vypnutím nevynuluje ty pravidla a potom jak se iptables služba vypne tak se uloží prázdná....
13.3.2008 10:20 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
Rozbalit Rozbalit vše Re: Iptables, po restartu port opet blokovany
Ted jsem si všiml že při cat /etc/sysconfig/iptables tam ty pravidla máte.

Takže se vám asi nespouští služba iptables při startu, takže skuste "/etc/rc.d/init.d/iptables restart" případně "/etc/rc.d/init.d/iptables start" a měly by se načíst.

No a zařídit aby se při těch runlevelech co chcete spouštěla služba iptables.
13.3.2008 14:26 Honza
Rozbalit Rozbalit vše Re: Iptables, po restartu port opet blokovany
Dekuji, vypada to, ze se asi blizime k cili.

Zjistil jsem nasledujici:
* spravna pravidla jsou vzdy ulozena v /etc/sysconfig/iptables, at uz spojeni funguje, nebo nefunguje, takze to zrejme ukladanim pravidel zrejme nebude
* konfiguracni soubor iptables-config vypada temer stejne jako ten vas s vyjimkou prvniho nastaveni
[root@wat247 sysconfig]# cat iptables-config
# Load additional iptables modules (nat helpers)
#   Default: -none-
# Space separated list of nat helpers (e.g. 'ip_nat_ftp ip_nat_irc'), which
# are loaded after the firewall rules are applied. Options for the helpers are
# stored in /etc/modprobe.conf.
IPTABLES_MODULES="ip_conntrack_netbios_ns"
... zbytek je stejny ...
* kdyz ve stavu, kdy spojeni funguje a listing iptables -L je prazdny, zavolam iptables restart, pravidla se nactou, v listingu iptables -L se objevi a spojeni fungovat prestane. Kdyz blbnu s grafickym udelatkem (tj. zapnu/vypnu firewall odeberu/pridam porty), spojeni fungovat zacne a listing je zase prazdny.

To me vede k zaveru, ze po restartu je iptables asi spustene mozna jeste s necim a graficke udelatko ho ?vypne?, pripadne zapne neco jineho ... kdo vi ... a tim se spojeni rozbehne.
Omlouvam se za blbou otazku, ale jak zjistim, ze iptables (popr. jiny firewall) vubec bezi?
Zkousel jsem ps -A, ale v seznamu neni. Pomuze vam, kdyz sem hodim seznam vsech bezicich procesu?
Diky moc.
13.3.2008 14:30 Honza
Rozbalit Rozbalit vše Re: Iptables, po restartu port opet blokovany
Pozn. Po tom blbnuti s nastavovatkem a v momente, kdy spojeni funguje, nastavovatko pochopitelne hlasi, ze firewall bezi.
michich avatar 13.3.2008 14:42 michich | skóre: 51 | blog: ohrivane_parky
Rozbalit Rozbalit vše Re: Iptables, po restartu port opet blokovany
jak zjistim, ze iptables (popr. jiny firewall) vubec bezi?
Zkousel jsem ps -A, ale v seznamu neni. Pomuze vam, kdyz sem hodim seznam vsech bezicich procesu?

iptables není proces, takže říkat, jestli "běží" nebo "neběží" není úplně správné. Kernel prostě aplikuje iptables pravidla na zpracovávané pakety.

Doporučuju při výpisu pravidel dávat navíc parametr -v (iptables -L -vn). Pak to aspoň nezatajuje důležité informace a navíc to prvních dvou sloupích ukáže počítadla, kolikrát se které pravidlo uplatnilo.

13.3.2008 17:24 Honza
Rozbalit Rozbalit vše Re: Iptables, po restartu port opet blokovany
Aaaha, dobra. Takze jsem udelal dalsi pokus - restart firewallu (aby se vynulovala pocitadla), pravidla jsou stejna, licence manager bezi, ale overovani porad nefunguje (jako predtim). Pustil jsem 6x ten soft, ktery by si mel zadat o licenci. Ve vypisu pravidel se skutecne objevi u 7788 tcp 6 krat, ale odpoved, ze je licence spravna se ke mne uz zpet nedostane a soft u me zahlasi, ze licence manager server nebezi. Nejaky napad?

Pokud iptables stop na chvili, overovani funguje a soft se spusti.
Prikladam vypis
[root@wat247 sysconfig]# iptables -L -vn
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination 
 1133  120K RH-Firewall-1-INPUT  all  --  *      *       0.0.0.0/0            0.0.0.0/0

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination 
    0     0 RH-Firewall-1-INPUT  all  --  *      *       0.0.0.0/0            0.0.0.0/0

Chain OUTPUT (policy ACCEPT 443 packets, 66440 bytes)
 pkts bytes target     prot opt in     out     source               destination 

Chain RH-Firewall-1-INPUT (2 references)
 pkts bytes target     prot opt in     out     source               destination 
   21  3150 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0   
    0     0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0           icmp type 255
    0     0 ACCEPT     esp  --  *      *       0.0.0.0/0            0.0.0.0/0   
    0     0 ACCEPT     ah   --  *      *       0.0.0.0/0            0.0.0.0/0   
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            224.0.0.251         udp dpt:5353
  196 34381 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0           udp dpt:631
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:631
  348 20944 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
    1    92 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW udp dpt:7788
    6   288 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:7788
  561 60820 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited
13.3.2008 17:39 lieko
Rozbalit Rozbalit vše Re: Iptables, po restartu port opet blokovany
co povie #chkconfig --list iptables
13.3.2008 17:42 Honza
Rozbalit Rozbalit vše Re: Iptables, po restartu port opet blokovany
Toto:
[root@wat247 sysconfig]# chkconfig --list iptables
iptables        0:off   1:off   2:on    3:on    4:on    5:on    6:off
Dava to smysl?
12.3.2008 20:18 ja
Rozbalit Rozbalit vše Re: Iptables, po restartu port opet blokovany
Odpovědět | | Sbalit | Link | Blokovat | Admin
bash-3.00# cat /etc/sysconfig/iptables-config
IPTABLES_MODULES="ip_nat_ftp"
IPTABLES_MODULES_UNLOAD="yes"
IPTABLES_SAVE_COUNTER="yes"
IPTABLES_SAVE_ON_RESTART="yes"
IPTABLES_SAVE_ON_STOP="yes"
IPTABLES_STATUS_NUMERIC="yes"

bash-3.00# /etc/init.d/iptables save active
michich avatar 13.3.2008 17:56 michich | skóre: 51 | blog: ohrivane_parky
Rozbalit Rozbalit vše Re: Iptables, po restartu port opet blokovany
Odpovědět | | Sbalit | Link | Blokovat | Admin
A určitě ten lmgrd naslouchá jenom na tom portu 7788? Nepotřebuje ještě nějaký další port? Nebo nefunguje to podobně jako FTP, tj. že na základě domluvy na jednom portu se otvírá ještě další spojení?
13.3.2008 19:13 Honza
Rozbalit Rozbalit vše Re: Iptables, po restartu port opet blokovany
Bingo! Problem vyresen.

Takze zaver:
* graficke udelatko po vypnuti/zapnuti & pridani/odebrani portu vypne iptables uplne (zrejme bug) a tak se zdalo, ze vsechno funguje a staci mi port 7788, ktery jsem zadal v nejakem souboru k lmgrd
* vyzadal jsem si dokumentaci k lmgrd a objevil jsem jeste jedno skryte misto v konfiguracnim souboru, kde se muze nastavit druhy port. Pokud neni uvedeny, tak je nahodny. Proto mi to nefungovalo, kdyz byl zapnuty iptables (napr. po restartu).

Dekuji vsem a sypu si popel na hlavu, ze jsem nenasel nastaveni druheho portu drive.
Honza

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.