install_sympa.sh: support for patch that prevents user IP addresses from being logged.
This commit is contained in:
parent
52285b5d88
commit
98827ca563
52
do-not-log-usr-ip.patch
Normal file
52
do-not-log-usr-ip.patch
Normal file
@ -0,0 +1,52 @@
|
||||
diff -Naur sympa/src/cgi/wwsympa.fcgi.in sympa-changed/src/cgi/wwsympa.fcgi.in
|
||||
--- sympa/src/cgi/wwsympa.fcgi.in 2022-01-24 08:05:58.000000000 +0100
|
||||
+++ sympa-changed/src/cgi/wwsympa.fcgi.in 2022-06-10 18:13:06.474595910 +0200
|
||||
@@ -1842,7 +1842,7 @@
|
||||
|
||||
my %options = %{$data || {}};
|
||||
|
||||
- $options{'client'} = $param->{'remote_addr'};
|
||||
+ $options{'client'} = '127.127.0.1';
|
||||
$options{'daemon'} = 'wwsympa';
|
||||
$options{'robot'} ||= $robot;
|
||||
$options{'list'} ||= $list->{'name'} if ref $list eq 'Sympa::List';
|
||||
@@ -1870,7 +1870,7 @@
|
||||
$options{'operation'} ||= $param->{'action'};
|
||||
$options{'list'} ||= $list->{'name'} if ref $list eq 'Sympa::List';
|
||||
$options{'daemon'} = 'wwsympa';
|
||||
- $options{'client'} = $param->{'remote_addr'};
|
||||
+ $options{'client'} = '127.127.0.1';
|
||||
$options{'robot'} ||= $robot;
|
||||
|
||||
unless ($log->add_stat(%options)) {
|
||||
diff -Naur sympa/src/lib/Sympa/Log.pm sympa-changed/src/lib/Sympa/Log.pm
|
||||
--- sympa/src/lib/Sympa/Log.pm 2021-12-09 09:54:08.000000000 +0100
|
||||
+++ sympa-changed/src/lib/Sympa/Log.pm 2022-06-10 18:15:53.437052215 +0200
|
||||
@@ -299,7 +299,12 @@
|
||||
my $status = $options{'status'};
|
||||
my $error_type = $options{'error_type'};
|
||||
my $user_email = $options{'user_email'};
|
||||
- my $client = $options{'client'};
|
||||
+ my $client;
|
||||
+ if (defined $options{'client'} && length $options{'client'} > 0) {
|
||||
+ $client = '127.127.0.1';
|
||||
+ } else {
|
||||
+ $client = $options{'client'};
|
||||
+ }
|
||||
my $daemon = $self->{_service} || 'sympa';
|
||||
my ($date, $usec) = Sympa::Tools::Time::gettimeofday();
|
||||
|
||||
@@ -357,7 +362,12 @@
|
||||
my $date = time;
|
||||
my $mail = $options{'mail'};
|
||||
my $daemon = $self->{_service} || 'sympa';
|
||||
- my $ip = $options{'client'};
|
||||
+ my $ip;
|
||||
+ if (defined $options{'client'} && length $options{'client'} > 0) {
|
||||
+ $ip = '127.127.0.1';
|
||||
+ } else {
|
||||
+ $ip = $options{'client'};
|
||||
+ }
|
||||
my $robot = $options{'robot'};
|
||||
my $parameter = $options{'parameter'};
|
||||
my $read = 0;
|
206
install_sympa.sh
206
install_sympa.sh
@ -256,6 +256,10 @@ DEFAULT_SYMPA_SYSTEMD_DIR="/etc/systemd/system"
|
||||
DEFAULT_VSERVER_GUEST="no"
|
||||
|
||||
|
||||
PATCH_FILE_NO_LOG_USER_IP="${working_dir}/do-not-log-usr-ip.patch"
|
||||
DEFAULT_APPLY_LOG_NO_USER_IP="np"
|
||||
|
||||
|
||||
echo
|
||||
echononl "\tInclude Configuration file.."
|
||||
if [[ ! -f $conf_file ]]; then
|
||||
@ -284,6 +288,7 @@ DEFAULT_SYMPA_WEB_URL="https://$SYMPA_DOMAIN/wws"
|
||||
[[ -n "$SYMPA_DB_USER" ]] && DEFAULT_SYMPA_DB_USER="$SYMPA_DB_USER"
|
||||
[[ -n "$VSERVER_GUEST" ]] && DEFAULT_VSERVER_GUEST="$VSERVER_GUEST"
|
||||
[[ -n "$SYMPA_DB_PASSWD" ]] && DEFAULT_SYMPA_DB_PASSWD="$SYMPA_DB_PASSWD"
|
||||
[[ -n "$APPLY_LOG_NO_USER_IP" ]] && DEFAULT_APPLY_LOG_NO_USER_IP="$APPLY_LOG_NO_USER_IP"
|
||||
|
||||
# -
|
||||
[[ -n "$SYMPA_SYSTEMD_DIR" ]] && DEFAULT_SYMPA_SYSTEMD_DIR="$SYMPA_SYSTEMD_DIR"
|
||||
@ -1233,6 +1238,37 @@ else
|
||||
fi
|
||||
|
||||
|
||||
OK=
|
||||
echo ""
|
||||
echo -e "\033[32m--\033[m"
|
||||
echo ""
|
||||
echo "Apply Patch to prevent logging user IPs "
|
||||
echo ""
|
||||
if [[ ! -f "$PATCH_FILE_NO_LOG_USER_IP" ]] ; then
|
||||
warn Patchfile "\033[1m$PATCH_FILE_NO_LOG_USER_IP\033[m" NOT FOUND
|
||||
APPLY_LOG_NO_USER_IP=false
|
||||
else
|
||||
|
||||
echononl "Apply Patch (yes/no) [$DEFAULT_APPLY_LOG_NO_USER_IP]: "
|
||||
read OK
|
||||
if [ "X$OK" = "X" ]; then
|
||||
OK=$DEFAULT_APPLY_LOG_NO_USER_IP
|
||||
fi
|
||||
OK=`echo "$OK" | tr '[:upper:]' '[:lower:]'`
|
||||
while [ "X$OK" != "Xyes" -a "X$OK" != "Xno" ]; do
|
||||
echo ""
|
||||
echononl "\twrong entry! [yes/no]: "
|
||||
read OK
|
||||
OK=`echo "$OK" | tr '[:upper:]' '[:lower:]'`
|
||||
done
|
||||
if [ "$OK" = "yes" ]; then
|
||||
APPLY_LOG_NO_USER_IP=true
|
||||
else
|
||||
APPLY_LOG_NO_USER_IP=false
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
OK=
|
||||
echo ""
|
||||
echo -e "\033[32m--\033[m"
|
||||
@ -1276,102 +1312,109 @@ else
|
||||
fi
|
||||
if $UPDATE_SYMPA ; then
|
||||
echo ""
|
||||
echo "Old (current) sympa version.....: $SYMPA_OLD_VERSION"
|
||||
echo " Current Installation dir.....: $CURRENT_INSTALL_DIR"
|
||||
echo "Old (current) sympa version.........: $SYMPA_OLD_VERSION"
|
||||
echo " Current Installation dir.........: $CURRENT_INSTALL_DIR"
|
||||
if [[ -z "$CURRENT_INSTALL_SYMLINK" ]]; then
|
||||
echo " Current Install dir symlink..: - not in use -"
|
||||
echo " Current Install dir symlink......: - not in use -"
|
||||
else
|
||||
echo " Current Install dir symlink..: $CURRENT_INSTALL_SYMLINK"
|
||||
echo " Current Install dir symlink......: $CURRENT_INSTALL_SYMLINK"
|
||||
fi
|
||||
echo " Current Data base directory..: $CURRENT_SYMPA_LIST_DATA_BASE_PATH"
|
||||
echo " Current Data base directory......: $CURRENT_SYMPA_LIST_DATA_BASE_PATH"
|
||||
if [[ -z "$CURRENT_SYMPA_LIST_DATA_SYMLINK" ]]; then
|
||||
echo " Current Data dir symlink.....: - not in use -"
|
||||
echo " Current Data dir symlink.........: - not in use -"
|
||||
else
|
||||
echo " Current Data dir symlink.....: $CURRENT_SYMPA_LIST_DATA_SYMLINK"
|
||||
echo " Current Data dir symlink.........: $CURRENT_SYMPA_LIST_DATA_SYMLINK"
|
||||
fi
|
||||
echo ""
|
||||
fi
|
||||
echo ""
|
||||
echo -e "\033[1mSympa new version\033[m...............: \033[1m$SYMPA_VERSION\033[m"
|
||||
echo " First (initial) Install......: $_new"
|
||||
echo " Update ......................: $_update"
|
||||
echo -e "\033[1mSympa new version\033[m...................: \033[1m$SYMPA_VERSION\033[m"
|
||||
echo " First (initial) Install..........: $_new"
|
||||
echo " Update ..........................: $_update"
|
||||
echo ""
|
||||
if ! $UPDATE_SYMPA ; then
|
||||
echo "Sympa support for multidomains..: $SYMPA_SUPPORT_MULTIDOMAINS"
|
||||
echo "Sympa support for multidomains......: $SYMPA_SUPPORT_MULTIDOMAINS"
|
||||
fi
|
||||
echo "Sympa user......................: $SYMPA_USER (id: ${SYMPA_UID})"
|
||||
echo "Sympa group.....................: $SYMPA_GROUP (id: ${SYMPA_GID})"
|
||||
echo "Sympa user..........................: $SYMPA_USER (id: ${SYMPA_UID})"
|
||||
echo "Sympa group.........................: $SYMPA_GROUP (id: ${SYMPA_GID})"
|
||||
echo ""
|
||||
echo "Installation directory..........: $SYMPA_INSTALL_DIR"
|
||||
echo "Sympa's bin directory...........: $SYMPA_BIN_DIR"
|
||||
echo "Sympa's pid directory...........: $SYMPA_PID_DIR"
|
||||
echo "Sympa's cgi directory...........: $SYMPA_CGI_DIR"
|
||||
echo "Sympa's libexec directory.......: $SYMPA_LIBEXEC_DIR"
|
||||
echo "Sympa's static directory........: $SYMPA_STATIC_DIR"
|
||||
echo "Sympa's manpages directory......: $SYMPA_MANPATH"
|
||||
echo "Sympa's main conf directory.....: $SYMPA_MAIN_CONF_DIR"
|
||||
echo "Installation directory..............: $SYMPA_INSTALL_DIR"
|
||||
echo "Sympa's bin directory...............: $SYMPA_BIN_DIR"
|
||||
echo "Sympa's pid directory...............: $SYMPA_PID_DIR"
|
||||
echo "Sympa's cgi directory...............: $SYMPA_CGI_DIR"
|
||||
echo "Sympa's libexec directory...........: $SYMPA_LIBEXEC_DIR"
|
||||
echo "Sympa's static directory............: $SYMPA_STATIC_DIR"
|
||||
echo "Sympa's manpages directory..........: $SYMPA_MANPATH"
|
||||
echo "Sympa's main conf directory.........: $SYMPA_MAIN_CONF_DIR"
|
||||
echo ""
|
||||
echo "Sympa's Data directory..........: $SYMPA_LIST_DATA_DIR"
|
||||
echo "Sympa's Data base path..........: $SYMPA_LIST_DATA_BASE_PATH"
|
||||
echo "Sympa's Data root dirctory......: $SYMPA_LIST_DATA_ROOT_DIR"
|
||||
echo "Sympa's Data directory symlink..: $SYMPA_LIST_DATA_SYMLINK"
|
||||
echo "Sympa's Data directory..............: $SYMPA_LIST_DATA_DIR"
|
||||
echo "Sympa's Data base path..............: $SYMPA_LIST_DATA_BASE_PATH"
|
||||
echo "Sympa's Data root dirctory..........: $SYMPA_LIST_DATA_ROOT_DIR"
|
||||
echo "Sympa's Data directory symlink......: $SYMPA_LIST_DATA_SYMLINK"
|
||||
echo ""
|
||||
echo "Sympa's list archive path.......: $SYMPA_LIST_ARC_PATH"
|
||||
echo "Sympa's list archive symlink....: $SYMPA_LIST_ARC_SYMLINK"
|
||||
echo "Sympa's list archive path...........: $SYMPA_LIST_ARC_PATH"
|
||||
echo "Sympa's list archive symlink........: $SYMPA_LIST_ARC_SYMLINK"
|
||||
echo ""
|
||||
echo "Sympa's aliases file................: $SYMPA_ALIAS_FILE"
|
||||
echo ""
|
||||
if $APPLY_LOG_NO_USER_IP ; then
|
||||
echo -e "Patch to prevent logging user IPs...: \033[33m\033[1mYes\033[m"
|
||||
else
|
||||
echo -e "Patch to prevent logging user IPs...: \033[33m\033[1mNo\033[m"
|
||||
fi
|
||||
echo ""
|
||||
echo "Sympa's aliases file............: $SYMPA_ALIAS_FILE"
|
||||
if ! $UPDATE_SYMPA ; then
|
||||
echo ""
|
||||
echo "(default) domain................: $SYMPA_DOMAIN"
|
||||
echo "Listmaster......................: $SYMPA_LISTMASTER"
|
||||
echo "URL for web interface...........: $SYMPA_WEB_URL"
|
||||
echo "SctiptAlias Directory...........: $_wwsympa_dir"
|
||||
echo "(default) domain....................: $SYMPA_DOMAIN"
|
||||
echo "Listmaster..........................: $SYMPA_LISTMASTER"
|
||||
echo "URL for web interface...............: $SYMPA_WEB_URL"
|
||||
echo "SctiptAlias Directory...............: $_wwsympa_dir"
|
||||
echo ""
|
||||
echo "Database management system......: $SYMPA_DB_TYPE"
|
||||
echo "Database host...................: $SYMPA_DB_HOST"
|
||||
echo "Database port...................: $SYMPA_DB_PORT"
|
||||
echo "Database name...................: $SYMPA_DB_NAME"
|
||||
echo "Database user...................: $SYMPA_DB_USER"
|
||||
echo "Database password...............: $SYMPA_DB_PASSWD"
|
||||
echo "Database management system..........: $SYMPA_DB_TYPE"
|
||||
echo "Database host.......................: $SYMPA_DB_HOST"
|
||||
echo "Database port.......................: $SYMPA_DB_PORT"
|
||||
echo "Database name.......................: $SYMPA_DB_NAME"
|
||||
echo "Database user.......................: $SYMPA_DB_USER"
|
||||
echo "Database password...................: $SYMPA_DB_PASSWD"
|
||||
echo ""
|
||||
fi
|
||||
echo "Start at boot time..............: $START_AT_BOOTTIME"
|
||||
echo "Start at boot time..................: $START_AT_BOOTTIME"
|
||||
echo ""
|
||||
echo "Directory for init scripts......: $SYMPA_INIT_DIR"
|
||||
echo "Directory for init scripts..........: $SYMPA_INIT_DIR"
|
||||
echo ""
|
||||
echo "Use systemd.....................: $SYSTEMD_SUPPORTED"
|
||||
echo "Use systemd.........................: $SYSTEMD_SUPPORTED"
|
||||
if $SYSTEMD_SUPPORTED ; then
|
||||
echo "Directory Systemd unit files....: $SYMPA_SYSTEMD_DIR"
|
||||
echo "Directory Systemd unit files........: $SYMPA_SYSTEMD_DIR"
|
||||
fi
|
||||
echo ""
|
||||
echo "IPv4 Address....................: $IPv4"
|
||||
echo "IPv6 Address....................: $IPv6"
|
||||
echo "IPv4 Address........................: $IPv4"
|
||||
echo "IPv6 Address........................: $IPv6"
|
||||
echo ""
|
||||
echo "Apache User.....................: $HTTPD_USER"
|
||||
echo "Apache User.........................: $HTTPD_USER"
|
||||
if ! $UPDATE_SYMPA ; then
|
||||
echo "Apache VHost directory..........: $apache_vhost_dir"
|
||||
echo "Apache Log Directory............: $apache_log_dir"
|
||||
echo "Apache VHost directory..............: $apache_vhost_dir"
|
||||
echo "Apache Log Directory................: $apache_log_dir"
|
||||
echo ""
|
||||
echo "Postfix Configuration Directory.: $POSTFIX_CONF_DIR"
|
||||
echo "Postfix Configuration Directory.....: $POSTFIX_CONF_DIR"
|
||||
fi
|
||||
if $UPDATE_SYMPA ; then
|
||||
echo ""
|
||||
echo -e "-- \033[34m\033[1mSome determined defines of the installed Sympa System\033[m --"
|
||||
echo ""
|
||||
echo " Apache VHost directory..........: $apache_vhost_dir"
|
||||
echo " Apache Log Directory............: $apache_log_dir"
|
||||
echo " Apache VHost directory..............: $apache_vhost_dir"
|
||||
echo " Apache Log Directory................: $apache_log_dir"
|
||||
echo ""
|
||||
echo " (default) domain..................: $SYMPA_DOMAIN"
|
||||
echo " Listmaster........................: $SYMPA_LISTMASTER"
|
||||
echo " URL for web interface.............: $SYMPA_WEB_URL"
|
||||
echo " SctiptAlias Directory.............: $_wwsympa_dir"
|
||||
echo " (default) domain......................: $SYMPA_DOMAIN"
|
||||
echo " Listmaster............................: $SYMPA_LISTMASTER"
|
||||
echo " URL for web interface.................: $SYMPA_WEB_URL"
|
||||
echo " SctiptAlias Directory.................: $_wwsympa_dir"
|
||||
echo ""
|
||||
echo " Database management system........: $SYMPA_DB_TYPE"
|
||||
echo " Database host.....................: $SYMPA_DB_HOST"
|
||||
echo " Database port.....................: $SYMPA_DB_PORT"
|
||||
echo " Database name.....................: $SYMPA_DB_NAME"
|
||||
echo " Database user.....................: $SYMPA_DB_USER"
|
||||
echo " Database password.................: $SYMPA_DB_PASSWD"
|
||||
echo " Database management system............: $SYMPA_DB_TYPE"
|
||||
echo " Database host.........................: $SYMPA_DB_HOST"
|
||||
echo " Database port.........................: $SYMPA_DB_PORT"
|
||||
echo " Database name.........................: $SYMPA_DB_NAME"
|
||||
echo " Database user.........................: $SYMPA_DB_USER"
|
||||
echo " Database password.....................: $SYMPA_DB_PASSWD"
|
||||
echo ""
|
||||
fi
|
||||
echo ""
|
||||
@ -1478,6 +1521,12 @@ echo "## - Sympa's list archive symlink......: $SYMPA_LIST_ARC_SYMLINK" >> $_log
|
||||
echo "## -" >> $_log_file
|
||||
echo "## - Sympa's aliases file..............: $SYMPA_ALIAS_FILE" >> $_log_file
|
||||
echo "## -" >> $_log_file
|
||||
if $APPLY_LOG_NO_USER_IP ; then
|
||||
echo "## - Patch to prevent logging user IPs.: Yes" >> $_log_file
|
||||
else
|
||||
echo "## - Patch to prevent logging user IPs..: No" >> $_log_file
|
||||
fi
|
||||
echo "## -" >> $_log_file
|
||||
if ! $UPDATE_SYMPA ; then
|
||||
echo "## -" >> $_log_file
|
||||
echo "## - (default) domain..................: $SYMPA_DOMAIN" >> $_log_file
|
||||
@ -1574,6 +1623,8 @@ echo "SYMPA_LIST_ARC_SYMLINK=$SYMPA_LIST_ARC_SYMLINK" >> $_log_file
|
||||
echo "" >> $_log_file
|
||||
echo "SYMPA_ALIAS_FILE=$SYMPA_ALIAS_FILE" >> $_log_file
|
||||
echo "" >> $_log_file
|
||||
echo "APPLY_LOG_NO_USER_IP=$APPLY_LOG_NO_USER_IP" >> $_log_file
|
||||
echo "" >> $_log_file
|
||||
echo "SYMPA_DOMAIN=$SYMPA_DOMAIN" >> $_log_file
|
||||
echo "SYMPA_LISTMASTER=$SYMPA_LISTMASTER" >> $_log_file
|
||||
echo "SYMPA_WEB_URL=$SYMPA_WEB_URL" >> $_log_file
|
||||
@ -2333,8 +2384,8 @@ else
|
||||
echononl "\tBackup current data base directory ($CURRENT_SYMPA_LIST_DATA_BASE_PATH).."
|
||||
echo "## - Backup current data base directory ($CURRENT_SYMPA_LIST_DATA_BASE_PATH).." >> $_log_file
|
||||
echo "## -" >> $_log_file
|
||||
echo "cp -a \"${CURRENT_SYMPA_LIST_DATA_BASE_PATH}\" \"${CURRENT_SYMPA_LIST_DATA_BASE_PATH}.$backup_date\"" >> $_log_file
|
||||
cp -a "${CURRENT_SYMPA_LIST_DATA_BASE_PATH}" "${CURRENT_SYMPA_LIST_DATA_BASE_PATH}.$backup_date" >> $_log_file 2>&1
|
||||
echo "cp -al \"${CURRENT_SYMPA_LIST_DATA_BASE_PATH}\" \"${CURRENT_SYMPA_LIST_DATA_BASE_PATH}.$backup_date\"" >> $_log_file
|
||||
cp -al "${CURRENT_SYMPA_LIST_DATA_BASE_PATH}" "${CURRENT_SYMPA_LIST_DATA_BASE_PATH}.$backup_date" >> $_log_file 2>&1
|
||||
if [ "$?" = "0" ]; then
|
||||
echo_ok
|
||||
else
|
||||
@ -2616,6 +2667,37 @@ else
|
||||
See '${_log_file}' for further informations."
|
||||
fi
|
||||
|
||||
## - Patch to prevent logging user IPs
|
||||
## -
|
||||
echononl "\tApply Patch to prevent from logging user IPs .."
|
||||
if $APPLY_LOG_NO_USER_IP ; then
|
||||
echo "" >> $_log_file
|
||||
echo "## - Apply Patch to prevent from logging user IPs .." >> $_log_file
|
||||
echo "## -" >> $_log_file
|
||||
echo "patch -d $_builddir -p1 < $PATCH_FILE_NO_LOG_USER_IP" >> $_log_file
|
||||
patch -d $_builddir -p1 < $PATCH_FILE_NO_LOG_USER_IP >> $_log_file 2>&1
|
||||
if [ "$?" = "0" ]; then
|
||||
echo_ok
|
||||
else
|
||||
echo_failed
|
||||
error "Cannot apply patchfile '$PATCH_FILE_NO_LOG_USER_IP'..\n
|
||||
See '${_log_file}' for further informations."
|
||||
|
||||
echo ""
|
||||
echononl "continue anyway [yes/no]: "
|
||||
read OK
|
||||
OK="$(echo "$OK" | tr '[:upper:]' '[:lower:]')"
|
||||
while [[ "$OK" != "yes" ]] && [[ "$OK" != "no" ]] ; do
|
||||
echononl "Wrong entry! - repeat [yes/no]: "
|
||||
read OK
|
||||
done
|
||||
echo ""
|
||||
|
||||
fi
|
||||
else
|
||||
echo_skipped
|
||||
fi
|
||||
|
||||
|
||||
## - Configure sympa
|
||||
## -
|
||||
|
Loading…
Reference in New Issue
Block a user