Merge pull request #471 from WordOps/updating-configuration
maintenance release v3.15.3
This commit is contained in:
@@ -108,17 +108,12 @@ def pre_pref(self, apt_packages):
|
||||
WORepo.add_key(self, WOVar.wo_php_key)
|
||||
# add redis repository
|
||||
if set(WOVar.wo_redis).issubset(set(apt_packages)):
|
||||
if WOVar.wo_distro == 'ubuntu':
|
||||
if not WOFileUtils.grepcheck(
|
||||
self, '/etc/apt/sources.list/wo-repo.list',
|
||||
'redis.io'):
|
||||
Log.info(self, "Adding repository for Redis, please wait...")
|
||||
Log.debug(self, 'Adding ppa for redis')
|
||||
WORepo.add(self, ppa=WOVar.wo_redis_repo)
|
||||
else:
|
||||
if not WOFileUtils.grepcheck(
|
||||
self, '/etc/apt/sources.list/wo-repo.list',
|
||||
'WordOps'):
|
||||
Log.info(self, "Adding repository for Redis, please wait...")
|
||||
WORepo.add(self, repo_url=WOVar.wo_nginx_repo)
|
||||
WORepo.add_key(self, WOVar.wo_nginx_key)
|
||||
WORepo.add(self, repo_url=WOVar.wo_redis_repo)
|
||||
WORepo.download_key(self, WOVar.wo_redis_key_url)
|
||||
|
||||
# nano
|
||||
if 'nano' in apt_packages:
|
||||
@@ -1401,18 +1396,10 @@ def post_pref(self, apt_packages, packages, upgrade=False):
|
||||
msg="Adding ProFTPd into Git")
|
||||
if os.path.isfile("/etc/proftpd/proftpd.conf"):
|
||||
Log.debug(self, "Setting up Proftpd configuration")
|
||||
WOFileUtils.searchreplace(
|
||||
self, "/etc/proftpd/proftpd.conf",
|
||||
"# DefaultRoot", "DefaultRoot")
|
||||
WOFileUtils.searchreplace(
|
||||
self, "/etc/proftpd/proftpd.conf",
|
||||
"# RequireValidShell", "RequireValidShell")
|
||||
WOFileUtils.searchreplace(
|
||||
self, "/etc/proftpd/proftpd.conf",
|
||||
"# PassivePorts "
|
||||
"49152 65534",
|
||||
"PassivePorts "
|
||||
" 49000 50000")
|
||||
data = dict()
|
||||
WOTemplate.deploy(self,
|
||||
'/etc/proftpd/proftpd.conf',
|
||||
'proftpd.mustache', data)
|
||||
# proftpd TLS configuration
|
||||
if not os.path.isdir("/etc/proftpd/ssl"):
|
||||
WOFileUtils.mkdir(self, "/etc/proftpd/ssl")
|
||||
@@ -1422,10 +1409,6 @@ def post_pref(self, apt_packages, packages, upgrade=False):
|
||||
data = dict()
|
||||
WOTemplate.deploy(self, '/etc/proftpd/tls.conf',
|
||||
'proftpd-tls.mustache', data)
|
||||
WOFileUtils.searchreplace(self, "/etc/proftpd/"
|
||||
"proftpd.conf",
|
||||
"#Include /etc/proftpd/tls.conf",
|
||||
"Include /etc/proftpd/tls.conf")
|
||||
WOService.restart_service(self, 'proftpd')
|
||||
|
||||
if os.path.isfile('/etc/ufw/ufw.conf'):
|
||||
|
||||
@@ -383,6 +383,15 @@ class WOStackUpgradeController(CementBaseController):
|
||||
"bash /var/lib/wo/tmp/kickstart.sh "
|
||||
"--dont-wait --no-updates --stable-channel",
|
||||
errormsg='', log=False)
|
||||
if (os.path.exists('/opt/netdata') and
|
||||
not os.path.exists(
|
||||
'/opt/netdata/var/run/netdata/netdata.pid')):
|
||||
WOShellExec.cmd_exec(
|
||||
self,
|
||||
'bash /var/lib/wo/tmp/kickstart.sh '
|
||||
'--dont-wait --no-updates '
|
||||
'--stable-channel --reinstall-even-if-unsafe',
|
||||
errormsg='', log=False)
|
||||
Log.valide(self, "Upgrading Netdata")
|
||||
|
||||
if WOAptGet.is_selected(self, 'WordOps Dashboard', packages):
|
||||
|
||||
@@ -41,7 +41,7 @@ location /.well-known/acme-challenge/ {
|
||||
# https://developer.chrome.com/blog/private-prefetch-proxy/
|
||||
location /.well-known/traffic-advice {
|
||||
types { } default_type "application/trafficadvice+json; charset=utf-8";
|
||||
alias /var/www/html/.well-known/traffic-advice;
|
||||
return 200 "[\{\n \"user_agent\": \"prefetch-proxy\",\n \"google_prefetch_proxy_eap\": \{\n \"fraction\": 1.0\n \}\n\}]";
|
||||
allow all;
|
||||
}
|
||||
# Return 403 forbidden for readme.(txt|html) or license.(txt|html) or example.(txt|html) or other common git repository files
|
||||
|
||||
@@ -4,11 +4,13 @@ TLSEngine on
|
||||
TLSRequired on
|
||||
TLSLog /var/log/proftpd/tls.log
|
||||
|
||||
TLSDHParamFile /etc/proftpd/dhparams.pem
|
||||
|
||||
# intermediate configuration from ssl-config.mozilla.org
|
||||
TLSProtocol TLSv1.2
|
||||
TLSCipherSuite ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384
|
||||
TLSServerCipherPreference off
|
||||
TLSessionTickets off
|
||||
TLSSessionTickets off
|
||||
TLSOptions NoCertRequest AllowClientRenegotiations NoSessionReuseRequired
|
||||
|
||||
TLSRSACertificateFile /etc/proftpd/ssl/proftpd.crt
|
||||
|
||||
138
wo/cli/templates/proftpd.mustache
Normal file
138
wo/cli/templates/proftpd.mustache
Normal file
@@ -0,0 +1,138 @@
|
||||
#
|
||||
# /etc/proftpd/proftpd.conf -- This is a basic ProFTPD configuration file.
|
||||
# To really apply changes, reload proftpd after modifications, if
|
||||
# it runs in daemon mode. It is not required in inetd/xinetd mode.
|
||||
#
|
||||
|
||||
# Includes DSO modules
|
||||
Include /etc/proftpd/modules.conf
|
||||
|
||||
# Set off to disable IPv6 support which is annoying on IPv4 only boxes.
|
||||
UseIPv6 off
|
||||
# If set on you can experience a longer connection delay in many cases.
|
||||
<IfModule mod_ident.c>
|
||||
IdentLookups off
|
||||
</IfModule>
|
||||
ServerName "Debian"
|
||||
# Set to inetd only if you would run proftpd by inetd/xinetd.
|
||||
# Read README.Debian for more information on proper configuration.
|
||||
ServerType standalone
|
||||
DeferWelcome off
|
||||
|
||||
MultilineRFC2228 on
|
||||
DefaultServer on
|
||||
ShowSymlinks on
|
||||
|
||||
TimeoutNoTransfer 600
|
||||
TimeoutStalled 600
|
||||
TimeoutIdle 1200
|
||||
|
||||
DisplayLogin welcome.msg
|
||||
DisplayChdir .message true
|
||||
ListOptions "-l"
|
||||
|
||||
DenyFilter \*.*/
|
||||
|
||||
# Use this to jail all users in their homes
|
||||
DefaultRoot ~
|
||||
|
||||
# Users require a valid shell listed in /etc/shells to login.
|
||||
# Use this directive to release that constrain.
|
||||
RequireValidShell off
|
||||
|
||||
# Port 21 is the standard FTP port.
|
||||
Port 21
|
||||
|
||||
# In some cases you have to specify passive ports range to by-pass
|
||||
# firewall limitations. Ephemeral ports can be used for that, but
|
||||
# feel free to use a more narrow range.
|
||||
PassivePorts 49000 50000
|
||||
|
||||
# If your host was NATted, this option is useful in order to
|
||||
# allow passive tranfers to work. You have to use your public
|
||||
# address and opening the passive ports used on your firewall as well.
|
||||
# MasqueradeAddress 1.2.3.4
|
||||
|
||||
# This is useful for masquerading address with dynamic IPs:
|
||||
# refresh any configured MasqueradeAddress directives every 8 hours
|
||||
<IfModule mod_dynmasq.c>
|
||||
# DynMasqRefresh 28800
|
||||
</IfModule>
|
||||
|
||||
# To prevent DoS attacks, set the maximum number of child processes
|
||||
# to 30. If you need to allow more than 30 concurrent connections
|
||||
# at once, simply increase this value. Note that this ONLY works
|
||||
# in standalone mode, in inetd mode you should use an inetd server
|
||||
# that allows you to limit maximum number of processes per service
|
||||
# (such as xinetd)
|
||||
MaxInstances 30
|
||||
|
||||
# Set the user and group that the server normally runs at.
|
||||
User proftpd
|
||||
Group nogroup
|
||||
|
||||
# Umask 022 is a good standard umask to prevent new files and dirs
|
||||
# (second parm) from being group and world writable.
|
||||
Umask 022 022
|
||||
# Normally, we want files to be overwriteable.
|
||||
AllowOverwrite on
|
||||
|
||||
# Uncomment this if you are using NIS or LDAP via NSS to retrieve passwords:
|
||||
# PersistentPasswd off
|
||||
|
||||
# This is required to use both PAM-based authentication and local passwords
|
||||
# AuthOrder mod_auth_pam.c* mod_auth_unix.c
|
||||
|
||||
# Be warned: use of this directive impacts CPU average load!
|
||||
# Uncomment this if you like to see progress and transfer rate with ftpwho
|
||||
# in downloads. That is not needed for uploads rates.
|
||||
#
|
||||
UseSendFile off
|
||||
|
||||
TransferLog /var/log/proftpd/xferlog
|
||||
SystemLog /var/log/proftpd/proftpd.log
|
||||
|
||||
# Logging onto /var/log/lastlog is enabled but set to off by default
|
||||
#UseLastlog on
|
||||
|
||||
# In order to keep log file dates consistent after chroot, use timezone info
|
||||
# from /etc/localtime. If this is not set, and proftpd is configured to
|
||||
# chroot (e.g. DefaultRoot or <Anonymous>), it will use the non-daylight
|
||||
# savings timezone regardless of whether DST is in effect.
|
||||
SetEnv TZ :/etc/localtime
|
||||
|
||||
<IfModule mod_quotatab.c>
|
||||
QuotaEngine off
|
||||
</IfModule>
|
||||
|
||||
<IfModule mod_ratio.c>
|
||||
Ratios off
|
||||
</IfModule>
|
||||
|
||||
|
||||
# Delay engine reduces impact of the so-called Timing Attack described in
|
||||
# http://www.securityfocus.com/bid/11430/discuss
|
||||
# It is on by default.
|
||||
<IfModule mod_delay.c>
|
||||
DelayEngine on
|
||||
</IfModule>
|
||||
|
||||
<IfModule mod_ctrls.c>
|
||||
ControlsEngine off
|
||||
ControlsMaxClients 2
|
||||
ControlsLog /var/log/proftpd/controls.log
|
||||
ControlsInterval 5
|
||||
ControlsSocket /var/run/proftpd/proftpd.sock
|
||||
</IfModule>
|
||||
|
||||
<IfModule mod_ctrls_admin.c>
|
||||
AdminControlsEngine off
|
||||
</IfModule>
|
||||
|
||||
|
||||
# This is used for FTPS connections
|
||||
#
|
||||
Include /etc/proftpd/tls.conf
|
||||
|
||||
# Include other custom configuration files
|
||||
Include /etc/proftpd/conf.d/
|
||||
@@ -46,6 +46,13 @@ wo_ufw_setup() {
|
||||
# wordops backend
|
||||
ufw limit 22222
|
||||
fi
|
||||
|
||||
# allow proftpd port if installed
|
||||
if [ -f /etc/proftpd/proftpd.conf ]; then
|
||||
ufw limit 21
|
||||
ufw allow 49000:50000/tcp
|
||||
fi
|
||||
|
||||
# enable ufw
|
||||
if [ -n "$CURRENT_SSH_PORT" ]; then
|
||||
ufw --force enable
|
||||
|
||||
Reference in New Issue
Block a user