Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС для молодых и начинающих системных администраторов.
Mar 8 16:49:54 proftpd[25267]: ftp.err<91> server - Fatal: unable to open incoming connection: Transport endpoint is not connected
Примерно по одной в минуту (иногда больше иногда меньше). Отключение фаервола, субъективно, уменьшает количество ошибок, но не сильно. При работе с FTP лично я проблем не заметил, но 1 человек из 50 статистически не значим.
я себе (а в данный момент и никому другому) порты точно не сканирую, а как узнать не сканируют ли их мне? Вообще сомнительно что бы кто-то начал сканировать мне порты сразу после обновления proftpd
Фаервол работает и пакеты отбрасывает и логи пишет. Причём отбрасывает он много, на 400Мб логов за 6 дней (это только сообщения о заблокированных пакетах).
Запустил:
tcpdump -n -i ppp0 dst portrange 21000-25000 and dst host 85.202.112.247
21000-21500 порты используемые proftpd для передачи данных в пассивном режиме.
21000-25000 диапазон портов не блокируемый фаерволом (так же открыты 21й, и ещё два порта номера которых я не помню), открыл с запасом.
85.202.112.247 мой внешний IP.
При выключенном proftpd ни одного пакета не пришло. При выключенном паеты приходят
Если расширить диапазон портов то будет получена масса пакетов с различных адресов на различные порты (закрытые на фаерволе и далёкие от тех которые обычно интересуют «злоумышленников». например 64125, 40756, 33748). Это я к тому что tcpdump работает с параметрами я ничего не напутал.
В общем сканирования портов либо нет либо хитроумный хацкер сканирует их только когда proftpd поднят.
Ошибки не прекратились, хоть их и стало меньше (кажется).
P.S. так же натравливал tcpdump на другие интерфейсы (на случай если сканируют не из инета), пакетов на интересующие порты не приходило.
Могла эта проблема возникнуть от нехватки памяти?
Сейчас глянул: свободно 40мб из 2Гб. top сказал что больше всего едят иксы, но «больше всего» это что-то порядка полутора процентов, а кроме иксов в памяти висела куча процессов proftpd (каждый кушал по 0.1%).
Отключил автозагрузку иксов (давно собирался, руки не доходили) и перезагрузил сервак. Какое-то время ошибок не было и памяти было занято всего ничего. Через какое-то время я примонтировал с сервера на рабочую станцию /media по sshfs (руки не доходят NFS поднять или что-то в этом роде). Спустя ещё какое-то время заметил что вырос расход памяти (метров на 300) и ещё через какое-то время опять начали сыпаться ошибки.
P.S. расход памяти неуклонно растёт, свободен 1Гб, аптайм час.
Могла эта проблема возникнуть от нехватки памяти?
Сейчас глянул: свободно 40мб из 2Гб. top сказал что больше всего едят иксы, но «больше всего» это что-то порядка полутора процентов, а кроме иксов в памяти висела куча процессов proftpd (каждый кушал по 0.1%).
Отключил автозагрузку иксов (давно собирался, руки не доходили) и перезагрузил сервак. Какое-то время ошибок не было и памяти было занято всего ничего. Через какое-то время я примонтировал с сервера на рабочую станцию /media по sshfs (руки не доходят NFS поднять или что-то в этом роде). Спустя ещё какое-то время заметил что вырос расход памяти (метров на 300) и ещё через какое-то время опять начали сыпаться ошибки.
P.S. расход памяти неуклонно растёт, свободен 1Гб, аптайм час.
UPD:
uptime 1:20, свободно 50Мб RAM, остановил proftpd, память не освобождается. top показывает что за первое место по потреблению памяти борются hald и bash с 0.2%, из брёх гигов swapа используется меньше метра.
Такие дела.
ошибки продолжаются, но значительно реже, вчера за весь день ни одной не было. Подозреваю что ошибку вызывает попытка доступа к какому-то конкретному файлу или файлам. Тот факт что ошибки стали происходить значительно реже косвенно это подтверждает: человек устал пытаться скачать проблемный файл.
К сожалению proftpd пишет крайне не подробные логи (да удивление не подробные), даже с SyslogLevel debug, так что к каким файлам пытаются получить доступ перед ошибкой я понять не могу.
В Linux есть что-то вроде файловой системы в RAM, только что бы данные писались не в RAM а в /dev/null, ну или что-то в этом роде. ходу попробовать выкачать весь FTP и посмотреть на каком файле сбойнёт. Хотя наверняка есть пути легче, в общем посоветуйте.
Тоже про него думал, не понравилось что с конфигурационным файлом что-то не то придумали. И какой-то он не гибкий по части настроек.
Что ещё можешь посоветовать? Что бы с кириллицей дружил и имел гибкие настройки виртуальных пользователей. Ну и нагрузку высокую держал.
Кстати с недавних пор ошибки стали «англофицированными»:
Mar 12 01:46:45 proftpd[17128]: ftp.err<91> server - Fatal: unable to open incoming connection: Transport endpoint is not connected
и имел гибкие настройки виртуальных пользователей.
Что именно подразумеваете под гибкостью?
Возможность как следует настроить виртуальных пользователей (не связанных с unix-пользователями), права доступа к отдельным директориям, квоты и так далее. В proftpd с этим кажется всё хорошо, правда права задаются в виде разрешённых и запрещённых FTP команд, так что приходится читать маны.
Возможность как следует настроить виртуальных пользователей (не связанных с unix-пользователями), права доступа к отдельным директориям, квоты и так далее.
Все это pure-ftpd делает по-умолчанию: и квоты, и 3 вида доступа,которые способны сосуществовать вместе (unix, собственная база, внешние базы) и разграничение прав на каталоги, и ширина канала на загрузку/скачку, и число одновременных подключений с одного акка, и число одновременно открытых файлов, и разрешенные/запрещенные ип-адреса, и временной диапазон подключений и т.д., и .т.п. Чего там только нет. Вот вам документация.
Человек, говорящий, что это невозможно сделать, не должен мешать тому, кто это делает.
Почему у меня все читается из конфига по-умолчанию? Изучите, как в убунте происходит запуск скриптов.
Сервак на Debian, но это значения я полагаю не имеет.
Тестировал pure-ftpd на десктопе с убунтой, в /etc создал директорию и в ней несколько файлов, имя файла соответствует опции, содержимое её значению. закинул туда же конфиг файл (скопипастил от куда-то) с содержимым вида параметр=значение (или как-то так), он его читать отказался (что в общем-то понятно). На мой вкус по файлу на каждую опцию (а как сделать иначе я не разобрался, что возвращает к теме танцев с бубном) это извращение.
Хз, как там в дебиане. Напишите скрипт в ручную со стартом сервера с заданными ключами. Что-то вроде
Да это-то понятно. Но я бы не сказал что это нормально. К тому же не представляю как таким образом конфигурировать виртуальных юзеров со сложными правами доступа (сюда сисать может, сюда нет и так на несколько директорий), если только это всё будет во внешних базах данных.
Вчера поставил vsftpd, но он почему-то по умолчанию запускается от root-а, видимо надо править стартовый скрипт в /etc/init.s/ (или я чего-то недопонял?) и вот на этом этапе мне вдруг стало так лениво…