Автор Тема: Проблем с достъпа на proftpd  (Прочетена 3905 пъти)

toti84

  • Напреднали
  • *****
  • Публикации: 115
    • Профил
Проблем с достъпа на proftpd
« -: Apr 16, 2008, 10:36 »
Здравейте,

На компютъра ми (192.168.1.222) имам инсталиран proftpd (XAMPP).
Нямам проблем с достъпа до ftp сървъра от локалната мрежа (192.168.1.0/24) с юзер: toti.
Рутера ми пренасочва порт 21 към  192.168.1.222, като идеята ми е да има достъп от всякъде от интернет до ftp сървъра.

Когато някой се опита от "вънка" да влезе, при правилно въведен юзер toti и парола излиза съобщение от сорта
Примерен код
An error occured openig that folder on FTP Server. Make sure you have permission to access that folder.


На 192.168.1.222:

-спрян iptables
-в /еtc/hosts.allow и /etc/hosts.deny има само закоментирани редове
- chmod 777 /root/Public/
-cat /opt/lampp/etc/proftpd.conf
Примерен код

# This is a basic ProFTPD configuration file (rename it to
# 'proftpd.conf' for actual use.  It establishes a single server
# and a single anonymous login.  It assumes that you have a user/group
# "nobody" and "ftp" for normal operation and anon.

ServerName                      "ProFTPD"
ServerType                      standalone
DefaultServer                   on

# Port 21 is the standard FTP port.
Port                            21
# Umask 022 is a good standard umask to prevent new dirs and files
# from being group and world writable.
Umask                           022

# To prevent DoS attacks, set the maximum number of child processes
# to 30.  If you need to allow more than 30 concurrent connections
# at once, simply increase this value.  Note that this ONLY works
# in standalone mode, in inetd mode you should use an inetd server
# that allows you to limit maximum number of processes per service
# (such as xinetd)
MaxInstances                    30

# Set the user and group that the server normally runs at.
User                            toti
#Group                          nogroup

# Normally, we want files to be overwriteable.
#<Directory /opt/lampp/htdocs/*>
<Directory /root/Public/*>
  AllowOverwrite                on
</Directory>

# only for the web servers content
#DefaultRoot /opt/lampp/htdocs
DefaultRoot /root/Public


# nobody gets the password "lampp"
# commented out by lampp security
#UserPassword nobody wRPBu8u4YP0CY
UserPassword toti vWP/y6C89VDGo

# nobody is no normal user so we have to allow users with no real shell
RequireValidShell off

# nobody may be in /etc/ftpusers so we also have to ignore this file
UseFtpUsers off


На Рутера (външно Ип 192.***.**.**)

-iptables -A PREROUTING  -d 192.***.**.** -i ppp0 -p tcp -m tcp --dport 21 -j DNAT --to-destination 192.168.1.222:21

И от произволен комп от интернет
Примерен код
nmap 195.***.**.**

Starting nmap 3.70 ( http://www.insecure.org/nmap/ ) at 2008-04-16 09:24 EDT
Interesting ports on 192.***.**.**:
(The 1653 ports scanned but not shown below are in state: closed)
PORT      STATE    SERVICE
21/tcp    open     ftp
........    ......... .........
........   .........  ..........


Благодаря предварително ...



Активен

neter

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 3408
  • Distribution: Debian, SailfishOS, CentOS
  • Window Manager: LXDE, Lipstick
    • Профил
    • WWW
Проблем с достъпа на proftpd
« Отговор #1 -: Apr 16, 2008, 11:44 »
Нека пренасочването изглежда така
Примерен код
/sbin/iptables -A PREROUTING -i ppp0 -p tcp -m tcp --dport 21 -j DNAT --to 192.168.1.222:21
Активен

"Да си добре приспособен към болно общество не е признак за добро здраве" - Джиду Кришнамурти

toti84

  • Напреднали
  • *****
  • Публикации: 115
    • Профил
Проблем с достъпа на proftpd
« Отговор #2 -: Apr 16, 2008, 12:54 »
За съжаление, като сменя мойто правило с твоето, отново го има този проблем.

Ако трябва да съм по-детайлен това съобщение:
Примерен код


An error occured openig that folder on FTP Server. Make sure you have permission to access that folder.


се показва от Windows машини.

Но при проба то Линукс, след мислене от около 5 мин. ми се отваря страница:

Примерен код


Index of ftp://192.***.***.**/

--------------------------------------------
Up to higher level directory
--------------------------------------------



И без да показва никакви папки при положене, че съм сигурен в това че трябва да има папки.
Активен

Slevin_

  • Напреднали
  • *****
  • Публикации: 182
    • Профил
