The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Proftpd+виртуальный интерфейс"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Proftpd+виртуальный интерфейс" 
Сообщение от redmoon emailИскать по авторуВ закладки(ok) on 06-Июл-05, 14:43  (MSK)
ситуация следующая.
есть linux-машина, на ней крутиться proftpd только для внутренней сети. Эта машина подключена к миру.
возникла необходимость:
поднять на этой машине виртуальный интерфейс, и разрешить вход по фтп                                                               на этот интерфейс, только пользователю dead не только с внутреней сети, но и ИЗ МИРА.
172.23.1.x - внутренняя сетка.
62.76.70.х - внещние (белые) ип-адреса.
62.76.70.1 - адресс физической сетевой карты в машине. (eth0)
62.76.70.210 - виртуальный ип-адресс машины, весящий на той же сетевой карте.(eth0:1)
мои действия:
делаю интерфейс:
/sbin/ifconfig eth0:1 62.76.70.210 netmask 255.255.255.252 up
вот конфиг iptables, который фильтрует, так что бы на этот фтп был доступ только своим (ДО):
-A INPUT -s 172.23.1.0/255.255.255.0 -p tcp -m tcp --dport 21 -j ACCEPT
-A INPUT -s 62.76.70.0/255.255.255.0 -p tcp -m tcp --dport 21 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 21 -j DROP

Вот после, для пользователя dead:

-A INPUT -s 62.76.70.0/255.255.255.0 -p tcp -m tcp --dport 21 -j ACCEPT
-A INPUT -s 62.76.70.0/255.255.255.0 -p tcp -m tcp --dport 21 -j ACCEPT
-A INPUT -p tcp -m tcp -d 62.76.70.210 --dport 21 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 21 -j DROP

вот конфиг ProFTPd до:

ServerName                      "WarFTPd"
ServerType                      standalone
DefaultServer                   on
ServerIdent                     off
RootLogin                       on
Port                            21
AllowForeignAddress             on
Umask                           022
MaxInstances                    30
User                            ftp
Group                           ftp
MaxClients      30              "Too many connection"
#MaxClientsPerHosts 4           "%m clients already connect from your host, more clients can't connect!!!"
MaxLoginAttempts 3              "Too many tries to connect"
DisplayConnect /etc/proftpd/ftp_connect.msg
AllowOverride   on
AllowOverwrite on
AccessDenyMsg "ATTENTION!!! ALL CONNECTIONS LOGED"
AccessGrantMsg "Now apload/download files"
DisplayGoAway "Good bye!!!"
TimeoutIdle 180
TimeoutLogin 120
TimeoutNoTransfer 360
TimeoutStalled 640
DefaultRoot / root
DefaultRoot ~
UseReverseDNS off
IdentLookups off
DenyFilter \*.*/
PathDenyFilter "(^|/)[-]"
TransferLog /var/log/proftpd/proftpd-transfer.log
SystemLog /var/log/proftpd/proftpd-error.log
ExtendedLog /var/log/proftpd/proftpd-extended.log read,write

###########################################
<Directory /home/ftp>
    <Limit READ WRITE>
        Order allow,deny
    </Limit>
