вторник, 28 июня 2016 г.

Рекомендуемые нстройки Web сервера от Mozilla


https://mozilla.github.io/server-side-tls/ssl-config-generator/


вторник, 17 мая 2016 г.

Понедельник как первый день недели в календаре cal

В конец файла ~/.bashrc добавляем:

alias cal='ncal -M -C'

Блокировка опасных вложений в письмах с помощью clamsmtp

В последнее время случаи рассылки вирусов-шифровальщиков в почтовых вложениях пошли на убыль, однако, такие письма продолжают попадаться.

Определимся со списком потенциально опасных вложений:

.ade, .adp, .bat, .chm, .cmd, .com, .cpl, .exe, .hta, .ins, .isp, .jar, .js, .jse, .lib, .lnk, .mde, .msc, .msp, .mst, .pif, .scr, .sct, .shb, .sys, .vb, .vbe, .vbs, .vxd, .wsc, .wsf, .wsh

В том числе, если файлы с такими расширениями находятся в архивах:
.zip, .rar, .7z.

Для фильтрации используется возможность написания собственного файла сигнатур для ClamAV. Формат .cdb файла следующий:
VirusName:ContainerType:ContainerSize:FileNameREGEX:
FileSizeInContainer:FileSizeReal:IsEncrypted:FilePos:
Res1:Res2[:MinFL[:MaxFL]]

Для нашего списка блокировки на примере .exe файлов:
rules_block_exe:CL_TYPE_MAIL:*:\.[Ee][Xx][Ee]$:*:*:*:*:*:*
rules_block_Zip_exe:CL_TYPE_ZIP:*:\.[Ee][Xx][Ee]$:*:*:*:*:*:*
rules_block_Rar_exe:CL_TYPE_RAR:*:\.[Ee][Xx][Ee]$:*:*:*:*:*:*
Полный список http://pastebin.com/Bisxq1ez

Сохраняем наш файл сигнатур в /var/lib/clamav/rules_attachment_block.cdb

Если на почтовом сервере уже используется связка postfix+clamsmtp, то дополнительной  настройки более не требуется. Однако, для удобства пользователей и системного администратора было решено написать скрипт, высылающий получателю сообщение о недоставленном письме с вирусом или запрещённым вложением.

В /etc/clamsmtpd.conf добавляем:
VirusAction: /etc/clamav/script.sh

