#!/bin/bash #remaster lib [ -d "" ] || { echo "LIBDIR not exist"; exit 1; } #desinfect.16 # . -Y ubuntu.14.04 -> ubuntu -> debian source /proj/ubuntu.14.04 project_relation="desinfect.16 $project_relation" #chroot_initial-desinfect.16 [chroot_dir] function chroot_initial-desinfect.16() { #$1 = chroot dir chroot_initial-debian "$1" echo -n "initial desinfect on chroot ... " #check chroot dir chroot_dir="$1" [ -d "$chroot_dir" ] || { echo "### ERROR ### chroot_initial_desinfect: chroot directory not exist!" return 12 } #mount virus definitions mount --bind $chroot_dir/var/kl/bases_rd{.orig,} echo "done" } function chroot_initial() { chroot_initial-desinfect.16 $@; } #chroot_umount-desinfect.16 [chroot_dir] function chroot_umount-desinfect.16() { #call main mount chroot_umount-debian "$1" echo -n "unmount desinfect on chroot ... " #check chroot dir chroot_dir="$1" [ -d "$chroot_dir" ] || { echo "### ERROR ### chroot_umount_desinfect: chroot directory not exist!" return 12 } umount "$chroot_dir/var/kl/bases_rd" [ "$?" -gt 0 ] && { echo "### ERROR ### chroot_umount_desinfect: can't umount \"$chroot_dir/var/kl/bases_rd\"!" #return 21 } echo "done" } function chroot_umount() { chroot_umount-desinfect.16 $@; } #proxy_enable-desinfect.16 [chroot_dir] [proxy_host] [proxy_port] function proxy_enable-desinfect.16() { proxy_enable-debian $1 $2 $3 echo -n "enable proxy for desinfect's av ... " chroot_dir="$1" proxy_host="$2" proxy_port="$3" tmp_file_344532="`mktemp`" #Avast AntiVirus 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" #Clam AV 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" #Eset AV 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" #Kaspersky sed -i "s/0<\/tDWORD>/1<\/tDWORD>/g" "$chroot_dir/etc/kl/config.xml" sed -i "s/<\/tSTRING>/$proxy_host<\/tSTRING>/g" "$chroot_dir/etc/kl/config.xml" sed -i "s/<\/tDWORD>/$proxy_port<\/tDWORD>/g" "$chroot_dir/etc/kl/config.xml" rm "$tmp_file_344532" tmp_file_344532= echo "done" } function proxy_enable() { proxy_enable-desinfect.16 $@; } #sourcelist_desinfect_set_nomal2016 [chroot_dir] function sourcelist_desinfect_set_nomal2016() { echo -n "build normal source.list ... " #$1 = chroot directory sourcelist="$1/etc/apt/sources.list" echo "#### Desinfe't 2016 ####" > "$sourcelist" echo "" >> "$sourcelist" echo "deb http://www.heise.de/ct/projekte/desinfect/ubuntu 2016 main" >> "$sourcelist" echo "" >> "$sourcelist" echo "" >> "$sourcelist" echo "# #### Ubuntu 14.04 (trusty) ####" >> "$sourcelist" echo "#" >> "$sourcelist" echo "# deb http://de.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse" >> "$sourcelist" echo "# deb-src http://de.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse" >> "$sourcelist" echo "#" >> "$sourcelist" echo "# deb http://de.archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse" >> "$sourcelist" echo "# deb-src http://de.archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse" >> "$sourcelist" echo "#" >> "$sourcelist" echo "# deb http://de.archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse" >> "$sourcelist" echo "# deb-src http://de.archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse" >> "$sourcelist" echo "#" >> "$sourcelist" echo "# deb http://de.archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse" >> "$sourcelist" echo "# deb-src http://de.archive.ubuntu.com/ubuntu trusty-backports 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 trusty main" >> "$sourcelist" echo "done" } #sourcelist_desinfect_set_extendet2016 [chroot_dir] function sourcelist_desinfect_set_extendet2016() { echo -n "build extendet source.list ... " sourcelist="$1/etc/apt/sources.list" echo "#### Desinfe't 2016 ####" > "$sourcelist" echo "" >> "$sourcelist" echo "deb http://www.heise.de/ct/projekte/desinfect/ubuntu 2016 main" >> "$sourcelist" echo "" >> "$sourcelist" echo "" >> "$sourcelist" echo "#### Ubuntu 14.04 (trusty) ####" >> "$sourcelist" echo "" >> "$sourcelist" echo "deb http://de.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse" >> "$sourcelist" echo "deb-src http://de.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse" >> "$sourcelist" echo "" >> "$sourcelist" echo "deb http://de.archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse" >> "$sourcelist" echo "deb-src http://de.archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse" >> "$sourcelist" echo "" >> "$sourcelist" echo "deb http://de.archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse" >> "$sourcelist" echo "deb-src http://de.archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse" >> "$sourcelist" echo "" >> "$sourcelist" echo "deb http://de.archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse" >> "$sourcelist" echo "deb-src http://de.archive.ubuntu.com/ubuntu trusty-backports 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 trusty main" >> "$sourcelist" echo "done" } #os_update-desinfect.16 [chroot_dir] function os_update-desinfect.16() { #$1 = chroot directory chroot_dir="$1" #call main os_update os_update-debian "$chroot_dir" echo "update virus definitions ... " #Avast Avira { echo "Avira ..." chroot "$chroot_dir" /bin/bash -c "/AntiVirUpdate/avupdate" | grep -v " -> " echo "Avira done" } #Clam AV { echo "ClamAV..." chroot "$chroot_dir" /bin/bash -c "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" echo "set timeout: 2min" av_eaet_timeout=1200 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" sleep 2 chroot "$chroot_dir" /bin/bash -c "/opt/eset/esets/sbin/esets_daemon --update" #warten auf daemon update ... sleep 10m echo "wait 10min for Eset AV update" while [ "`chroot "$chroot_dir" /bin/bash -c "/opt/desinfect/conky_info.sh eset"`" == "$tmp_var_3092" ]; do sleep 1 av_eaet_timeout=$((av_eaet_timeout-1)) [ $av_eaet_timeout -gt 0 ] || tmp_var_3092= done sleep 4 chroot "$chroot_dir" /bin/bash -c "/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" } #Karspersky { echo "Karspersky ..." #gen update-scrypt echo '#!/bin/bash' > "$chroot_dir/tmp/up_kasp" echo 'PATH=/usr/lib/kl:$PATH' >> "$chroot_dir/tmp/up_kasp" echo 'LD_LIBRARY_PATH=/usr/lib/kl:$LD_LIBRARY_PATH' >> "$chroot_dir/tmp/up_kasp" echo 'KL_PLUGINS_PATH=/usr/lib/kl' >> "$chroot_dir/tmp/up_kasp" echo 'export PATH LD_LIBRARY_PATH KL_PLUGINS_PATH' >> "$chroot_dir/tmp/up_kasp" echo '/usr/lib/kl/kav update' >> "$chroot_dir/tmp/up_kasp" chmod +x "$chroot_dir/tmp/up_kasp" chroot "$chroot_dir" /bin/bash -c "/tmp/up_kasp" | grep -v ".kdc" | grep -v "File downloaded" rm "$chroot_dir/tmp/up_kasp" echo "Karspersky done" } echo "update virus definitions done" } function os_update() { os_update-desinfect.16 $@; } #tools_add-desinfect.16 [chroot_dir] [tools_list] function tools_add-desinfect.16() { #$1 = chroot directory chroot_dir="$1" tools_list="$2" sourcelist_desinfect_set_extendet2016 "$chroot_dir" tools_add-debian "$chroot_dir" "$tools_list" sourcelist_desinfect_set_nomal2016 "$chroot_dir" } function tools_add() { tools_add-desinfect.16 $@; }