Проблем с достъпа на proftpd
« Отговор #3 -: Apr 16, 2008, 14:06 »
Поради особеностите на ФТП протокола само пренасочване на 21 порт няма да стане.
Ето ти помощ от google proftpd passive mode  proftpd behind nat
Ако след прочетено отново не се получава, пиши какво точно си направил и ще помагаме с каквото можем.
Иначе е ясно от къде се получава проблема.



Активен

"Две неща на този свят са безкрайни - човешката глупост и вселената. За второто не съм съвсем сигурен" А. Айнщайн

neter

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 3408
  • Distribution: Debian, SailfishOS, CentOS
  • Window Manager: LXDE, Lipstick
    • Профил
    • WWW
Проблем с достъпа на proftpd
« Отговор #4 -: Apr 16, 2008, 14:49 »
Поради особеностите на FTP протокола, само пренасочване на порт 21 може да бъде достатъчно, ако се използват пасивни връзки, каквито се използват по подразбиране в клиентите. Ето четиво.
toti84, покажи изходите от тези команди
Примерен код
iptables -L
iptables -L -t nat
Активен

"Да си добре приспособен към болно общество не е признак за добро здраве" - Джиду Кришнамурти

toti84

  • Напреднали
  • *****
  • Публикации: 115
    • Профил
Проблем с достъпа на proftpd
« Отговор #5 -: Apr 16, 2008, 15:29 »
Ще карам подред:

към Slevin_

Използвах този пост за информация тук

като добавих тези двата реда в proftp.conf
Примерен код

DefaultAddress 192.168.1.222
PassivePorts 30000 30050

proftpd reload
добавих и следното правило на рутера :
Примерен код
-A INPUT -d 192.168.1.222 -p tcp --dport 30000:30050 -j ACCEPT


Но проблема продължава...

Към neter

Примерен код
iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
REJECT     tcp  --  anywhere             anywhere            tcp dpt:sunrpc reject-with icmp-port-unreachable
ACCEPT     tcp  --  anywhere             192.168.1.222       tcp dpts:30000:30050

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere
ACCEPT     all  --  anywhere             anywhere
ACCEPT     all  --  anywhere             anywhere
ACCEPT     all  --  anywhere             anywhere

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination


Примерен код
iptables -L -t nat
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination
DNAT       tcp  --  212.21.***.***/30     192.***.**.**       tcp dpt:radmin-port to:192.168.0.11:4899
DNAT       tcp  --  212.21.***.***/30     192.***.**.**       tcp dpt:5900 to:192.168.0.11:5900
DNAT       tcp  --  212.21.***.***/30     192.***.**.**       tcp dpt:jetdirect to:192.168.0.10:9100
DNAT       tcp  --  anywhere             192.***.**.**       tcp dpt:ipp to:192.168.1.119:631
DNAT       tcp  --  anywhere             anywhere            tcp dpt:ftp to:192.168.1.222

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination
SNAT       all  --  192.168.0.0/24       anywhere            to:192.***.**.**
SNAT       all  --  192.168.1.0/24       anywhere            to:192.***.**.**

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
Активен

shadow_qwe

  • Участници
  • ***
  • Публикации: 6
    • Профил
Проблем с достъпа на proftpd
« Отговор #6 -: Apr 16, 2008, 16:10 »
Ми по мое скромно мнение има няколко пропуска.

1. Не видях POSTROUTING верига да връща обратно към рутера отговорите на фтп сървъра.

2. Хубаво си сложил фтп сървърът да приема заявки на пасивните портове, но те трябва да идват от клиента и да се пренасочват от рутера към сървъра, (както е с 21 порт) и съответно с POSTROUTING верига да се връщат обратно.

Но ако ме питаш мен най -добре го изкарай на рутера си, иначе ще обясняваш на един куп хора защо IE не го отжаря и как да го накарат да работи в пасив мод



Активен

Slevin_

  • Напреднали
  • *****
  • Публикации: 182
    • Профил
Проблем с достъпа на proftpd
« Отговор #7 -: Apr 16, 2008, 16:59 »
Цитат (neter @ Април 16 2008,15:49)
... само пренасочване на порт 21 може да бъде достатъчно, ако се използват пасивни връзки, каквито се използват по подразбиране в клиентите.

Правилно neter, а къде му е пренасочването в маршрутизатора на портове за пасивните връзки.
И в конфигурационния файл на proftpd не ги виждам.
Чак след това е направил нещо по този въпрос.
Проблема му на 100% е след издаване на команда PASV от страна на клиента,

toti84, я пробвай, с директивата
MasqueradeAddress xxx.xxx.xxx.xxx
Където xxx.xxx.xxx.xxx е адреса на самия маршрутизатор.
И кажи какво се получава.



Активен

"Две неща на този свят са безкрайни - човешката глупост и вселената. За второто не съм съвсем сигурен" А. Айнщайн

