Не работает ftp linux

Содержание
  1. перестал работать FTP
  2. FTP — частые проблемы
  3. Содержание
  4. По ftp не видно файлов .htaccess
  5. Не могу зайти пользователем root
  6. Не могу подключиться по FTP
  7. Debian
  8. Установлен ли FTP-сервер
  9. Запущен ли FTP-сервер (открыт ли 21 порт)?
  10. Запрет для пользователя
  11. Security или Firewall
  12. CentOS
  13. Установлен ли FTP-сервер?
  14. Запущен ли FTP-сервер? (открыт ли 21 порт)
  15. Запрет для пользователя.
  16. Security или Firewall
  17. Ubuntu
  18. Установлен ли FTP-сервер?
  19. Запущен ли FTP-сервер? (открыт ли 21 порт)
  20. Запрет для пользователя.
  21. Security или Firewall
  22. Не подключается к ftp?
  23. Почему не работает ftp в ubuntu 18.04?
  24. Настройка и использование FTP-сервера в Ubuntu Linux
  25. 1. Введение
  26. 2. Соглашения
  27. 3. Что такое FTP
  28. 4. Установка FTP-сервера в Ubuntu
  29. 5. Нормальный и автономный режимы работы FTP
  30. 5.1. Автономный режим
  31. 5.2. Нормальный режим
  32. 6. Создание первого подключения по FTP
  33. 7. Настройка FTP-сервера
  34. 7.1. Настройка пользовательского доступа
  35. 7.1.1. Анонимный доступ к FTP
  36. 7.1.2. Доступ локальных пользователей по FTP
  37. 7.1.3. Список доступа пользователей
  38. 7.2. Смена номера порта
  39. 7.3. Другие опции конфигурации
  40. 8. Заключение

перестал работать FTP

