Proftpd + iptables

Konfiguracja serwerów, usług, itp.
Luc3k
Posty: 67
Rejestracja: 12 sierpnia 2008, 08:56
Lokalizacja: Nowy Sącz

Proftpd + iptables

Post autor: Luc3k »

W swoim serwerze domyślną politykę mam ustawioną na DROP

Kod: Zaznacz cały

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
Przepuszczam sobie tylko te usługi, które potrzebuję. Jedną z nich jest FTP (proftpd):

Kod: Zaznacz cały

iptables -A INPUT --protocol tcp --destination-port 20 -j ACCEPT
iptables -A INPUT --protocol tcp --destination-port 21 -j ACCEPT
Niestety, logując się do serwera z zewnątrz nawiązywane jest połączenie, ale nie odświeża listy katalogów. W Total Commanderze otrzymuję taki komunikat: "Polecenie PORT nie powiodło się".
Połączenie na serwerze jest nawiązane i wisi. Jakie jeszcze porty muszę odblokować, aby móc uzyskiwać połączenie do serwera FTP?
Awatar użytkownika
pawkrol
Moderator
Posty: 939
Rejestracja: 03 kwietnia 2011, 10:25

Post autor: pawkrol »

Wyłącz firewalla i sprawdź czy problem nadal występuje.
Bo generalnie usługa FTP działa właśnie na ustawionych przez Ciebie portach.

Jak masz ustawiony na firewallu interfejs lo
Luc3k
Posty: 67
Rejestracja: 12 sierpnia 2008, 08:56
Lokalizacja: Nowy Sącz

Post autor: Luc3k »

pawkrol pisze:Wyłącz firewalla i sprawdź czy problem nadal występuje.
Bo generalnie usługa FTP działa właśnie na ustawionych przez Ciebie portach.

Jak masz ustawiony na firewallu interfejs lo
Kiedy ustawię w firewallu:

Kod: Zaznacz cały

iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
Połączenie działa bezproblemowo.

Konfiguracja lo:

Kod: Zaznacz cały

iptables -A INPUT -i lo -j ACCEPT
iptables -A FORWARD -o lo -j ACCEPT
Awatar użytkownika
dedito
Moderator
Posty: 3519
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Post autor: dedito »

Pokaż całego firewalla.
Jaki tryb aktywny/pasywny?
Awatar użytkownika
LordRuthwen
Moderator
Posty: 2306
Rejestracja: 18 września 2009, 21:45
Lokalizacja: klikash?

Post autor: LordRuthwen »

Ustaw dla dla połączeń RELATED i ESTABLISHED na accept.
Awatar użytkownika
pawkrol
Moderator
Posty: 939
Rejestracja: 03 kwietnia 2011, 10:25

Post autor: pawkrol »

Ewentualnie dodaj logowanie do firewalla i zobacz co Ci blokuje listowanie.

Natomiast
Ustaw dla dla połączeń RELATED i ESTABLISHED na accept.
jest jak najbardziej pożądanym zabiegiem.
Luc3k
Posty: 67
Rejestracja: 12 sierpnia 2008, 08:56
Lokalizacja: Nowy Sącz

Post autor: Luc3k »

Oto wycinek z mojej zpory: http://83.218.119.6/firewall

Macie na myśli coś takiego?

Kod: Zaznacz cały


iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED 
iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED 
iptables -A OUTPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
Takie wpisy w zaporze już posiadam.
dedito pisze: Jaki tryb aktywny/pasywny?
Wydaje mi się, że aktywny. W configu profptd nie dodawałem, żanych portów pasywnych, ani też innych wpisów, aby działał w trybie pasywnym. Mogę wycinek z configa również wystawić.

Aczkolwiek: kiedy Total Commander łaczy się z serwerem to zatrzymuje się na komunikacie "Entering pasive mode...", przy czy opcja w TC "użyj trybu pasywnego..." nie jest włączona.
Awatar użytkownika
pawkrol
Moderator
Posty: 939
Rejestracja: 03 kwietnia 2011, 10:25

Post autor: pawkrol »

Tak z tym że:

Kod: Zaznacz cały

iptables -A OUTPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
Jest nie potrzebne bo masz już domyślną regułę na ACCEPT

A na regule tak dajesz:

Kod: Zaznacz cały

iptables -A INPUT -s 0/0 -p tcp -m tcp -m state --state NEW --dport 20 -j ACCEPT
iptables -A INPUT -s 0/0 -p tcp -m tcp -m state --state NEW --dport 21 -j ACCEPT


Tu masz fajnie opisane tryby ftp - link
Luc3k
Posty: 67
Rejestracja: 12 sierpnia 2008, 08:56
Lokalizacja: Nowy Sącz

Post autor: Luc3k »

pawkrol pisze: A na regule tak dajesz:

Kod: Zaznacz cały

iptables -A INPUT -s 0/0 -p tcp -m tcp -m state --state NEW --dport 20 -j ACCEPT
iptables -A INPUT -s 0/0 -p tcp -m tcp -m state --state NEW --dport 21 -j ACCEPT
Ten wpis nie rozwiązał problemu.
Z linku, który podałeś wynika, że na zaporze muszą być otwarte porty powyżej 1024. W mojej zaporze wpuszam tylko 20, 21, 22, 80 i 8080.

Logi podczas próby łączenia się z proftpd wyglądają następująco:

Kod: Zaznacz cały

79.189.44.186 UNKNOWN kzgrzeblak [15/cze/2015:12:43:15 +0200] "QUIT" 221 -
79.189.44.186 UNKNOWN kzgrzeblak [15/cze/2015:12:43:17 +0200] "USER kzgrzeblak" 331 -
79.189.44.186 UNKNOWN kzgrzeblak [15/cze/2015:12:43:17 +0200] "PASS (hidden)" 230 -
79.189.44.186 UNKNOWN kzgrzeblak [15/cze/2015:12:43:17 +0200] "SYST" 215 -
79.189.44.186 UNKNOWN kzgrzeblak [15/cze/2015:12:43:17 +0200] "FEAT" - -
79.189.44.186 UNKNOWN kzgrzeblak [15/cze/2015:12:43:17 +0200] "OPTS_UTF8 ON" 200 -
79.189.44.186 UNKNOWN kzgrzeblak [15/cze/2015:12:43:17 +0200] "OPTS UTF8 ON" - -
79.189.44.186 UNKNOWN kzgrzeblak [15/cze/2015:12:43:17 +0200] "PWD" 257 -
79.189.44.186 UNKNOWN kzgrzeblak [15/cze/2015:12:43:18 +0200] "TYPE A" 200 -
79.189.44.186 UNKNOWN kzgrzeblak [15/cze/2015:12:43:18 +0200] "PORT 10,0,0,213,213,156" 500 -
79.189.44.186 UNKNOWN kzgrzeblak [15/cze/2015:12:43:18 +0200] "PASV" 227 -
Wydaje mi się, że trzeba będzie przestawić proftpd w tryb pasywny i otworzyć dla niego jakiś zakres portów. Chyba, że macie jeszcze jakieś pomysły.
Awatar użytkownika
pawkrol
Moderator
Posty: 939
Rejestracja: 03 kwietnia 2011, 10:25

Post autor: pawkrol »

Może być tak że jednak korzystasz z trybu pasywnego. Wtedy należy dodatkowo otworzyć porty wysokie. Nie wiem jak to jest w pro ftp, ale w pure ftp odpowiadała za to opcja "PassivePortRange"
ODPOWIEDZ