VladSun

  • Напреднали
  • *****
  • Публикации: 2166
    • Профил
Проблем с достъпа на proftpd
« Отговор #8 -: Apr 16, 2008, 18:38 »
Освен всичко останало, ip_conntrack_ftp модулът зареден ли е?
Активен

KISS Principle ( Keep-It-Short-and-Simple )
http://openfmi.net/projects/flattc/
Има 10 вида хора на този свят - разбиращи двоичния код и тези, които не го разбират :P

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Проблем с достъпа на proftpd
« Отговор #9 -: Apr 16, 2008, 18:59 »
Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination
SNAT       all  --  192.168.0.0/24       anywhere            to:192.***.**.**
SNAT       all  --  192.168.1.0/24       anywhere            to:192.***.**.**

Абе на този твой рутер има ли въобще интерфейс с вдигнат публичен адрес? Защото ако не е така, проблемът е съвсем различен и невъзможността съответно да се реши проблема скача с няколко порядъка.



Активен

"Knowledge is power" - France is Bacon

toti84

  • Напреднали
  • *****
  • Публикации: 115
    • Профил
Проблем с достъпа на proftpd
« Отговор #10 -: Apr 17, 2008, 09:26 »
Пробвах с MasqueradeAddress дерективата и пак го има проблема

ip_conntrack_ftp модула е зареден

има вдингнат публичен адрес (192.***.**.**)
Активен

neter

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 3408
  • Distribution: Debian, SailfishOS, CentOS
  • Window Manager: LXDE, Lipstick
    • Профил
    • WWW
Проблем с достъпа на proftpd
« Отговор #11 -: Apr 17, 2008, 10:22 »
Областта 192.168.0.0 – 192.168.255.255 е резервирана за частни мрежи. Ако адресът ти започва със 192.168, то това е частен, а не публичен адрес и проблемът вече е ясен какъв е - просто външните машини нямат видимост до теб, защото си с частен адрес. Има публични мрежи, които започват със 192, на които втората група цифри не е 168, но не съм чувал някой в България да раздава такива адреси. Дори не съм сигурен къде се използват.
Активен

"Да си добре приспособен към болно общество не е признак за добро здраве" - Джиду Кришнамурти

Slevin_

  • Напреднали
  • *****
  • Публикации: 182
    • Профил
Проблем с достъпа на proftpd
« Отговор #12 -: Apr 17, 2008, 11:55 »
Х-м, я пробвай с някой онлайн порт скенер. Примерно
http://nmap-online.com/
http://www.t1shopper.com/tools/port-scanner/
neter ти е написал за частните адреси.
Но все пак, ако се ползва NAT 1:1

Май в темата само гадаеме.



Активен

"Две неща на този свят са безкрайни - човешката глупост и вселената. За второто не съм съвсем сигурен" А. Айнщайн

toti84

  • Напреднали
  • *****
  • Публикации: 115
    • Профил
Проблем с достъпа на proftpd
« Отговор #13 -: Apr 17, 2008, 13:18 »
E добре адреса ми е публичен (192.113.***.***)

и с nmap-online ми показва, че порт 21 ми е отворен
Активен

Slevin_

  • Напреднали
  • *****
  • Публикации: 182
    • Профил
Проблем с достъпа на proftpd
« Отговор #14 -: Apr 17, 2008, 23:34 »
Ти осъществяваш комуникацията по порт 21, но този порт се ползва за командите към сървара. Транспортирането на информация(Data) м/у самия сървър и клиента се осъществява по други портове в зависимост дали ще е в активен или пасивен режим.
В един от предишните постове имаше линк, в който нагледно са описани двата режима.
Ето ти още едно четиво за спецификацията на FTP протокола RFC 959
При теб явно проблема е с виждането на съдържанието на сървара.
Вземи с някой FTP клиент и направи опит да се вържеш отвън през  192.113.***.***
Гледай лога и кажи в кой момент се дъни.
Или направо "пусни" лога тук да го видим.
Активен

"Две неща на този свят са безкрайни - човешката глупост и вселената. За второто не съм съвсем сигурен" А. Айнщайн

Подобни теми
Заглавие Започната от Отговора Прегледи Последна публикация
proftpd
Настройка на програми
webster 0 4773 Последна публикация Feb 27, 2003, 00:44
от webster
ProFTPD
Настройка на програми
Gorbachov 1 4469 Последна публикация Jun 25, 2003, 18:09
от sunhater
ProFTPd
Настройка на програми
mozly 12 6892 Последна публикация Nov 24, 2003, 19:45
от mozly
квоти при ProFTPd
Настройка на програми
FuckBTK 4 4558 Последна публикация Dec 31, 2004, 02:54
от FuckBTK
Proftpd mod
Настройка на програми
Rikko 5 4566 Последна публикация Feb 07, 2005, 20:25
от Rikko