</Directory>
<Directory ~/*>
    AllowOverwrite on
    <Limit SITE_CHGRP SITE_CHMOD>
        IgnoreHidden off
        Order deny,allow
        ................
        ................
   </Limit>
</Directory>
<Anonymous /home/ftp>
        User ftp
        Group ftp
        UserAlias anonymous ftp
        RequireValidShell no
        PathDenyFilter "(^|/)[-.]"
        <Directory /home/ftp>
            <Limit WRITE>
                Order allow,deny
                DenyAll
            </Limit>
        </Directory>
        <Directory /home/ftp/incoming>
            <Limit READ>
                Order allow,deny
                Allow from 62.76.70.,172.23.1.
                Deny from all
            </Limit>
            <Limit WRITE MKD DELE RMD>
                Order allow,deny
                Allow from 62.76.70.,172.23.1.
                Deny from all
            </Limit>
       </Directory>
</Anonymous>

#############################################
<Global>
    <Limit LOGIN>
        IgnoreHidden off
        Order Allow,Deny
        Allow from 62.76.70.,172.23.1.
        Deny from all
    </Limit>
   <Limit SITE_CHGRP SITE_CHMOD>
    Order deny,allow
    ................
    ................
  </Limit>
</Global>


                           вот после:

<Directory /home/ftp>
    <Limit READ WRITE>
        Order allow,deny
    </Limit>
</Directory>
<Directory ~/*>
    AllowOverwrite on
    <Limit SITE_CHGRP SITE_CHMOD>
        IgnoreHidden off
        Order deny,allow
        ................
        AllowUser dead
        ................
   </Limit>
</Directory>
<Anonymous /home/ftp>
        User ftp
        Group ftp
        UserAlias anonymous ftp
        RequireValidShell no
        PathDenyFilter "(^|/)[-.]"
        <Directory /home/ftp>
            <Limit WRITE>
                Order allow,deny
                DenyAll
            </Limit>
        </Directory>
        <Directory /home/ftp/incoming>
            <Limit READ>
                Order allow,deny
                Allow from 62.76.70.,172.23.1.
                Deny from all
            </Limit>
            <Limit WRITE MKD DELE RMD>
                Order allow,deny
                Allow from 62.76.70.,172.23.1.
                Deny from all
            </Limit>
       </Directory>
</Anonymous>

#############################################
<Global>
    <Limit LOGIN>
        IgnoreHidden off
        Order Allow,Deny
        Allow from 62.76.70.,172.23.1.
        AllowUser dead
        Deny from all
    </Limit>
   <Limit SITE_CHGRP SITE_CHMOD>
    Order deny,allow
    ................
    AllowUser dead
    ................
  </Limit>
</Global>
все запускаем:
и проверяем из мира:
$ftp
$ftp> open ftp.myhost.ru (этому домену соответ)
user:dead
password:xxxxxxxxx
login OK!
ftp>ls -l


и все... и так висит намерово.
В логах вот что :
Jul 06 13:57:16 ftp.myhost.ru proftpd[9283] myhost.ru (172.23.1.99[172.23.1.99]): USER dead: Login successful.
Jul 06 13:58:17 ftp.myhost.ru proftpd[9267] myhost.ru (172.23.1.16[172.23.1.16]): FTP session closed.
то есть .. никакой ругани.
Пробовал зайти через тотал командер из мира, он висит на этапе "ENTER TO PASV MODE"
что делать ? может быть фтп сервер + виртуальный интерфейс недопустимая ситуация ?
натолкните.
заранее спасибо

  Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "Proftpd+виртуальный интерфейс" 
Сообщение от jonatan Искать по авторуВ закладки(ok) on 06-Июл-05, 14:55  (MSK)
1. Добавьте перед правилами
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

2. Проверьте наличие модуля
ip_conntrack_ftp

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Proftpd+виртуальный интерфейс" 
Сообщение от jonatan Искать по авторуВ закладки(ok) on 06-Июл-05, 15:06  (MSK)
Естественно в OUTPUT тоже должны быть разрешены исходящие пакеты.
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "Proftpd+виртуальный интерфейс" 
Сообщение от redmoon emailИскать по авторуВ закладки(ok) on 06-Июл-05, 15:14  (MSK)
>1. Добавьте перед правилами
>iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
>
>2. Проверьте наличие модуля
>ip_conntrack_ftp
простите, не очень селен в юникс, только начинаю.
добавил "iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT" перед правилами, касающимися фтп,вот что получилось:
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -s 172.23.1.0/255.255.255.0 -p tcp -m tcp --dport 21 -j ACCEPT
-A INPUT -s 62.76.70.0/255.255.255.0 -p tcp -m tcp --dport 21 -j ACCEPT
-A INPUT -d 62.76.70.210 -p tcp -m tcp --dport 21 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 21 -j DROP
сделал iptables -F
iptables-restore /root/iptables.save
не помогло, таже картина:
# ftp ftp.myhost.ru
Connected to ftp.myhost.ru
220 ftp.myhost.ru FTP server ready
Name (ftp.myhost.ru:dead): dead
331 Password required for dead.
Password:
230 Now apload/download files
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls -al
тут висим намертво.
Как проверить наличие модуля ?
вот что мне показал lsmod:
#lsmod
Module                  Size  Used by    Not tainted
ipt_state               1304   2  (autoclean)
ip_conntrack           28776   1  (autoclean) [ipt_state]
ide-cd                 32320   0  (autoclean)
cdrom                  32512   0  (autoclean) [ide-cd]
iptable_filter          2504   1  (autoclean)
ip_tables              14584   2  [ipt_state iptable_filter]
iscsi_module          146668   0
autofs                 12244   0  (autoclean) (unused)
eepro100               21556   2
mii                     4108   0  [eepro100]
appletalk              28292   0  (autoclean)
ipx                    23844   0  (autoclean)
microcode               4864   0  (autoclean)
nls_iso8859-1           3484   1  (autoclean)
nls_cp437               5116   1  (autoclean)
vfat                   12268   1  (autoclean)
fat                    38456   0  (autoclean) [vfat]
usb-ohci               21896   0  (unused)
usbcore                77440   1  [usb-ohci]
ext3                   68832   4
jbd                    51592   4  [ext3]
raid1                  15660   3
aic7xxx               134868   9
sd_mod                 12812  18
scsi_mod              112796   3  [iscsi_module aic7xxx sd_mod]
я так понял, что этого модуля среди них нет.Тогда можно ссылку на доку, о том, как его вкомпилить?
на оутпут стоит ACCEPT по дефолту.
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "Proftpd+виртуальный интерфейс" 
Сообщение от jonatan Искать по авторуВ закладки(ok) on 06-Июл-05, 15:27  (MSK)
>сделал iptables -F
Этим Вы удалили все правила. Покажите iptables -nvL

>я так понял, что этого модуля среди них нет.Тогда можно ссылку на
>доку, о том, как его вкомпилить?
modprobe ip_conntrack_ftp

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

7. "Proftpd+виртуальный интерфейс" 
Сообщение от redmoon emailИскать по авторуВ закладки(ok) on 06-Июл-05, 15:35  (MSK)
>>сделал iptables -F
>Этим Вы удалили все правила. Покажите iptables -nvL
>
>>я так понял, что этого модуля среди них нет.Тогда можно ссылку на
>>доку, о том, как его вкомпилить?
>modprobe ip_conntrack_ftp
я знаю что ключиком -F я снес правила.
я не на лету их конфигурю, я правлю /root/iptables.save - конфих сохраненных правил.
а потом перезапускаю сам сервис iptables -F(сбрасываю) и iptables-restore /root/iptables  - восстанавливаю.
похоже вопрос снимается, я пассивный режим убрал при заходе по фтп на виртуальный интерфейс .. и меня пустило.

э-э-э-э-э ..
а почему тогда у меня они наглухо закрыты, а юзеры из интранет, и из интернет по крайней мере на физический(не виртульный) интерфейс нормально ходят по 21 порту ?

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

8. "Proftpd+виртуальный интерфейс" 
Сообщение от jonatan Искать по авторуВ закладки(ok) on 06-Июл-05, 15:45  (MSK)
>похоже вопрос снимается, я пассивный режим убрал при заходе по фтп на
>виртуальный интерфейс .. и меня пустило.
Разберитесь, как работаю активный и пассивным режимы ftp. Все проблемы от незнания протокола.

>э-э-э-э-э ..
>а почему тогда у меня они наглухо закрыты, а юзеры из интранет,
>и из интернет по крайней мере на физический(не виртульный) интерфейс нормально
>ходят по 21 порту ?
Скорее всего используют активный режим или для внутренних клиентов разрешены все соединения.

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "Proftpd+виртуальный интерфейс" 
Сообщение от Alexs Искать по авторуВ закладки(??) on 06-Июл-05, 15:30  (MSK)
А кто за вас будет открывать эти порты?
ftp-data         20/tcp    # File Transfer [Default Data]
ftp-data         20/udp    # File Transfer [Default Data]

Они нужны для передачи данных

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "Proftpd+виртуальный интерфейс" 
Сообщение от jonatan Искать по авторуВ закладки(ok) on 06-Июл-05, 15:31  (MSK)
Достаточно того, что я написал. Тем более, что коносльный ftp по-умолчанию работает в пассивном режиме и 20-й порт не используется.
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх


Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ]
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру