1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/calibreweb_ynh.git synced 2024-09-03 18:16:20 +02:00

Include fail2ban conf

This commit is contained in:
Krakinou 2022-11-27 22:25:23 +01:00
parent 656e6aee86
commit 2ddbea6a90
6 changed files with 70 additions and 8 deletions

View file

@ -6,7 +6,7 @@
"en": "Browsing, reading and downloading eBooks using a Calibre database", "en": "Browsing, reading and downloading eBooks using a Calibre database",
"fr": "Explorer, lire et télécharger des eBooks à partir d'une base de données Calibre" "fr": "Explorer, lire et télécharger des eBooks à partir d'une base de données Calibre"
}, },
"version": "0.96.19~ynh5", "version": "0.96.19~ynh6",
"url": "https://github.com/janeczku/calibre-web", "url": "https://github.com/janeczku/calibre-web",
"upstream": { "upstream": {
"version": "0.6.19", "version": "0.6.19",

View file

@ -65,6 +65,14 @@ ynh_backup --src_path="/etc/nginx/conf.d/$domain.d/$app.conf"
ynh_backup --src_path="/etc/logrotate.d/$app" ynh_backup --src_path="/etc/logrotate.d/$app"
#=================================================
# BACKUP FAIL2BAN CONFIGURATION
#=================================================
ynh_backup --src_path="/etc/fail2ban/jail.d/$app.conf"
ynh_backup --src_path="/etc/fail2ban/filter.d/$app.conf"
#================================================= #=================================================
# BACKUP SYSTEMD # BACKUP SYSTEMD
#================================================= #=================================================

View file

@ -184,8 +184,8 @@ ynh_app_setting_set $app calibre_dir $calibre_dir
#================================================= #=================================================
# Use logrotate to manage application logfile(s) # Use logrotate to manage application logfile(s)
ynh_use_logrotate --logfile="/var/log/$app/$app.log" ynh_use_logrotate --logfile="$log_file"
ynh_use_logrotate --logfile="/var/log/$app/$app-access.log" ynh_use_logrotate --logfile="/var/log/$app/$access_log_file"
chown -R $app:$app /var/log/$app chown -R $app:$app /var/log/$app
@ -211,7 +211,7 @@ ynh_replace_string --match_string="<policy domain="coder" rights="none" pattern=
# INTEGRATE SERVICE IN YUNOHOST # INTEGRATE SERVICE IN YUNOHOST
#================================================= #=================================================
yunohost service add $app --description="Browse eBook in the web" --log="/var/log/$app/$app.log" yunohost service add $app --description="Browse eBook in the web" --log="$log_file"
#================================================= #=================================================
@ -225,6 +225,20 @@ chmod 740 $final_path
chown -R $app: /opt/kepubify chown -R $app: /opt/kepubify
chmod 770 /opt/kepubify/kepubify-linux-$mach chmod 770 /opt/kepubify/kepubify-linux-$mach
#=================================================
# SETUP FAIL2BAN
#=================================================
ynh_script_progression --message="Configuring Fail2Ban..." --weight=8
# Make sure a log file exists (mostly for CI tests)
if [ ! -f "$log_file" ]; then
touch "$log_file"
chown $app: "$log_file"
fi
# Create a dedicated Fail2Ban config
ynh_add_fail2ban_config --logpath="$log_file" --failregex="^.*LDAP Login failed for user .* IP-address: <HOST>.*$" --max_retry=5
#================================================= #=================================================
# SETUP SSOWAT # SETUP SSOWAT
#================================================= #=================================================

View file

@ -96,6 +96,14 @@ ynh_remove_nginx_config
ynh_script_progression --message="Removing logrotate configuration..." --weight=1 ynh_script_progression --message="Removing logrotate configuration..." --weight=1
ynh_remove_logrotate ynh_remove_logrotate
#=================================================
# REMOVE FAIL2BAN CONFIGURATION
#=================================================
ynh_script_progression --message="Removing Fail2Ban configuration..." --weight=8
# Remove the dedicated Fail2Ban config
ynh_remove_fail2ban_config
#================================================= #=================================================
# CLOSE A PORT # CLOSE A PORT
#================================================= #=================================================

View file

@ -104,7 +104,7 @@ systemctl enable $app.service --quiet
# INTEGRATE SERVICE IN YUNOHOST # INTEGRATE SERVICE IN YUNOHOST
#================================================= #=================================================
yunohost service add $app --description="Browse eBook in the web" --log="/var/log/$app/$app.log" yunohost service add $app --description="Browse eBook in the web" --log="$log_file"
#================================================= #=================================================
# RESTORE THE LOGROTATE CONFIGURATION # RESTORE THE LOGROTATE CONFIGURATION
@ -163,6 +163,22 @@ ynh_replace_string --match_string="<policy domain="coder" rights="none" pattern=
# Remove the option backup_core_only if it's in the settings.yml file # Remove the option backup_core_only if it's in the settings.yml file
ynh_app_setting_delete $app backup_core_only ynh_app_setting_delete $app backup_core_only
#=================================================
# RESTORE THE FAIL2BAN CONFIGURATION
#=================================================
ynh_script_progression --message="Restoring the Fail2Ban configuration..." --weight=7
ynh_restore_file --origin_path="/etc/fail2ban/jail.d/$app.conf"
ynh_restore_file --origin_path="/etc/fail2ban/filter.d/$app.conf"
if [ ! -f "$log_file" ]; then
touch "$log_file"
chown $app: "$log_file"
fi
ynh_systemd_action --action=restart --service_name=fail2ban
#================================================= #=================================================
# GENERIC FINALIZATION # GENERIC FINALIZATION
#================================================= #=================================================

View file

@ -249,8 +249,8 @@ ynh_replace_string --match_string="<policy domain="coder" rights="none" pattern=
# Use logrotate to manage app-specific logfile(s) # Use logrotate to manage app-specific logfile(s)
ynh_script_progression --message="Upgrading logrotate configuration..." --weight=1 ynh_script_progression --message="Upgrading logrotate configuration..." --weight=1
ynh_use_logrotate --logfile="/var/log/$app/$app.log" --nonappend ynh_use_logrotate --logfile="$log_file" --nonappend
ynh_use_logrotate --logfile="/var/log/$app/$app-access.log" --nonappend ynh_use_logrotate --logfile="$access_log_file" --nonappend
@ -276,7 +276,23 @@ chown -R $app: /opt/kepubify
# INTEGRATE SERVICE IN YUNOHOST # INTEGRATE SERVICE IN YUNOHOST
#================================================= #=================================================
yunohost service add $app --description="Browse eBook in the web" --log="/var/log/$app/$app.log" yunohost service add $app --description="Browse eBook in the web" --log="$log_file"
#=================================================
# SETUP FAIL2BAN
#=================================================
ynh_script_progression --message="Configuring Fail2Ban..." --weight=8
# Make sure a log file exists (mostly for CI tests)
if [ ! -f "$log_file" ]; then
touch "$log_file"
chown $app: "$log_file"
fi
# Create a dedicated Fail2Ban config
ynh_add_fail2ban_config --logpath="$log_file" --failregex="^.*LDAP Login failed for user .* IP-address: <HOST>.*$" --max_retry=5
#================================================= #=================================================
# RELOAD NGINX # RELOAD NGINX