Настройка FTP сервера (xinetd)
Устанавливаем все пакеты, связанные с фтп сервером. В менеджере пакетов Synaptic нужно отметить ftpd.
Далее нужно внести изменения в файл /etc/ftpuser/. В файле /etc/ftpuser/ перечисляются пользователи, которым запрещен вход на ftp. Следовательно, удаляем всех пользователей.
Для анонимного входа нужно создать пользователя с именем ftp. Добавить пользователя можно либо с помощью команды adduser, либо внести ручками изменения в файл /etc/passwd:
ftp::14:50:FTP User:/home/dima/Ftpboot:/bin/false
Если бы после ftp: стоял Х, то это означало бы, что вход по паролю. После слова User прописывается путь к домашней папке, для которой нужно разрешить все права.
$ chmod -R a+rw /home/dima/Ftpboot/
Чтобы включить сервис ftp, нужно создать файл с именем ftp в папке /etc/xinetd.d следующего содержания:
service ftp { socket_type = stream protocol = tcp wait = no user = root server = /usr/sbin/in.ftpd disable = no }
Далее делаю:
$ killall xinetd
И запускаю его в режиме отладки, т.е. с ключом -d.
$ xinetd -d.
Смотрю на отладочные сообщения.Если появляются какие-то ошибки, то надо разбираться по ним. Если сервис фтп запустился, то в отладке должно быть примерно следующее:
Service configuration: ftp id = ftp flags = IPv4 socket_type = stream Protocol (name,number) = (tcp,6) port = 21 wait = no user = 0 Groups = no PER_SOURCE = -1 Bind = All addresses. Server = /usr/sbin/in.ftpd Server argv = in.ftpd Only from: All sites No access: No blocked sites No logging 14/1/20@17:09:34: DEBUG: 26667 {cnf_start_services} Started service: ftp
Проверить работоспособность очень просто. Для этого в соседнем терминале создаем файл — proba.txt. Подключаемся к своему компу и посылаем файл:
$ ftp localhost
вводим логин ftp, пароль ftp, переходим в бинарный режим — bin.
put proba.txt
Файл должен оказаться в домашней папке.