Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2010-07-27 09:58:01

  devu - Nowy użytkownik

devu
Nowy użytkownik
Zarejestrowany: 2010-07-27

IPTABLES @ftp długi czas oczekiwania na połączenie

Dzień dobry,

jak w temacie, który skutkuje odrzuceniem owego połączenia (chodź nie zawsze) może ktoś mnie naprowadzi gdzie zrobiłem błąd.. Oto listing moich prostych regułek:

Kod:

#!/bin/sh

IPT=/sbin/iptables
MOD=/sbin/modprobe

# Loading modules
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe xt_multiport

/bin/echo "1" > /proc/sys/net/ipv4/tcp_syncookies
/bin/echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
/bin/echo "1" > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses
/bin/echo "1" > /proc/sys/net/ipv4/conf/all/log_martians
/bin/echo "1" > /proc/sys/net/ipv4/conf/all/rp_filter
/bin/echo "1" > /proc/sys/net/ipv4/tcp_timestamps

# Cleaning
$IPT -F
$IPT -X
$IPT -t nat -F
$IPT -t nat -X
$IPT -t mangle -F
$IPT -t mangle -X

# Setting default filter policy
$IPT -P INPUT DROP
$IPT -P OUTPUT ACCEPT
$IPT -P FORWARD DROP

# loopback rules
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT

# ICMP (ping, traceroute)
$IPT -A INPUT -p icmp -i eth0 --icmp-type any -j ACCEPT

# Allow FTP connections @ port 21
$IPT -A INPUT  -p tcp --sport 21 -m state --state ESTABLISHED -j ACCEPT
$IPT -A OUTPUT -p tcp --dport 21 -m state --state NEW,ESTABLISHED -j ACCEPT


# Allow Active FTP Connections
$IPT -A INPUT -p tcp --sport 20 -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPT -A OUTPUT -p tcp --dport 20 -m state --state ESTABLISHED -j ACCEPT

# Allow Passive FTP Connections
$IPT -A INPUT -p tcp --sport 1024: --dport 1024:65535  -m state --state ESTABLISHED -j ACCEPT
$IPT -A OUTPUT -p tcp --sport 1024: --dport 1024:65535  -m state --state ESTABLISHED,RELATED -j ACCEPT

# ssh connection
$IPT -A INPUT  -p tcp -i eth0 --dport 22 -s 192.168.1.0/24 -j ACCEPT
$IPT -A INPUT  -p udp -i eth0 --dport 22 -s 192.168.1.0/24 -j ACCEPT

# http,https connection
$IPT -A INPUT  -p tcp -i eth0 -m multiport --dport 80,443 -j ACCEPT
$IPT -A INPUT  -p udp -i eth0 -m multiport --dport 80,443 -j ACCEPT

### log and drop everything else
$IPT -A INPUT -j LOG
$IPT -A FORWARD -j LOG
$IPT -A INPUT -j DROP

Output ze FilleZilli gdzie widać, że połączenie jest nawiązane:

Kod:

Status:    Łączenie z 192.168.1.18:21...
Status:    Połączenie nawiązanie, oczekiwanie na wiadomość powitalną...
Błąd:    Przekroczony czas oczekiwania na połączenie
Błąd:    Nie można połączyć się z serwerem

pozdrawiam
devu.

i log /var/log/message

Kod:

[...]
Jul 27 10:04:28 host kernel: [ 4951.347769] IN=eth0 OUT= MAC=00:0d:56:c7:8a:4d:00:24:73:de:9a:c1:08:00 SRC=xxx.xxx.xxx.xxx DST=192.168.1.18 LEN=48 TOS=0x00 PREC=0x00 TTL=127 ID=20222 DF PROTO=TCP SPT=40244 DPT=21 WINDOW=65535 RES=0x00 SYN URGP=0

Widać, że pakiety z flagą SYN nie przechodzą dlatego połączenie nie jest możliwe.. proszę Was bardzo o sugestię, hotlink gdzie mógłbym ugruntować wiedzę jeśli błądzę..

Ostatnio edytowany przez devu (2010-07-27 10:14:46)

Offline

 

#2  2010-07-27 10:11:08

  redelek - Członek DUG

redelek
Członek DUG
Skąd: Warszawa
Zarejestrowany: 2008-07-17

Re: IPTABLES @ftp długi czas oczekiwania na połączenie

a jak wyłączysz iptables ?? Tak samo działa ?


Pozdrawiam
Redelek
--------------------------------------------------------
Polecam hosting ViPower https://vipower.pl/panel/aff.php?aff=208, TikTalik https://tiktalik.com/pl/

Offline

 

#3  2010-07-27 10:17:41

  devu - Nowy użytkownik

devu
Nowy użytkownik
Zarejestrowany: 2010-07-27

