#!/bin/bash #remaster lib [ -d "" ] || { echo "LIBDIR not exist"; exit 1; } #desinfect.17 # . -Y ubuntu.16.04 -> ubuntu -> debian source /proj/ubuntu.16.04 project_relation="desinfect.17 $project_relation" #sourcelist_desinfect_set_nomal2017 [chroot_dir] function sourcelist_desinfect_set_nomal2017() { echo -n "build normal source.list ... " #$1 = chroot directory sourcelist="$1/etc/apt/sources.list" echo "#### Desinfe't 2017 ####" > "$sourcelist" echo "" >> "$sourcelist" echo "deb http://www.heise.de/ct/projekte/desinfect/ubuntu 2017 main" >> "$sourcelist" echo "" >> "$sourcelist" echo "" >> "$sourcelist" echo "# #### Ubuntu 16.04 LTS (Xenial) ####" >> "$sourcelist" echo "#" >> "$sourcelist" echo "# deb http://archive.ubuntu.com/ubuntu xenial main restricted universe multiverse" >> "$sourcelist" echo "# deb-src http://archive.ubuntu.com/ubuntu xenial main restricted universe multiverse" >> "$sourcelist" echo "#" >> "$sourcelist" echo "# deb http://security.ubuntu.com/ubuntu xenial-updates main restricted universe multiverse" >> "$sourcelist" echo "# deb-src http://security.ubuntu.com/ubuntu xenial-updates main restricted universe multiverse" >> "$sourcelist" echo "#" >> "$sourcelist" echo "# deb http://security.ubuntu.com/ubuntu xenial-security main restricted universe multiverse" >> "$sourcelist" echo "# deb-src http://security.ubuntu.com/ubuntu xenial-security main restricted universe multiverse" >> "$sourcelist" echo "#" >> "$sourcelist" echo "# ## This software is not part of Ubuntu, but is offered by third-party" >> "$sourcelist" echo "# ## developers who want to ship their latest software." >> "$sourcelist" echo "# deb http://extras.ubuntu.com/ubuntu xenial main" >> "$sourcelist" echo "done" } #sourcelist_desinfect_set_extendet2017 [chroot_dir] function sourcelist_desinfect_set_extendet2017() { echo -n "build extendet source.list ... " sourcelist="$1/etc/apt/sources.list" echo "#### Desinfe't 2017 ####" > "$sourcelist" echo "" >> "$sourcelist" echo "deb http://www.heise.de/ct/projekte/desinfect/ubuntu 2017 main" >> "$sourcelist" echo "" >> "$sourcelist" echo "" >> "$sourcelist" echo "#### Ubuntu 16.04 LTS (Xenial) ####" >> "$sourcelist" echo "" >> "$sourcelist" echo "deb http://archive.ubuntu.com/ubuntu xenial main restricted universe multiverse" >> "$sourcelist" echo "deb-src http://archive.ubuntu.com/ubuntu xenial main restricted universe multiverse" >> "$sourcelist" echo "" >> "$sourcelist" echo "deb http://security.ubuntu.com/ubuntu xenial-updates main restricted universe multiverse" >> "$sourcelist" echo "deb-src http://security.ubuntu.com/ubuntu xenial-updates main restricted universe multiverse" >> "$sourcelist" echo "" >> "$sourcelist" echo "deb http://security.ubuntu.com/ubuntu xenial-security main restricted universe multiverse" >> "$sourcelist" echo "deb-src http://security.ubuntu.com/ubuntu xenial-security main restricted universe multiverse" >> "$sourcelist" echo "" >> "$sourcelist" echo "## This software is not part of Ubuntu, but is offered by third-party" >> "$sourcelist" echo "## developers who want to ship their latest software." >> "$sourcelist" echo "deb http://extras.ubuntu.com/ubuntu xenial main" >> "$sourcelist" echo "done" } #os_update-desinfect.17 [chroot_dir] function os_update-desinfect.17() { #$1 = chroot directory chroot_dir="$1" #call main os_update from debian os_update-debian "$chroot_dir" echo "update virus definitions ... " #Avast Avira { echo "Avira ..." #chroot "$chroot_dir" /bin/bash --login -c ". /tmp/env.sh; /AntiVirUpdate/avupdate" | grep -v " -> " chroot_sh "$chroot_dir" "/AntiVirUpdate/avupdate" | grep -v " -> " echo "Avira done" } #Clam AV { echo "ClamAV..." #chroot "$chroot_dir" /bin/bash --login -c ". /tmp/env.sh; freshclam" > /dev/null chroot_sh "$chroot_dir" "freshclam" > /dev/null rm -f "$chroot_dir/var/lib/clamav/daily.cld" echo "ClamAV done" } #Eset AV { echo "Eset AV ..." tmp_file_23421="`mktemp`" cat "$chroot_dir/etc/opt/eset/esets/esets.cfg" | grep -v "av_update_username" | grep -v "av_update_password" > "$tmp_file_23421" cat "$tmp_file_23421" > "$chroot_dir/etc/opt/eset/esets/esets.cfg" chroot "$chroot_dir" /bin/bash -c "/usr/bin/esetrand" >> "$chroot_dir/etc/opt/eset/esets/esets.cfg" av_eaet_timeout=300 echo "set timeout: $((av_eaet_timeout/60))min" tmp_var_3092="`chroot "$chroot_dir" /bin/bash -c "/opt/desinfect/conky_info.sh eset"`" #eig. update routine #chroot "$chroot_dir" /bin/bash -c "/etc/init.d/esets restart" chroot_sh "$chroot_dir" "/etc/init.d/esets restart" sleep 2 #chroot "$chroot_dir" /bin/bash --login -c "/opt/eset/esets/sbin/esets_daemon --update" chroot_sh "$chroot_dir" "/opt/eset/esets/sbin/esets_daemon --update" #warten auf daemon update ... echo "wait $((av_eaet_timeout/60))min for Eset AV update" while [ "`chroot "$chroot_dir" /bin/bash -c "/opt/desinfect/conky_info.sh eset"`" == "$tmp_var_3092" ]; do sleep 10 av_eaet_timeout=$((av_eaet_timeout-10)) [ $av_eaet_timeout -gt 0 ] || tmp_var_3092= done sleep 4 #chroot "$chroot_dir" /bin/bash -c "/etc/init.d/esets stop" chroot_sh "$chroot_dir" "/etc/init.d/esets stop" cat "$tmp_file_23421" > "$chroot_dir/etc/opt/eset/esets/esets.cfg" rm "$tmp_file_23421" tmp_file_23421= tmp_var_3092= echo "Eset AV done" } #Sophos { echo "Sophos..." #chroot "$chroot_dir" /bin/bash --login -c "/opt/sophos-av/bin/savupdate -v3" chroot_sh "$chroot_dir" "/opt/sophos-av/bin/savupdate -v3" chroot_sh "$chroot_dir" "/opt/sophos-av/bin/savdstatus --version" #chroot "$chroot_dir" /bin/bash -c "/opt/sophos-av/bin/savupdate -v3 -a" echo "Sophos done" } #F-Secure { echo "F-Secure..." chroot_sh "$chroot_dir" "/etc/init.d/fsaua start" chroot_sh "$chroot_dir" "/etc/init.d/fsupdate stop" ( sleep 1m; chroot_sh "$chroot_dir" "/etc/init.d/fsaua start" ) & chroot_sh "$chroot_dir" "/opt/f-secure/fssp/bin/dbupdate_lite" && echo "Update Success" sleep 1m chroot_sh "$chroot_dir" "/etc/init.d/fsaua stop" chroot_sh "$chroot_dir" "/etc/init.d/fsupdate stop" echo "F-Secure done" } echo "update virus definitions done" } function os_update() { os_update-desinfect.17 $@; } #proxy_enable-desinfect.17 [chroot_dir] [proxy_host] [proxy_port] function proxy_enable-desinfect.17() { proxy_enable-debian $1 $2 $3 echo "enable proxy for desinfect's av ... " chroot_dir="$1" proxy_host="$2" proxy_port="$3" tmp_file_344532="`mktemp`" #Avast AntiVirus if [ -f "$chroot_dir/AntiVirUpdate/avupdate" ]; then echo "Avast AntiVirus: Found" sed -i "s/--skip-master-file/--skip-master-file --proxy-host=$proxy_host --proxy-port=$proxy_port/g" "$chroot_dir/AntiVirUpdate/avupdate" sed -i "s/--proxy-host=$proxy_host --proxy-port=$proxy_port --proxy-host=$proxy_host --proxy-port=$proxy_port/--proxy-host=$proxy_host --proxy-port=$proxy_port/g" "$chroot_dir/AntiVirUpdate/avupdate" else eco "Avast AntiVirus: NOT Found" fi #Eset AV if [ -f "$chroot_dir/etc/opt/eset/esets/esets.cfg" ]; then echo "Eset AV: Found" cat "$chroot_dir/etc/opt/eset/esets/esets.cfg" | grep -v "proxy_addr" | grep -v "proxy_port" > "$tmp_file_344532" rm "$chroot_dir/etc/opt/eset/esets/esets.cfg" cp "$tmp_file_344532" "$chroot_dir/etc/opt/eset/esets/esets.cfg" echo "proxy_addr = \"$proxy_host\"" >> "$chroot_dir/etc/opt/eset/esets/esets.cfg" echo "proxy_port = $proxy_port" >> "$chroot_dir/etc/opt/eset/esets/esets.cfg" else eco "Eset AV: NOT Found" fi #ClamAV if [ -f "$chroot_dir/etc/clamav/freshclam.conf" ]; then echo "ClamAV: Found" cat "$chroot_dir/etc/clamav/freshclam.conf" | grep -v "HTTPProxyServer" | grep -v "HTTPProxyPort" > "$tmp_file_344532" rm "$chroot_dir/etc/clamav/freshclam.conf" cp "$tmp_file_344532" "$chroot_dir/etc/clamav/freshclam.conf" echo "HTTPProxyServer $proxy_host" >> "$chroot_dir/etc/clamav/freshclam.conf" echo "HTTPProxyPort $proxy_port" >> "$chroot_dir/etc/clamav/freshclam.conf" else eco "ClamAV: NOT Found" fi #Sophos if [ -f ""$chroot_dir/opt/sophos-av/etc/savd.cfg"" ]; then echo "Sophos: Found" echo "sophos:
http://$proxy_host:$proxy_port
" >> "$chroot_dir/opt/sophos-av/etc/savd.cfg" else eco "Sophos: NOT Found" fi #F-Secure if [ -f "$chroot_dir/opt/f-secure/fsaua/fsaua_config.template" ]; then echo "F-Secure: Found" echo "enable_fsma=no" >> "$chroot_dir/opt/f-secure/fsaua/fsaua_config.template" echo "update_servers=http://fsbwserver-direct.f-secure.com" >> "$chroot_dir/opt/f-secure/fsaua/fsaua_config.template" echo "update_proxies=http://$proxy_host:$proxy_port" >> "$chroot_dir/opt/f-secure/fsaua/fsaua_config.template" echo "http_proxies=http://$proxy_host:$proxy_port" >> "$chroot_dir/opt/f-secure/fsaua/fsaua_config.template" cat "$chroot_dir/opt/f-secure/fsaua/fsaua_config.template" > "$chroot_dir/etc/opt/f-secure/fsaua/fsaua_config" else eco "F-Secure: NOT Found" fi rm "$tmp_file_344532" tmp_file_344532= echo "done" } function proxy_enable() { proxy_enable-desinfect.17 $@; } #tools_add-desinfect.17 [chroot_dir] [tools_list] function tools_add-desinfect.17() { #$1 = chroot directory chroot_dir="$1" tools_list="$2" sourcelist_desinfect_set_extendet2017 "$chroot_dir" tools_add-debian "$chroot_dir" "$tools_list" sourcelist_desinfect_set_nomal2017 "$chroot_dir" } function tools_add() { tools_add-desinfect.17 $@; } function project_mods-desinfect.17() { #config xrdp to start xfce [ -d "$chroot_path/etc/xrdp/" ] && { echo '#!/bin/sh' > "$chroot_path"/etc/xrdp/startwm.sh echo "export LANG=\"de_DE.UTF-8\"" >> "$chroot_path"/etc/xrdp/startwm.sh echo "startxfce4" >> "$chroot_path"/etc/xrdp/startwm.sh } } function project_mods() { project_mods-desinfect.17 $@; }