Скрипт /etc/clamav/script.sh (http://pastebin.com/xTZ9tQ1h)
#!/bin/sh
DOMAIN=domain.com
# Notification receiver

ADMIN=postmaster@domain.com

# E-mail sending function

alert_send() {
( cat <<EOF;
To: $RECIPIENT
Reply-To: $ADMIN
Subject: =?UTF-8?B?`echo -n $SUBJECT | base64`?=
Content-Type: multipart/mixed; boundary=simple boundary

This is a multi-part message in MIME format.
--simple boundary
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: base64

`echo -n $DATA | base64`
--simple boundary

EOF
) | sendmail -t -oi
}

# E-mail to Administrator
SUBJECT="Письмо добавлено в карантин"
DATA="<p><b>Причина блокировки или имя вируса:</b> $VIRUS<br> \
        <b>Отправитель:</b> $SENDER<br> \
        <b>Получатель:</b> $RECIPIENTS<br><br> \
        <b>Перемещено в карантин:</b> $EMAIL<br><br>"
RECIPIENT=$ADMIN
alert_send

# E-mail to User
for RECIPIENT in $RECIPIENTS
do
     if [ X`echo $RECIPIENT | egrep @$DOMAIN$` != "X" ];
     then
        SUBJECT="Письмо добавлено в карантин"
        DATA="<p><b>Отправитель:</b> $SENDER<br> \
        <b>Получатель:</b> $RECIPIENTS<br><br> \
        <b>Перемещено в карантин:</b> $EMAIL<br><br> \
        Письмо не доставлено и перемещено в карантин из-за подозрительного вложения.<br> \
        Если вы уверены, что это ошибка, свяжитесь с отделом ИТ."
     alert_send
     fi
done

пятница, 13 мая 2016 г.

Xenserver Root Disk

Заполнение корневого раздела Xenserver может вызвать множество проблем, включая зависания запущенных виртуальных машин. Необходимо периодически следить за заполнением диска и проводить следующие работы:

Контроль места на диске

# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 4.0G 2.2G 1.6G 59% /

Удаление применённых пакетов обновлений и hotfix
Для Xenserver 6.2 и выше. Это освобождает место, корректно очищая папку /var/patch/ 
# xe patch-list params=uuid
uuid ( RO)    : d3c08fcb-daa0-4410-bdb2-c298109e88ad
...
# xe patch-clean uuid=<uuid>

Удаление старых лог-файлов
# cd /var/log/ 
# rm -rf *.gz 

Очистка каталога /tmp
# cd /tmp/
# rm -rf *.log

вторник, 17 июня 2014 г.

XenServer импорт VM из командной строки

Импорт объёмных виртуальных машин через XenCenter происходит с сильно заниженной скоростью. В ходе разбора полётов было обнаружено, что в выводе команды top на хосте мастера пула XenServer фигурировали stunnel и xapi с загрузкой CPU под 100% (по умолчанию все соединения между XenCenter и хостом с XenServer шифруются 256-bit AES SSL).

Импорт виртуальной машины из CLI с отключением шифрования передачи (--nossl) позволяет достичь существенного ускорения процесса.

C:\Program Files (x86)\Citrix\XenCenter>xe --nossl -s xen-master -u root -pw password vm-import filename=D:\backup\VM.xva sr-uuid=b3bb3595-02f6-e68f-52fb-d8fb77cb1e53 preserve=true
cc90231d-e0c6-1249-5a2a-08d877af9df4
где:
sr-uuid=    UUID нужной SR для сохранения диска VM.

cc90231d-e0c6-1249-5a2a-08d877af9df4 - результат выполнения команды, UUID импортированной виртуальной машины.

вторник, 15 апреля 2014 г.

Запуск jar файла как демона на примере H@H


Подготавливаем систему.

# apt-get update
# apt-get upgrade
Работаем на Debian Wheezy.
# cat /etc/debian_version
7.4
Устанавливаем OpenJDK Java runtime.
# apt-get install --no-install-recommends openjdk-7-jre
Создаём пользователя для системы, от его имени скачиваем и разворачиваем архив программы.
# useradd --create-home --shell /bin/bash hath
# passwd hath
# su - hath
$ mkdir hentai && cd hentai
$ wget http://hentaiathome.net/get/HentaiAtHome_1.2.0.zip
$ unzip HentaiAtHome_1.2.0.zip
$ ls
autostartgui.bat HentaiAtHome_1.2.0.zip HentaiAtHomeGUI.jar HentaiAtHome.jar sqlite-jdbc-3.7.2.jar

Первый старт необходимо выполнить в ручном режиме для ввода Client ID и Client Key.
$ java -jar HentaiAtHome.jar
2014-04-15T16:17:30Z [info] Started logging to data/log_out
2014-04-15T16:17:30Z [info] Started logging to data/log_err
2014-04-15T16:17:30Z [info] Hentai@Home 1.2.0 starting up
2014-04-15T16:17:30Z [info]
2014-04-15T16:17:30Z [info] Copyright (c) 2008-2012, E-Hentai.org - all rights reserved.
2014-04-15T16:17:30Z [info] This software comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to modify and redistribute it under the GPL v3 license.
2014-04-15T16:17:30Z [info]
2014-04-15T16:17:30Z [info] Before you can use this client, you will have to register it at http://hentaiathome.net/
2014-04-15T16:17:30Z [info] IMPORTANT: YOU NEED A SEPARATE IDENT FOR EACH CLIENT YOU WANT TO RUN.
2014-04-15T16:17:30Z [info] DO NOT ENTER AN IDENT THAT WAS ASSIGNED FOR A DIFFERENT CLIENT.
2014-04-15T16:17:30Z [info] After registering, enter your ID and Key below to start your client.
2014-04-15T16:17:30Z [info] (You will only have to do this once.)
Enter Client ID:
Enter Client Key:
...

На странице "Hentai@Home Clients" ждём обновление статуса на Online, после чего прерываем выполнение программы по CTRL+C.

Проверяем, что в каталоге появились новые файлы программы.
~/hentai$ ls
autostartgui.bat cache data downloaded hathdl HentaiAtHome_1.2.0.zip HentaiAtHomeGUI.jar HentaiAtHome.jar sqlite-jdbc-3.7.2.jar tmp
Завершаем сеанс пользователя hath
~/hentai$ exit
Создаём скрипт запуска программы как демона
# nano /etc/init.d/hentaiathome
Ниже приведён тест скрипта:
#!/bin/sh
### BEGIN INIT INFO
# Provides:          hentaiathome
# Required-Start:    $local_fs $remote_fs $network
# Required-Stop:     $local_fs $remote_fs $network
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# X-Interactive:     true
# Short-Description: Start/stop hentaiathome client
### END INIT INFO

NAME=hentaiathome
DAEMON=/usr/bin/java
USER=hath
DIR="/home/hath/hentai"
STOP_TIMEOUT=60
OPTIONS="-jar HentaiAtHome.jar "

export PATH="${PATH:+$PATH:}/sbin"

#[ -x $DAEMON ] || exit 0
. /lib/lsb/init-functions

start_daemon () {
        start-stop-daemon --start \
        --chuid $USER \
    --chdir $DIR \
    --background \
        --exec $DAEMON -- $OPTIONS || log_end_msg $?
        log_end_msg 0
}

case "$1" in
    start)
        log_daemon_msg "Starting hentaiathome client"
        start_daemon
        ;;
    stop)
        log_daemon_msg "Stopping hentaiathome client"
        start-stop-daemon --stop --quiet \
        --chdir $DIR \
            --exec $DAEMON --retry $STOP_TIMEOUT \
            --oknodo || log_end_msg $?
        log_end_msg 0
        ;;
    reload)
        log_daemon_msg "Reloading hentaiathome client"
        start-stop-daemon --stop --quiet \
        --chdir $DIR \
            --exec $DAEMON \
            --oknodo --signal 1 || log_end_msg $?
        log_end_msg 0
        ;;
    restart|force-reload)
        log_daemon_msg "Restarting hentaiathome client"
        start-stop-daemon --stop --quiet \
        --chdir $DIR \
            --exec $DAEMON --retry $STOP_TIMEOUT \
            --oknodo || log_end_msg $?
        start_daemon
        ;;
    status)
        status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
        ;;
    *)
        log_action_msg "Usage: /etc/init.d/$NAME {start|stop|reload|force-reload|restart|status}" || true
        exit 2
        ;;
