#1 23.11.09 23:23
поднимаем сервер обновления nod32 на linux
Укроп написал(а):
все очень просто - обясняется для новичков лол.
нам понадобится апач. создаем virtualhost, можно безо всех скриптовых опций. пусть ROOT директория у нас будет, например, /var/www/html, так, что если бы обращаемся http://217.71.142.5/update.var (217.71.142.5 ваш айпи, например), то у нас отдается файл /var/www/html/update.var
разберетесь, в общем.
скрипт установки - просто создает нужные директорииКод::
cd /var/www/html/ mkdir -p download/engine3 mkdir -p download/engine3ess mkdir -p eset_updлюбопытные разберутся, ленивым комментарии так и так не нужны.
/var/www/html/get_nod_upd.shКод::
#!/bin/bash #written by ukrop CURDIR=/var/www/html cd $CURDIR #берем свежий лист апдейтов wget -q --timestamping http://u40.eset.com/eset_upd/update.ver mv -f update.ver update.rar cd eset_upd #распаковываем его ../unrar e -f -y -c- ../update.rar 2>&1 >/dev/null cd .. mv -f update.rar update.ver #фильтруем список URI апдейтов, и модифицируем до валидных URL grep file= $CURDIR/eset_upd/update.ver |grep -v engine3ess| sed -e 's/file\=/http\:\/\/u40.eset.com/' |grep -v data > downlist1.txt grep file= $CURDIR/eset_upd/update.ver |grep engine3ess| sed -e 's/file\=/http\:\/\/u40.eset.com/' |grep -v data > downlist2.txt #берем свежий список лицензий с неофициального сайта wget -q --timestamping http://www.allnod.com/paroli-kljuchi-nod32/ -O tmpindex #с помощью грубых манипуляций выжимаем первую же пару логин-пароль egrep -i "username|password" ./tmpindex | sed 's/</\n/g;s/>/\n/g;s/Username:/USERNAME=/i;s/Password:/PASSWORD=/i;s/ //g' |egrep "PASS|USERN"|head -2 >pass.sh #теперь у нас в этом файле ВСЕГДА свежая пара логин-пароль chmod 755 pass.sh rm -f tmpindex source ./pass.sh #грабим апдейты, используя данные полученных лицензий. что примечательно, ранее выкачаные апдейты повторно не качаются. cd download/engine3/ wget -q --timestamping --http-user=$USERNAME --http-password=$PASSWORD --input-file=../../downlist1.txt cd ../engine3ess/ wget -q --timestamping --http-user=$USERNAME --http-password=$PASSWORD --input-file=../../downlist2.txtделаем файл исполнимым
Код::
chmod 755 /var/www/html/get_nod_upd.shразмещаем в кронтабе раз в час.
Код::
crontab -eдобавляем туда строчку
Код::
05 * * * * /var/www/html/get_nod_upd.shскрипт полностью автоматический, вам даже не приходится периодически вбивать лицензии. хотя, конечно, его работоспособность зависит от формата страницы http://www.allnod.com/paroli-kljuchi-nod32/ и разнообразия папок на серверах обновлений (заметье, имеется целый букет папок, например, engine3ess, engine3. и кто еще знает каких они папок насоздают. в этом случае скрипт придется немного подправить)
и да, обновлений, в целом, на 100 метров. со временем некоторые апдейты становятся не нужны, но удалять их излишне.
ах, да, вам понадобится программа unrar, причем, мы не стали заморачиваться, и взяли первый попавшийся, какой-то дремучей версии unrar 0.0.1 Copyright (C) 2004 Ben Asselstine, Jeroen Dekkers. взять его можно тут http://rghost.ru/637650. и да, не забывайте проставить ему прав на исполнение. схоронять его тоже в /var/www/html/
Это не я бляяя...
Исправлено Укроп (23.11.09 23:36)
Offline
#4 05.04.10 13:49
Re: поднимаем сервер обновления nod32 на linux
Укроп написал(а):
они изменили сервера обновлений. берите свежий скрипт.
так же появились обновления для продуктов
ess
v3eav
v3ess
emsxКод::
# код создания новых директорий mkdir -p ./download/engine3 mkdir -p ./download/engine3ess mkdir -p ./eset_upd # добавились новые директории mkdir -p ./download/win/emsx mkdir -p ./download/win/v3eav mkdir -p ./download/win/v3essизмененый и добавленный скрипт.
Код::
#!/bin/bash CURDIR=/var/www/sharedip cd $CURDIR wget -q --timestamping http://update.eset.com/eset_upd/update.ver mv -f update.ver update.rar cd eset_upd ../unrar e -f -y -c- ../update.rar 2>&1 >/dev/null cd .. mv -f update.rar update.ver grep file= $CURDIR/eset_upd/update.ver |grep "engine3/"| sed -e 's/file\=/http\:\/\/um10.eset.com/' |grep -v data > downlist1.txt grep file= $CURDIR/eset_upd/update.ver |grep engine3ess| sed -e 's/file\=/http\:\/\/um10.eset.com/' |grep -v data > downlist2.txt grep file= $CURDIR/eset_upd/update.ver |grep v3eav| sed -e 's/file\=/http\:\/\/um10.eset.com/' |grep -v data > downlist3.txt grep file= $CURDIR/eset_upd/update.ver |grep v3ess| sed -e 's/file\=/http\:\/\/um10.eset.com/' |grep -v data > downlist4.txt grep file= $CURDIR/eset_upd/update.ver |grep emsx| sed -e 's/file\=/http\:\/\/um10.eset.com/' |grep -v data > downlist5.txt wget -q --timestamping http://www.allnod.com/paroli-kljuchi-nod32/ -O tmpindex egrep -i "username|password" ./tmpindex | sed 's/</\n/g;s/>/\n/g;s/Username:/USERNAME=/i;s/Password:/PASSWORD=/i;s/ //g' |egrep "PASS|USERN"|head -2 >pass.sh chmod 755 pass.sh rm -f tmpindex source ./pass.sh cd download/engine3/ wget -q --timestamping --http-user=$USERNAME --http-password=$PASSWORD --input-file=../../downlist1.txt cd ../engine3ess/ wget -q --timestamping --http-user=$USERNAME --http-password=$PASSWORD --input-file=../../downlist2.txt cd ../win/v3eav/ wget -q --timestamping --http-user=$USERNAME --http-password=$PASSWORD --input-file=../../../downlist3.txt cd ../v3ess/ wget -q --timestamping --http-user=$USERNAME --http-password=$PASSWORD --input-file=../../../downlist4.txt cd ../emsx/ wget -q --timestamping --http-user=$USERNAME --http-password=$PASSWORD --input-file=../../../downlist5.txt
Это не я бляяя...
Исправлено Укроп (08.04.10 17:26)
Offline


