Fórum Root.cz
Hlavní témata => Server => Téma založeno: rootmachine 28. 03. 2014, 14:07:38
-
Zdravím pánové... a dámy.
Mám takový menší problém, mám na stroji nainstalovaný CentOS + ProFTPd. Hlavním problémem je že když mám zaplé IP tables (service iptables start) kde mám povolený v obou směrech 20,21,22,443 a 1024:53534
tak se na FTP nepřipojím
hlavní věcí v konfiguraci proftpd je že tam mám:
MasqueradeAddress xx.yy.cc.177
a
PassivePorts 49152 65534
a
Port 21
a na autorizaci uživatelů používám LDAP modul + tam mám v ProFTPd nainstalované SSL certifikáty.
Nevím kde mám chybu ale se zapnutým IPTables se nepřipojím. pokud dám (service iptables stop) vše funguje bez problému.
Poradil by mi někdo jak nastavit IPtables?
Díky za rady 8)
-
Nastav si nějaký rozumný rozsah pasivních portů na tom FTP serveru (49152-65534 fakt rozumné není) a forwardni je tam (s portem 21). Port 20 neforwardovat, to je úplně k ničemu.
-
Díky za info, co bereš za rozumný rozsah? Rád se přiučím.
Já právě jak je v ProFTPd ta maskaráda tak mě to trochu plete a nevím odkud - kam co forwardovat v iptables + trochu jak.
Dejme tomu že originální IP serveru je 192.168.1.10 a ta IP v ProFTPd je 123.123.1.123
-
Obousměrně povolené porty 1024:skoro_konec? Hmm. A jak máš nastavené ty iptables? Máš tam někde odpovídající pravidlo s ESTABLISHED,RELATED? Je zapnuta podpora v jádře pro iptables a ftp?
-
Jak říkám, rád se nechám poučit. S FTP a IPtables jsem vždy bojoval. To je mimo mě, já se starám o jiné služby. Takže když mi někdo nesměruje a poví takové běžně užívané hodnoty pasivních portů a nastavení IPtables budu mu vděčný.
-
Sned nebudu mimo: Použil bych pravidlo, které by obsahovalo mj. "-m state --state ESTABLISHED,RELATED -j ACCEPT", k tomu je potřeba mít v jádře zapnuté snad nf_conntrack_ftp, či jak se to jmenuje. Iptables by pak měly samy zjistit, že se otvírá příchozí datové spojení FTP (související s již otevřeným řídicím spojením) a povolit ho. Na delší psaní teď nemám čas když tak mrknout po netu na tyto volby.
-
Pozpátku:
- nf_conntrack_ftp do šifrovaného FTP absolutně nevidí.
- rozumný rozsah pasivních portů závisí na tom, kolik čekáš současně připojených klientů. Desítky tisíc asi ne, že.
- nějak jsem nepochopil, jestli se vrtáš v iptables na routeru nebo na tom serveru
-
budou tam jednotky lidí, ne velke množství. jde mi o IPtables v tom serveru kde je ProFTPd.
mám tam naloadované ( Loading additional modules: ip_conntrack_ftp )
Pak mam povolené cokoliv co jde na server a ven z portu
-A INPUT -i eth0 -p tcp -m multiport --dports 20,21,22,443,1024:53543-m state --state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m multiport --sports 20,21,22,443,1024:53543 -m state --state ESTABLISHED -j ACCEPT
-
Jestli je to šifrované FTP, tak to používá porty 989 a 990 místo 20 a 21. Ale stejně bych doporučil místo FTPS použít nějaký rozumnější protokol, třeba SFTP nebo WebDAV
-
Hele, a furt ti nevadí, že 53543 není totéž co 65534? Jako že to je z velké většiny MIMO ten rozsah nastavený na FTP serveru. Co se třeba kouknout do logu?
P.S. Pro jednotky uživatelů ti stačí bohatě nějakých 100 portů.
Jestli je to šifrované FTP, tak to používá porty 989 a 990 místo 20 a 21.
Šifrovat se dá na normálním portu 20/21, což taky dělá asi 99.9999 procent lidí. Upřímně řečeno, nevím o nikom, kdo by to provozoval na portu 990
-
to s tím číslem jsem se přepsal, není tam 53543, ale to neřeší stále můj problém jak nastavit IPtables aby to běželo.
rozsah portů a proč to běží na ftps je zcela irelevantní, prostě to tak je.
ftp běží když vypnu IPtables na 21 určitě né na 990
někdo nějaký vzor či ukázku jak napsat celé to pravidlo?
Děkuji za pomoc.
-
Zkus pravidla přidávat přes -I a ne přes -A (-I přidá pravidlo na začátek, -A na konec za poslední stávající pravidlo, takže je docela možné, že ho vyřídí a zablokuje pravidlo výše k tabulce). Bylo by dobré tady dát, co vypisuje iptables -L a pro jistotu i iptables -L -t nat
-
Je mezi serverem, na kterém to rozcházíš a klientem nějaký NAT? Předpokládám, že ne.
Který režim klienta nefunguje? Přepokládám, že pasivní; ten je snad už i v Total Commanderu jako výchozí.
(http://i.imgur.com/5CrGZ68.png)
Aby fungoval aktivní režim, stačí povolit příchozí provoz na port 21, v odchozím směru musí být povoleno vytváření nových spojení z portu 20 na vysoká čísla portů.
Aby fungoval pasivní režim je třeba povolit příchozí provoz na port 21 a dále na porty vyjmenované v konfiguraci FTP serveru.
Tedy, zřejmě to děláš správně a bude tam nějaký malicherná zrada. Nepřijdeš-li na to sám, pošli kompletní nastavení firewallu, ne jen vybrané řádky a bez obfuskací.
-
Děkuji moc všem za radu, zrada byla v pasivních portech. Nastavil jsem v ProFTPd jiný rozsah, ten hodil do IP tables a zrazu to jede.