From b513424eb112b454fe2a464155224a2ef9fbbc39 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florent=20Thi=C3=A9ry?= <florent.thiery@ubicast.eu> Date: Wed, 23 Jan 2019 10:00:14 +0100 Subject: [PATCH] enable FTP over TLS, fixes #27817 --- 10.MediaImport/2.Install_FTP_watch_folder/0_setup.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/10.MediaImport/2.Install_FTP_watch_folder/0_setup.py b/10.MediaImport/2.Install_FTP_watch_folder/0_setup.py index 668ba7c0..3586579c 100644 --- a/10.MediaImport/2.Install_FTP_watch_folder/0_setup.py +++ b/10.MediaImport/2.Install_FTP_watch_folder/0_setup.py @@ -1,7 +1,7 @@ #!/usr/bin/env python3 # -*- coding: utf-8 -*- import os - +import socket import utils @@ -17,7 +17,7 @@ def setup(interactive=True): raise Exception('Invalid user/pass definition, separator not present or too many detected') # Run commands cmds = [ - 'apt-get install --yes pure-ftpd python3-unidecode python3-mediaserver-mediaimport', + 'apt-get install --yes pure-ftpd python3-unidecode python3-mediaserver-mediaimport openssl', dict(line='adduser --disabled-login --gecos "" --shell /bin/false ftp', cond='id ftp', cond_neg=True, cond_skip=True), 'mkdir -p /usr/local/bin', 'cp "%s/mediaimport_create_ftp_user.sh" /usr/local/bin' % (dir_path), @@ -32,6 +32,8 @@ def setup(interactive=True): 'echo "yes" > /etc/pure-ftpd/conf/ChrootEveryone', 'echo "yes" > /etc/pure-ftpd/conf/DontResolve', 'echo "no" > /etc/pure-ftpd/conf/PAMAuthentication', + 'echo 1 > /etc/pure-ftpd/conf/TLS', + 'openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem -subj "/C=FR/ST=NA/L=Paris/O=Ubicast/CN=%s"' % socket.gethostname(), # Post upload script 'cp "%s/on_ftp_upload.py" /home/ftp/on_ftp_upload.py' % dir_path, 'chown ftp:ftp /home/ftp/on_ftp_upload.py', -- GitLab