вчера после установки меил сервера перестал работать фтп(( переустановил 3 разных фтп и проблема во всех одна и таже(( подключаюсь файлзиллой и она выдает лог

Ответ: 200 Type set to I

Ответ: 227 Entering Passive Mode (195,208,184,56,206,132).

Ошибка: Превышено время ожидания соединения

до установки мэйл сервера все работало как часы, после установки появились правила в iptables(раньше небыло никаких правил вообще)

root@mail:/etc/proftpd# iptables -L

Chain INPUT (policy DROP)

target prot opt source destination

ACCEPT all — anywhere anywhere state RELATED,ESTABLISHED

ACCEPT tcp — anywhere anywhere multiport dports ftp,www,https,smtp,ssmtp,pop3,pop3s,imap2,imaps,submission,ssmtp,ssh

ACCEPT all — anywhere anywhere

ACCEPT icmp — anywhere anywhere icmp echo-request

остальные CHAIN пустые, пробовал добавить

что делать уже не знаю((

Может, мейлсервер занял порт фтп, хотя вряд ли.

если выключить фтп сервер то 21 порт исчезает из нетстата

проблема решилась, вбил в консоль modprobe ip_conntrack_ftp

modprobe это же вроде загрузка модуля, не? Или в Linux’е уже ftp-сервер — модуль ядра? 🙂 Объясните?

да хз как тут обьяснить, сначала все работало без всяких модулей, потом установился меил сервер(связка прог) и внеслись записи в iptables которых раньше не было вообще и перестал работать фтп.

я внес порты 20,21 в разрешенные порты фаервола и начали частично проходить соединения, можно даже было ввести логин и пароль, но потом оно какбы зависало на команде MLSD и все, дальше дело не шло, перепробовал 3 разных фтп, везде одно и тоже. а когда подгрузил модуль то сразу все заработало.

Я не понял что это за модуль ядра, а в гугле забанили.

Это поддержка подключений на фтп в ядре, когда фтп за натом емнип оно необходимо. В туториале по иптоблесам всё написано.

>Это поддержка подключений на фтп в ядре, когда фтп за натом емнип оно необходимо. В туториале по иптоблесам всё написано.

Не хотелось бы разводить бессмысленные дискуссии, но либо вы ошибаетесь, либо это что-то ужасное. Ведь достаточно пробросить порт, зачем модули ядра?

Заметьте, что загружать модули ip_nat_irc и ip_nat_ftp вам потребуется только в том случае, если вы хотите, чтобы преобразование сетевых адресов (Network Adress Translation) производилось корректно с протоколами FTP и IRC. Так же вам потребуется подгрузить модули ip_conntrack_irc и ip_conntrack_ftp до загрузки модулей NAT.

Изначально протокол предполагал встречное TCP-соединение от сервера к клиенту для передачи файла или содержимого каталога. Это делало невозможным общение с сервером, если клиент находится за IP NAT, кроме того, часто запрос соединения к клиенту блокируется файерволом. Чтобы этого избежать, было разработано расширение протокола FTP passive mode, когда соединение для передачи данных тоже происходит от клиента к серверу. Важным моментом является то, что клиент устанавливает соединение с адресом и портом, указанным сервером. Порт сервер выбирает случайным образом из определённого диапазона (49152-65534). Поэтому при нахождении ftp-сервера за NAT, следует явно указать в настройках сервера его адрес.

Источник

FTP — частые проблемы

Статья давно не обновлялась, поэтому информация могла устареть.

Содержание

По ftp не видно файлов .htaccess

В *nix системах все файлы начинающиеся с точки считаются скрытыми. Обычно в настройках ftp клиента есть галочка «показывать скрытые файлы». Для вашего же удобства используйте FTP клиент: Filezilla, который доступен для бесплатного скачивания на официальном сайте: http://filezilla.ru/ Так же возможно сделать чтобы ftp сервер их всегда отображал. Для proftpd надо прописать в файл (для FreeBSD) /usr/local/etc/proftpd.conf строку

В шаблонах с ISPmanager данная опция, как правило, прописана по-умолчанию

Не могу зайти пользователем root

Так как протокол ftp не предполагает шифрования то во время передачи сравнительно легко украсть пароль. Из соображений безопастности доступ пользователем root по ftp отключен. Это стандартная настройка. Если вам всё же необходимо иметь доступ к серверу через ftp протокол, то используйте протокол SFTP.

Не могу подключиться по FTP

Debian

Установлен ли FTP-сервер

Удостоверьтесь, что сервер установлен и сервис запущен, в Debian вы можете использовать команду dpkg:

Или запустить следующую команду:

В любом случае, если ftp пакет установлен, будет возвращен ответ сервера, если ftp не установлен, команда покажет вам это, или не будет ответа вообще, в таком случае FTP сервер необходимо установить:

Запущен ли FTP-сервер (открыт ли 21 порт)?

Подключитесь к серверу, используя ssh, и попробуйте команду telnet (посмотреть открыт ли 21 порт):

Следующим шагом запускаем команду netstat -tulpn, смотрим запущен ли 21 порт:

Или попробуйте следующую команду:

Если порт не открыт, запустите ftp-сервис/сервер. Используйте следующую команду:

Запрет для пользователя

Если у пользователя не получается использовать ваш ftp сервер, удостоверьтесь, что он имеет разрешение. Файл /etc/ftpusers — список пользователей, которым запрещен доступ по ftp, убедитесь, что пользователь не в этом файле.

Security или Firewall

Убедитесь, что firewall/tcpd не блокирует подключение к вашему ftp серверу. Запустите следующую команду:

Если в ответе вы увидите, что 21 порт заблокирован firewall, вам нужно использовать iptables rules для порта 21. Так же убедитесь, что файл /etc/hosts.deny не блокирует подключение к 21 порту для вашего хоста.

CentOS

Установлен ли FTP-сервер?

Удостоверьтесь, что сервер установлен и сервис запущен, в CentOS вы можете использовать команду rpm:

В любом случае, если ftp пакет установлен, будет возвращен ответ сервера, если ftp не установлен, команда покажет вам это, или не будет ответа вообще, в таком случае FTP сервер необходимо установить:

Запущен ли FTP-сервер? (открыт ли 21 порт)

Подключитесь к серверу, используя ssh, и попробуйте команду telnet (посмотреть открыт ли 21 порт:

Следующим шагом запускаем команду netstat -tulpn, посмотреть запущен ли 21 порт:

Или попробуйте следующую команду:

Если порт не открыт, запустите ftp-сервис/сервер. Используйте следующую команду: Centos 6

Запрет для пользователя.

Если у пользователя не получается использовать ваш ftp сервер, удостоверьтесь, что он имеет разрешение. Файл /etc/ftpusers — список пользователей, которым запрещен доступ по ftp, убедитесь, что пользователь не в этом файле.

Security или Firewall

Убедитесь, что firewall/tcpd не блокирует подключение к вашему ftp серверу. Запустите следующую команду:

Если в ответе вы увидите, что 21 порт заблокирован firewall, вам нужно использовать правила iptables для порта 21. Так же убедитесь, что файл /etc/hosts.deny не блокирует подключение к 21 порту для вашего хоста.

Ubuntu

Установлен ли FTP-сервер?

Удостоверьтесь, что сервер установлен, в Ubuntu вы можете использовать команду dpkg:

В любом случае, если ftp-пакет установлен, будет возвращен ответ сервера, если ftp не установлен, команда покажет вам это, или не будет ответа вообще, в таком случае FTP-сервер необходимо установить:

Запущен ли FTP-сервер? (открыт ли 21 порт)

Подключитесь к серверу, используя ssh, и попробуйте команду telnet (посмотреть открыт ли 21 порт):

Следующим шагом запускаем команду netstat -tulpn, посмотреть запущен ли 21 порт:

Или попробуйте следующую команду:

Если порт не открыт, запустите FTP-сервис/сервер. Используйте следующую команду:

Запрет для пользователя.

Если у пользователя не получается использовать ваш FTP-сервер, удостоверьтесь, что он имеет разрешение. Файл /etc/ftpusers — список пользователей, которым запрещен доступ по FTP, убедитесь, что пользователь не в этом файле.

Security или Firewall

Убедитесь, что firewall/tcpd не блокирует подключение к вашему ftp-серверу. Запустите следующую команду:

Источник

Не подключается к ftp?

на сервере:
# netstat -nlp | grep ‘:21’
должен показать процесс ftpd или что там у Вас, и адреса которые он слушает. должно быть 0.0.0.0:21 или ваш ip к которому соединяетесь ftp клиентом.

на сервере же запустить ftp клиент и соединиться тем адресом который точно случает ftp демон. Самый простой вариант поставить midnight commander запустить его и в нём ввести команду (предположим что сервер слушает 0.0.0.0, а значит и 127.0.0.1):
cd ftp://имяфтппользователя:пароль@127.0.0.1
в случае успеха увидите каталог ftp сервера.

# iptables -nvL INPUT
должно показать правила из которых следует что 21 порт принимается на нужном интерфейсе с нужного IP клиента. Если прописано правило для 21 порта (лучше прописать) то увидите счётчик пакетов. Если от момента рестарта iptables Вы пробовали с клиента соединиться счётчик должен быть ненулевой.

добавить модуль ip_nat_ftp и рестартануть IPTABLES

смотрим что там с AppArmor он тоже может блокировать доступ.
# aa-status

обычно на убунте по умолчанию не используют SELinux но проверить стоит.
# getenforce
Если активировано — временно можно отключить и попробовать соединиться снова.

Логи, любимое админское чтиво:

Сначала нужно добиться соединения с локального ftp клиента, затем пробовать с удалённого.

PS извиняюсь но Ваши настройки смотреть не стал после того как увидел сколько JS скриптов с разных сайтов хочет подсунуть этот . сайт ради картинки.

Источник

Почему не работает ftp в ubuntu 18.04?

делаю по гайду
https://andreyex.ru/ubuntu/kak-ustanovit-ftp-serve.
вроде все просто расписано , не хуже чем на офф сайте ,
мой конфиг файл выглядит таким образом
sudo nano /etc/vsftpd.conf

статус сервера

пробую подключится через winscp с включенным шифрованием как положено

а оно просит снова пароль

как этот ftp победить уже не знаю)) помогите

UPD после попытки входа статус сервера говорит:

  • Вопрос задан более года назад
  • 625 просмотров

Владимир, а чем плохо картинкой? Тут же копировать нечего не нужно , а вот что выдал сервер я уже текстом выложил , что за зверь такой pam_encfs[14002]: Could not getpwnam

в /etc/vsftpd.user_list записано имя пользователя с которым я пытаюсь зайти

Владимир, вот с таким вариантом

то есть без шифрования и листа пользователей , просто говорит «Доступ запрещен»

sudo usermod -d /srv/ftp ftp
sudo addgroup ftpuser
sudo useradd -d /srv/ftp -g ftpuser ftpuser
sudo passwd ftpuser

sudo chmod 555 /srv/ftp
sudo chown ftpuser:ftpuser /srv/ftp

Источник

Настройка и использование FTP-сервера в Ubuntu Linux

1. Введение

Практически каждый пользователь, хотя бы иногда работающий в интернете, сталкивался с FTP. В данном руководстве детально и пошагово описывается, как устанавливать FTP-сервер в Ubuntu Linux. Мы покажем, как установить его в нормальном и автономном режимах, а также как обеспечить его безопасность. Мы будем использовать легкий и эффективный FTP-сервер vsFTPd, предназначенный для работы на высоконагруженных серверах.

2. Соглашения

Далее в этой статье мы будем говорить просто об FTP-сервере, подразумевая vsFTPd.

3. Что такое FTP

Для тех, кто не знаком с FTP, ниже представлено краткое описание его возможностей. FTP расшифровывается как File Transfer Protocol. Название подразумевает, что этот протокол используется для передачи файлов или директорий с одного хоста на другой по сети — как локальной, так и через интернет.
Главные возможности vsFTPd: настройки для виртуальных IP, виртуальные пользователи, сетевые или автономные операции, большой спектр пользовательских настроек, регулирования пропускной способности канала, настройка лимитов по IP, поддержка IPv6 и шифрования (с помощью SSL).

4. Установка FTP-сервера в Ubuntu

Как всегда в Ubuntu и системах на ее основе, установка FTP-сервера выполняется одной командой. Откройте терминал и введите:

После выполнения этой команды сервер будет установлен и запущен.

5. Нормальный и автономный режимы работы FTP

5.1. Автономный режим

По умолчанию vsftpd запускается в автономном режиме, в котором запускаемая на сервере служба использует собственный стартовый скрипт, называемый демоном. В случае vsftpd это /etc/init.d/vsftpd. Данный автономный демон в момент старта службы FTP берет управление нею на себя. Демон vsftpd предоставляет администратору несколько команд для управления FTP-сервером vsftpd:

start или stop — используется для запуска или остановки ftp-сервера.
status — выводит подробную информацию о текущем состоянии вашего FTP-сервера.
restart — это альтернатива последовательности из остановки и запуска сервера. Если сервер уже остановлен, команда restart запустит его.
reload — эта команда позволяет перезагрузить и применить все новые настройки. Ее отличие от restart заключается в том, что применение новых настроек производится без остановки сервера.
Для запуска, перезагрузки и применения новых настроек используется утилита service:

Такой синтаксис применяется для выполнения всех команд.

5.2. Нормальный режим

Другой подход к запуску vsftpd — это нормальный режим, в котором за работу службы отвечает суперсервер xinetd. Для запуска сервера vsftpd в нормальном режиме необходимо сначала установить суперсервер xinetd:

Приведенная выше команда устанавливает и запускает суперсервер xinetd. В случае, если он у вас уже установлен, эта команда не нужна. Далее, создайте файл vsftpd в директории /etc/xinetd.d/ со следующим содержимым:

В то же время вы можете изменять любые опции, чтобы настроить суперсервер в соответствии со своими требованиями.
Опции, на которые стоит обратить внимание:
server — введите в командной строке «$ which vsftpd», чтобы узнать правильный путь.
no_access — все хосты с IP-адресами, указанными в этой директиве, будут блокированы.
banner_fail — здесь можно указать путь к текстовому файлу, содержимое которого будет показано для любых блокированных IP-адресов.

Далее нам необходимо отредактировать конфигурационный файл FTP-сервера /etc/vsftpd.conf, заменив строку

Эта директива даст команду FTP-серверу не открывать никаких портов, полностью перепоручив их суперсерверу xinetd. Перед тем, как запустить сервер в нормальном режиме, убедитесь, что демон vsftpd отключен:

Теперь можно запустить FTP-сервер в нормальном режиме с помощью команды:

Чтобы убедиться в нормальной работе FTP-сервера, протестируйте и откройте порт 21 с помощью команды netstat:

6. Создание первого подключения по FTP

Независимо от того, запустили ли вы FTP-сервер в автономном, или в нормальном режиме, вы можете создать первое локальное ftp-подключение. По умолчанию vsftpd разрешает автономный доступ, поэтому при создании нашего первого тестового подключения в качестве имени пользователя мы будем использовать anonymous. Для этого просто введите команду ftp с аргументом localhost:

Успешное подключение подтверждает, что FTP-сервер в локальной системе настроен правильно. Но перед тем, как перейти к более тонким настройкам, необходимо протестировать FTP-сервер и с нескольких удаленных хостов.

7. Настройка FTP-сервера

В этом разделе мы рассмотрим некоторые базовые примеры опций конфигурации vsftpd.

Примечание: при внесении любых изменений в настройки FTP-сервера не забудьте воспользоваться командой restart/reload, чтобы активировать их.

7.1. Настройка пользовательского доступа

vsftpd позволяет оставить только анонимный доступ, либо позволить пользователям, прописанным в файле /etc/passwd или в соответствующем списке, аутентифицироваться.

7.1.1. Анонимный доступ к FTP

По умолчанию FTP-сервер vsftpd настроен только для анонимного доступа. Если это то, что вам нужно, вы можете облегчить жизнь анонимным пользователям, отключив необходимость ввода пароля. Наиболее безопасный вариант для FTP-сервера — не разрешать пользователям идентифицироваться с паролем в виде простого текста. Для отключения необходимости ввода пароля анонимными пользователями необходимо в конфигурационном файле /etc/vsftpd.conf установить значение «NO» для директивы no_anon_password:

7.1.2. Доступ локальных пользователей по FTP

Теперь ваш сервер должен запрещать любой доступ за исключением пользователя anonymous. Чтобы позволить авторизоваться всем пользователям, указанным в файле /etc/passwd, необходимо изменить значение директивы local_enable в файле /etc/vsftpd.conf. Ее значение по умолчанию — «NO».

Теперь любой пользователь, указанный в файле /etc/passwd, сможет авторизоваться, используя свой пароль.

7.1.3. Список доступа пользователей

Сначала создадим список доступа, используемый сервером vsFTPd. Обычно вы можете задать его в директории /etc/. Создайте файл с произвольным именем и перечислите в нем всех пользователей, которым вы хотите разрешить или запретить доступ. Например, давайте создадим новый список с единственным пользователем «lubos»:

Далее, определим новый список пользователей в конфиграционном файле /etc/vsftpd.conf и активируем директиву userlist_enable:

Таким образом всем пользователям, перечисленным в файле /etc/vsftpd.userlist, будет отказано в доступе к FTP-серверу.

Чтобы разрешить доступ всем пользователям, перечисленным в файле /etc/vsftpd.userlist, установите значение «NO» для директивы userlist_deny. При этом вы открываете доступ только пользователям, перечисленным в /etc/vsftpd.userlist. Каждое имя пользователя в этом файле должно располагаться на отдельной строке.

7.2. Смена номера порта

По умолчанию любой FTP-сервер слушает стандартный порт 21 для аутентификации пользователя и порт 20 для передачи данных. vsFTPd не является исключением. Для смены прослушиваемого по умолчанию порта используется директива listen_port в файле /etc/vsftpd.conf. Например, для смены порта на 2121 просто добавьте следующую директиву в ваш конфигурационный файл:

После чего перезапустите FTP-сервер.

Однако это применимо к только к vsFPTd, работающему в автономном режиме. В случае, если ваш FTP-сервер запущен в нормальном режиме с с использованием суперсервера xinetd, и вы хотите изменить порт по умолчанию на 2121, найдите в файле /etc/services строку FTP и замените 21 на 2121, после чего перезапустите xinetd.

Теперь, как вы можете убедиться, FTP-сервер слушает порт 2121:

7.3. Другие опции конфигурации

Сервер vsFTPd имеет множество опций настроек, которые позволяют тонко настроить его в соответствии со своими нуждами. Ниже приведен список наиболее важных опций:

max_clients — эта опция задает максимальное количество пользователей, одновременно использующих FTP-сервер. 0 означает неограниченное количество пользователей.
max_per_ip — задает максимальное количество пользователей с одного IP-адреса.
download_enable — если ее значение — NO, любой запрос на скачивание будет отклонен.

8. Заключение

На сегодняшний день vsFTPd имеет 125 опций конфигурации. Это делает его очень гибким в настройке и в то же время простым в использовании и администрировании. Хотите ли вы использовать его дома, в пределах корпоративной сети, или на удаленном сервере, вы можете быть уверены, что vsFTPd полностью удовлетворит ваши нужды. Кроме того, vsFTPd позволяет активировать sftp, но этот вопрос мы обсудим в следующий раз.

Источник

Читайте также:  Мой касперский личный кабинет почему не работает
Оцените статью