Вот открыл я через файрволл порты 20, 21
В результате к чужим ftp серверам приконнекчиваюсь, логинюсь но на любую мою команду сервер к которому я присоединяюсь пишет: connect: Permission denied :(( При чем если в файрволе дать прсто tcp any to any все ок. Я сделал вывод, что для того чтоб выполнялись команды (ls, get) нужно открыть еще какой то порт кроме как 20, 21. Но какой?
Если кто сталкивался или знает решение этой проблемы помогите пожалйста!!!
попробуй после соединения с ftp сервером и регистрации, набратьв командной строке "pas". Если после этого все ОК (команда dir или ls - отрабатывают), то почитай побольше об активных и пассивных режимах работы ftp служб.
---
с уважением Юрий.
>Вот открыл я через файрволл порты 20, 21
>В результате к чужим ftp серверам приконнекчиваюсь, логинюсь но на любую мою
>команду сервер к которому я присоединяюсь пишет: connect: Permission denied :((
>При чем если в файрволе дать прсто tcp any to any
>все ок. Я сделал вывод, что для того чтоб выполнялись команды
>(ls, get) нужно открыть еще какой то порт кроме как 20,
>21. Но какой?
>Если кто сталкивался или знает решение этой проблемы помогите пожалйста!!!
Покажи правила, которыми открыл эти порты
${fwcmd} add 50 pass tcp from 195.218.146.131 to any 20 via rl0
${fwcmd} add 51 pass tcp from 195.218.146.131 to any 21 via rl0
${fwcmd} add 52 pass tcp from any 20 to 195.218.146.131 via rl0
${fwcmd} add 53 pass tcp from any 21 to 195.218.146.131 via rl0
Если перейти в Passive mode off то все работает. Но меня это не устраивает. Ведь почему то когда в правилах ставлю tcp any to any то работает и так и так... Тестирую на одном и том же сервере
>Если перейти в Passive mode off то все работает. Но меня это
>не устраивает. Ведь почему то когда в правилах ставлю tcp any
>to any то работает и так и так... Тестирую на одном
>и том же сервереЯ правильно понимаю, что все работает елси отключить пассивный режим?
Если так, попробуй:
ipfw add 60 pass tcp from 195.какой.там.адрес 1024-65535 to any 1024-65535
ipfw add 61 pass tcp from any 1024-65535 to 195.какой.там.адрес 1024-65535короче, пассивные режим разреши (елси в этом дело)
а верхнюю границу можешь урезать, если хочешь...
Тьфу ты блин не ужели придется в пассивном режиме работать, ведь не хочеться мне открывать порты 1024-65535, ведь там squid, mysql ну и много чего еще :((
>Тьфу ты блин не ужели придется в пассивном режиме работать, ведь не
>хочеться мне открывать порты 1024-65535, ведь там squid, mysql ну и
>много чего еще :((можно попробовать так:
вариант 1:
ipfw add deny ip from внутр_сетка to any in via rl0 (который внешний)
ipfw add pass tcp from внутр_сетка to any setup
ipfw add pass tcp from any to внутр_сетка established
...............................
ipfw add deny ip from any to any(или типа того)
этим ты разрешаешь только зарегистрированные соединения, начатые состороны твоей внутренней сетки (внутрянняя - тут я имею в виду сетку сос стороны внутреннего интерфейса)либо вариант 2:
открываешь верхние порты, при этом закрываешь все те, на которые тебе обращений не надо:ipfw add deny tcp from any to me 3128 in via rl0
ipfw add deny tcp from any to me 3306 in via rl0 (или какой там у mysqld порт)
ну и т.д...PS: у меня например работает первый вариант