Re: IPTABLES @ftp długi czas oczekiwania na połączenie

@redelek:
Tak, jeśli wyłączę iptables działa poprawnie.
Wydaje mi się że może mieć to związek właśnie z pakietami rozpoczynającymi połączenie ( SYN ) tak ja mówi to log. Aczkolwiek nie potrafię tego ugryźć .. eh

Offline

 

#4  2010-07-27 10:28:30

  redelek - Członek DUG

redelek
Członek DUG
Skąd: Warszawa
Zarejestrowany: 2008-07-17

Re: IPTABLES @ftp długi czas oczekiwania na połączenie

ja mam takie moduły załadowane

Kod:

/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe iptable_nat
/sbin/modprobe ip_nat_ftp

Zobacz z takimi modułami te 2 ostatnie są ważne


Pozdrawiam
Redelek
--------------------------------------------------------
Polecam hosting ViPower https://vipower.pl/panel/aff.php?aff=208, TikTalik https://tiktalik.com/pl/

Offline

 

#5  2010-07-27 11:35:50

  devu - Nowy użytkownik

devu
Nowy użytkownik
Zarejestrowany: 2010-07-27

Re: IPTABLES @ftp długi czas oczekiwania na połączenie

ip_nat_ftp/iptable_nat
z tego co czytałem powyższe opcje odnoszą się do połączeń realizowanych przez klientów wewnętrznych za natem chcących połączyć się z serwerami zewnętrznymi.

Oczywiście problemu to nie rozwiązuje..

Offline

 

#6  2010-07-27 12:18:05

  redelek - Członek DUG

redelek
Członek DUG
Skąd: Warszawa
Zarejestrowany: 2008-07-17

Re: IPTABLES @ftp długi czas oczekiwania na połączenie

Masz źle zrobione reguły dla FTP

Po co dodajesz OUTPUN ? interesuje Cię INPUT przychodzące tylko.

Kod:

$IPT -A INPUT  -p tcp --sport 21 -m state --state ESTABLISHED -j ACCEPT
$IPT -A OUTPUT -p tcp --dport 21 -m state --state NEW,ESTABLISHED -j ACCEPT

Nowych polączeń nie przyjmuje tylko utrzymuje nawiązane ESTABILISHED w łańcuchu INPUT.

Dodaj normalne wpisy a potem kombinuj
Ogólnie dla wszystkich polączeń już nawiązanych

Kod:

$F -A INPUT -p ALL -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT

# FTP PASSIV +DATA

Kod:

$F -A INPUT -p TCP -s 0/0 --source-port 20 -j ACCEPT
#FTP control
$F -A INPUT -p TCP -s 0/0 --destination-port 21 -j ACCEPT
# Passive FTP
$F -A INPUT -p TCP -s 0/0 --destination-port 62000:64000 -j ACCEPT

U mnie to na VSFTPD działa aż miło .

Ostatnio edytowany przez redelek (2010-07-27 12:19:16)


Pozdrawiam
Redelek
--------------------------------------------------------
Polecam hosting ViPower https://vipower.pl/panel/aff.php?aff=208, TikTalik https://tiktalik.com/pl/

Offline

 

#7  2010-07-28 10:11:10

  devu - Nowy użytkownik

devu
Nowy użytkownik
Zarejestrowany: 2010-07-27

Re: IPTABLES @ftp długi czas oczekiwania na połączenie

@redelek
Przekombinowałem po prostu. OUTPUT'a pojawił się ze względu na zamiar filtrowania również ruchu wychodzącego. Dla testów jednak ustawiłem wszystkie połączania wychodzące na ACCEPT.
Reasumując Twoja podpowiedź okazała się skuteczna, za co Ci bardzo dziękuje..

Ostatnio edytowany przez devu (2010-07-28 10:12:56)

Offline

 

#8  2010-07-28 10:17:22

  Nicram - Użytkownik

Nicram
Użytkownik
Zarejestrowany: 2006-03-28

Re: IPTABLES @ftp długi czas oczekiwania na połączenie

devu napisał(-a):

Zastanawiam się jednak czy nie lepiej podawać zamiast '-s 0/0' dokładny adres IP co Ty/Wy na to?

co masz na mysli dokladny adres ip?
taki zapis 0/0 oznacza wsio. w ipv4 rowniez mozna stosowac notacje tak jak to sie robi w ipv4. ten zapis jest rownoznaczny z 0.0.0.0/0 :)
z drugiej strony w tym przypadku uzycie przelacznika -s 0/0 jest tylko "informacyjne" i powodujace kolejny test :) nie zapisanie tego przelaczika w niczym nie przeszkodzi regolce a zmniejszy o 1 test :)

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
To nie jest tylko forum, to nasza mała ojczyzna ;-)