Процесс, который я использовал для установки vsftpd с 12.04, больше не работает. Я получаю ошибку stop: Unknown instance
при перезапуске сервиса. Я считаю, что это означает, что конфигурация неверна, но я не могу отследить проблему. У меня эта проблема на виртуальном сервере.
Кроме того, запуск sudo vsftpd
приводит к 500 OOPS: munmap
, как отмечает @Beltran.
Получение привилегий root
sudo -s
Установка vsftpd и libpam-pwdfile
apt-get install vsftpd libpam-pwdfile
] Отредактируйте vsftpd.conf
mv /etc/vsftpd.conf /etc/vsftpd.conf.bak
vim /etc/vsftpd.conf
Скопируйте и вставьте следующие строки.
allow_writeable_chroot=YES
anonymous_enable=NO
chroot_list_enable=YES
chroot_local_user=YES
guest_enable=YES
guest_username=vsftpd
hide_ids=YES
listen=YES
local_enable=YES
local_umask=022
local_root=/var/clients/$USER
nopriv_user=vsftpd
pasv_address=127.0.0.1
pasv_enable=YES
pasv_min_port=65000
pasv_max_port=65100
port_enable=YES
user_sub_token=$USER
seccomp_sandbox=NO
virtual_use_local_privs=YES
write_enable=YES
Зарегистрировать виртуального администратора
apt-get install apache2-utils
mkdir /etc/vsftpd
htpasswd -cd /etc/vsftpd/ftpd.passwd admin
vim /etc/vsftpd.chroot_list
Добавить 1 строку для пользователя admin
admin
Настроить PAM
]mv /etc/pam.d/vsftpd /etc/pam.d/vsftpd.bak
vim /etc/pam.d/vsftpd
Скопируйте и вставьте эти 2 строки.
auth required pam_pwdfile.so pwdfile /etc/vsftpd/ftpd.passwd
account required pam_permit.so
Создать локального пользователя без доступа к оболочке
useradd --home /home/vsftpd --gid nogroup -m --shell /bin/false vsftpd
Создать корневой каталог и предоставить локальному пользователю надлежащий доступ.
mkdir /var/clients
chmod -R 755 /var/clients
chown -R vsftpd:nogroup /var/clients
Регистрация заключенных в тюрьму виртуальных пользователей (изначально я пропускаю этот шаг)
htpasswd -d /etc/vsftpd/ftpd.passwd {user_name}
mkdir /var/clients/{user_name}
Перезапуск службы
service vsftpd restart
Использование Ubuntu 14.04 сеансы пользователя , который отсутствовал в 12,04, таким образом service
смотрит на сеанс пользователя, не системную сессию и Вашего пользователя, не выполняют vstfpd (корень). Так, необходимо будет определить --system
, когда Вы будете использовать service
для запуска, остановите или проверьте состояние сервиса.
vsftpd является гибкой ссылкой на выскочку, таким образом, Вы не будете в состоянии выполнить его как непривилегированный пользователь, необходимо будет быть корнем, чтобы запустить или остановить или проверить состояние такого процесса.
Выполнение ls -l on /etc/init.d/vsftpd
показывает:
lrwxrwxrwx 1 root root 21 May 16 2013 /etc/init.d/vsftpd -> /lib/init/upstart-job*
, который подобен cron
, resolvconf
и еще много, которые являются всеми новомодными заданиями и должны быть корнем, который будет запущен или остановлен.
Выскочка является основанной на событии заменой для/sbin/init демона, который обрабатывает запуск задач и услуги во время начальной загрузки, остановки их во время завершения работы и наблюдения их, в то время как система работает.
Эти сервисы обычно запускаются на начальной загрузке. Посмотрите здесь для больше на выскочке:
, Отсылают страницу справочника выскочки, если Вы хотите еще больше!
Так, короче говоря, для запуска, остановка, состояние проверки, необходимо быть корнем. Можно сделать это следующим образом:
sudo service vsftpd {start|stop|status|restart}
и вводят Ваш пароль или использование:
service vsftpd {start|stop|status|restart} --system
Включите предложенный надежными людьми в Ваших источниках программного обеспечения и переустановите vsftpd. Я проверяю, передает ли это осмотр.
, Если Вы не хотите включать предложенный в Ваших источниках, vsftpd источник и сборки доступны на этой странице. https://launchpad.net/ubuntu/trusty / + source/vsftpd/3.0.2-1ubuntu2.14.04.1
При получении этой проблемы об экземпляре AWS EC2 необходимо попытаться создать экземпляр с виртуализация HVM вместо Паравиртуального.
, Если Вы все еще требуете паравиртуального экземпляра, там никакое сообщение, когда ошибка будет исправлена, поскольку это - ошибка в Xen ядре, которое используется для выполнения виртуализации для AWS.
Вот поток ошибки, решающий эту проблему более подробно: https://bugs.launchpad.net/ubuntu / + source/vsftpd / + ошибка/1313450
Все еще в новинку для Ubuntu. Имел его работающий над Ubuntu 12.4 без стычек, но над Ubuntu 14.04, это - то, что я сделал:
в /etc/vsftpd.conf
файл добавляют эти 2 строки:
allow_writeable_chroot = YES
seccomp_sandbox = NO
Изменение значение pam_service_name
к ftp
.
Hope это помогает кому-то
Это работало на меня на Ubuntu 14.04. Пользователь Ifthe заключен в тюрьму в /var/www/html/kofi_site
каталог, тогда просто запущенный:
sudo chmod ugo-w /var/www/html/kofi_site