1 1 1 1 1 Rating 5.00 (1 Vote)

ProFTPD- легковесный ftp-сервер, легкий в настройке и по-этому хорошо подходит для установке на роутер под управление openwrt. Ftp-сервер я ставлю, что бы было удобней закачивать файлы в веб-интрефейс моего умного дома на основе роутера под управлением openwrt.

ProFTPD я устанавливаю на роутер wr720n v3 c транковской прошивкой BARRIER BREAKER

opkg install proftpd

Как показала команда версии программы

proftpd -v
ProFTPD Version 1.3.5

В ATTITUDE ADJUSTMENT устанавливается версия

ProFTPD Version 1.3.4b

И в данной версии у меня не было ниже описанных проблем, поэтому я решил написать данную статью-памятку.

Редактируем файл конфигурации ProFTPD

nano /etc/proftpd.conf
ServerName                      "ProFTPD Server"
ServerIdent                     on "FTP Server ready."
ServerType                      standalone
DefaultServer                   on
DefaultAddress                  127.0.0.1
RequireValidShell               off
Port                            21
UseIPv6                         off
Umask                           022
MaxInstances                    10
User                            nobody
Group                           nogroup
AuthUserFile                    /etc/passwd
DefaultRoot                     /www
AllowOverwrite                  on
MaxClients                      10
MaxClientsPerHost               10
MaxClientsPerUser               10
MaxHostsPerUser                 10
DeleteAbortedStores             on
UserAlias                       anonymous ftp
# Use the IANA registered ephemeral port range
PassivePorts                    49152 65534

Заводим пользователя для доступа по ftp

nano /etc/passwd

Добавляем пользователя openwrt и указываем его рабочий каталог, в моем случае это /www

openwrt:*:65538:55:openwrt:/www:/bin/false

После этого назначаем пароль пользователю openwrt

passwd openwrt

Запускаем следующую команду для отладки ftp server

proftpd -n -d 10

У меня появились нижеследующие строки с ошибками. Если у вас их нет, то переходим к следующему пункту.

mod_auth_file/1.0: unable to use world-readable AuthUserFile '/etc/passwd' (perms 0664): Operation not permitted
fatal: AuthUserFile: unable to use /etc/passwd: Operation not permitted on line 13 of '/etc/proftpd.conf' 

Новая версия proftpd 1.3.5 выдает данную ошибку если на файл с паролями, указанный в опции AuthUserFile, имеют права на чтение/запись кто-то кроме администраторов. Почему-то в openwrt есть у всех доступ на чтение к /etc/passwd. Исправляем данное недоразумение, оставив только права владельцу.

chmod 660 /etc/passwd

Снова запускаем команду для отладки proftpd

proftpd -n -d 10

В этот раз ftp-сервер у меня запустился, но при подключении к нему с другого компьютера от имени нашего нового пользователя openwrt в лог посыпались ошибки

unable to chdir to / (Permission denied), defaulting to chroot directory /www
openwrt chdir("/") failed: Permission denied

Как выяснилось у моего каталога /www не было прав на извлечение и стояли 744 права. Исправляется это назначением правильных прав на каталог с сайтами

chmod -R 755 /www

Дяльше проблем у меня не было, по-этому добавляем ProFTPD в автозагрузку и запускаем его

/etc/init.d/proftpd enable
/etc/init.d/proftpd start

Если хотите поблагодарить автора, то добавьте статью в свои социальные закладки, нажав одну из нижеследующих кнопок.

Log in to comment