esac

exit 0

Как вариант можно загрузить копию этого файла, выложенную на pastebin
# wget http://pastebin.com/download.php?i=1AWYwni7 -O- | tr -d '\r' >/etc/init.d/hentaiathome

При использовании команды без tr -d '\r'
# wget -O /etc/init.d/hentaiathome http://pastebin.com/download.php?i=1AWYwni7
Возможно появление ошибки вида:
# /etc/init.d/hentaiathome
-bash: /etc/init.d/hentaiathome: /bin/sh^M: bad interpreter: No such file or directory
Для её коррекции необходимо избавиться от неверных символов "возврата каретки", выполняем:
# sed -i 's/\r//' /etc/init.d/hentaiathome

Устанавливаем на файл права запуска, настраиваем запуск демона при загрузке операционной системы.
# chmod +x /etc/init.d/hentaiathome
# update-rc.d hentaiathome defaults
# service hentaiathome
[info] Usage: /etc/init.d/hentaiathome {start|stop|reload|force-reload|restart|status}.
# service hentaiathome start

Фишечки. Логи работы программы можно посмотреть здесь:
# tail -f /home/hath/hentai/data/log_out

понедельник, 14 апреля 2014 г.

Adobe Flash Player full offline installer

Flash Player offline installer скачать бесплатно без SMS
http://www.adobe.com/ru/products/flashplayer/distribution3.html

На странице представлены ссылки на актуальные версии полных установочных пакетов Adobe Flash Player под все поддерживаемые операционные системы.