Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
system:pureftpd [2016/03/31 02:22] – [PureFTPd with MySQL] mirocowsystem:pureftpd [2016/10/02 21:53] (текущий) – [Подключение MySQL] mirocow
Строка 1: Строка 1:
-{{tag>network}}+{{tag>networks networking network pureftpd}}
  
 ====== Pure-FTPd ====== ====== Pure-FTPd ======
Строка 19: Строка 19:
 <note tip>Для изменения настроек сервера нужно создать файл с названием параметра, например чтобы задать порты для пассивного режима: Правила iptables для FTP</note> <note tip>Для изменения настроек сервера нужно создать файл с названием параметра, например чтобы задать порты для пассивного режима: Правила iptables для FTP</note>
  
-===== PureFTPd with MySQL =====+==== Создание пользователей ====
  
-  * [[pureftpd:db]] +<code> 
-  * [[:/etc/pure-ftpd/db/mysql.conf|/etc/pure-ftpd/db/mysql.conf]]+$ groupadd ftp 
 +$ useradd -s /bin/false -d /bin/null -c "pureftpd user" -g ftp ftp 
 +</code> 
 + 
 +==== Установка SSL сертификата для TLS ==== 
 + 
 +<code> 
 +$ mkdir -p /etc/ssl/private/ 
 +$ openssl req -x509 -nodes -newkey rsa:1024 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem 
 +$ chmod 600 /etc/ssl/private/*.pem 
 +</code>
  
 ==== Настройка ==== ==== Настройка ====
Строка 46: Строка 56:
 </code> </code>
  
-==== Создание пользователей ====+=== Включить логирование ===
  
 <code> <code>
-groupadd ftp +echo 'ftp' > /etc/pure-ftpd/conf/SyslogFacility 
-useradd -s /bin/false -/home/ftp -c "pureftpd user" -g ftp ftp+echo 'yes'/etc/pure-ftpd/conf/VerboseLog
 </code> </code>
  
-==== Установка SSL сертификата для TLS ====+==== Подключение MySQL ====
  
-<code> +Самым удобным способом хранения и конфигурирования FTP является БД MySql. Для подключения хранилища достаточно настроить MySQLConfigFile. 
-$ mkdir -p /etc/ssl/private/ + 
-$ openssl req -x509 -nodes -newkey rsa:1024 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem +  * echo /etc/pure-ftpd/db/mysql.conf > /etc/pure-ftpd/conf/MySQLConfigFile 
-$ chmod 600 /etc/ssl/private/*.pem +  * [[pureftpd:db]] 
-</code> +  * [[:/etc/pure-ftpd/db/mysql.conf|]]
-==== Включить логирование ====+
  
-<code> 
-$ echo 'ftp' > /etc/pure-ftpd/conf/SyslogFacility 
-$ echo 'yes' > /etc/pure-ftpd/conf/VerboseLog 
-</code> 
  
 ==== PureFTP Complete Upload Script ==== ==== PureFTP Complete Upload Script ====
  
 После получения полностью залитого файла, скрипт переименует его в ended.<uploaded_filename>. После получения полностью залитого файла, скрипт переименует его в ended.<uploaded_filename>.
 +
 +=== Конфигурция ===
 +
 +Конфигурация осуществляется через базовый конфигурационный файл /etc/default/pure-ftpd-common
 +
 +Включает испльзование скрипта
 +<code>
 +$ sudo echo "yes" > /etc/pure-ftpd/conf/CallUploadScript
 +</code>
 +
 +=== Файл скрипта ===
  
 <code> <code>
Строка 84: Строка 100:
 dirname=${fullpath%/*} dirname=${fullpath%/*}
 mv "$fullpath" "$dirname/ended.$filename" mv "$fullpath" "$dirname/ended.$filename"
 +chmod 664 "$dirname/ended.$filename"
 +chown :www-data "$dirname/ended.$filename"
 </code> </code>
  
-=== Конфигурция === +=== Настройка pure-ftpd-common ===
- +
-Конфигурация осуществляется через базовый конфигурационный файл /etc/default/pure-ftpd-common +
- +
-Включает испльзование скрипта +
-<code> +
-$ sudo echo "yes" > /etc/pure-ftpd/conf/CallUploadScript +
-</code> +
- +
-==== Настройка pure-ftpd-common ====+
  
 +nano /etc/default/pure-ftpd-common
 <code> <code>
 STANDALONE_OR_INETD=standalone STANDALONE_OR_INETD=standalone
Строка 104: Строка 114:
 UPLOADSCRIPT=/etc/pure-ftpd/uploadscript.sh UPLOADSCRIPT=/etc/pure-ftpd/uploadscript.sh
 </code> </code>
 +
 +<note important>
 +UPLOADUID = 1002\\ 
 +UPLOADGID = 1002\\ 
 +Относятся только к UPLOADSCRIPT.\\
 +Пример: /usr/sbin/pure-uploadscript -r /etc/pure-ftpd/uploadscript.sh -B -u 1002 -g 1002\\
 +</note>
  
 ==== Проверка ==== ==== Проверка ====