вторник, 25 октября 2016 г.

Как попасть в загрузочное меню BBS на разных компьютерах

 

Десктопы

  • MSI(материнская плата) – AMI (BIOS) – F11
  • Gigabyte – Award – F12
  • BioStar — Phoenix-Award – F9
  • Asus – AMI – F8
  • Intel — Phoenix-Award — Esc
  • AsRock — AMI  — F11
  • ChainTech – отсутствует
  • ECS – AMI – F11
  • FoxConn – Esc
  • GigaByte – F12

Ноутбуки

  • Asus — Esc
  • Acer —  F12
  • Asus AMI – Esc
  • Asus Phoenix-Award – F8
  • Dell — F12
  • Fujitsu – F12
  • HP — Esc, затем F9
  • Lenovo — F12
  • MSI – F11
  • Samsung – Esc (примечание – нажимать только 1 раз во время появления загрузочного экрана!)
  • Sony —  F11
  • Toshiba — F12

суббота, 3 сентября 2016 г.

суббота, 11 июня 2016 г.

OpenSSL для Apache под Windows Server

 

При генерации сертификата вылетала вот такая ошибка:

WARNING: can't open config file: c:/openssl-1.0.2g-win64/ssl/openssl.cnf

Решение в моем случае было таким:

set OPENSSL_CONF=D:\iServer\Apache\conf\openssl.cnf

надо было прописать в переменную окружения путь к файлу конфига

найдено тут http://impradeep.com/warning-cant-open-config-file-copenssl-1-0-1esslopenssl-cnf/

WARNING: can’t open config file: c:/openssl-1.0.1e/ssl/openssl.cnf
Unable to load config info from c:/openssl-1.0.1e/ssl/openssl.cnf

This error occurs mainly on windows when you are using openssl package, The reason is that openssl failed to locate the openssl.cnf file.

There is an environment variable called OPENSSL_CONF that can be set.

I will recommend that you do the following (one windows only)

In my case I set the environment variable like this –
set OPENSSL_CONF=E:\ApacheSoftwareFoundation\Apache2.2\conf\openssl.cnf

A tricky part of getting it to work is with the openssl.cnf file itself. Windows shows it as a file type “SpeedDial” and hides the extension so the filename looks like it is just “openssl”. I tried renaming it to “openssl.cnf”. That looks correct in windows explorer but if you look at the filename in a dos window the actual filename became “openssl.cnf.cnf”. So even though Windows shows the name without the .cnf extension it is there. That was confusing because I have my explorer set to not hide file extensions.

Remember that every-time you open a command prompt you have to run the above command unless you set this as your environment variable.

 

И кроме того после настройки сертификатов так Apache не запускался по ошибке:

Invalid command 'SSLMutex', perhaps misspelled or defined by a module not included in the server configuration

Ошибка была тут SSLMutex default

Эта команда не поддерживается после Apache 2.2 вместо нее надо использовать

Mutex default

Решение найдено тут http://stackoverflow.com/questions/13969272/apache-sslmutex-issue

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

Установка и настройка mod_security на Apache по Windows

 

1) Скачиваем mod_security тут http://www.apachelounge.com/download/

MS0001

Качаем нужной вам разрядности.

2) Разархивируем файл на сервере

MS0002

3) Переписываем файлы libcurl.dll и yajl.dll в каталог apache\bin

4) Переписываем файл mod_security2.so в каталог apache\modules

5) Добавляем в файл httpd.conf слудующую строку:

LoadModule security2_module modules/mod_security2.so

6) Раскомментируем строку

LoadModule unique_id_module modules/mod_unique_id.so

MS0003

7) Далее в том же файле httpd.conf добавляем три строки

SecRuleEngine On
SecDefaultAction "deny,phase:2,status:403"
SecRule ARGS "\.\./" "t:normalizePathWin,id:50904,severity:4,t:none,t:urlDecodeUni,t:htmlEntityDecode,t:lowercase,msg:'Drive Access'"

MS0004

8) Рестартуем Apache

9) Проверяем работу модуля через запрос к сайту например: http://localhost/?abc=../../

Должны получить сообщение:

Forbidden

You don't have permission to access / on this server.

10) До этого мы сделали самую простую настройку модуля. Теперь к нему надо прикрутить правила, которые можно скачать тут:

https://github.com/SpiderLabs/owasp-modsecurity-crs/tarball/master

11) Создаем каталог crs в каталоге Apache

MS0005

12) Разархивируем в каталог crs скачанный файл (в моем случае назывался SpiderLabs-owasp-modsecurity-crs-2.2.9-28-g37edea0.tar.gz).

Но разархивируем следующим образом. Внутри этого файла есть каталог:

MS0006

Заходим в него и уже его содержимое разархивируем в каталог crs.

MS0007

MS0008

13) Создаем копию файла modsecurity_crs_10_setup.conf.example и называем его modsecurity_crs_10_setup.conf

MS0009

14) Чтобы сказать Apache использовать этот файл для модуля mod_security module, вставьте следующие строки в файл httpd.conf

<IfModule security2_module>
Include crs/modsecurity_crs_10_setup.conf
Include crs/base_rules/*.conf
</IfModule>

MS0010

У вас пути могут быть другие…

15) В файл httpd.conf так же можно добавить еще три строки:

SecRequestBodyAccess On
SecResponseBodyAccess On
SecResponseBodyMimeType text/plain text/html text/xml application/octet-stream

MS0011

16) Рестартуем Apache. Все должно работать. Радуемся если так :)

17) Настраиваем логи mod_security. Копируем файл mlogc.exe каталог Apache/bin.

18) Далее в каталоге с логами я создал подкаталог data.

MS0012

В каталоге Apache/conf создал файл mlogc.conf со следующим содержанием:

CollectorRoot       "E:/iLogs"
ConsoleURI          "https://localhost/rpc/auditLogReceiver"
SensorUsername      "username"
SensorPassword      "userpass"
LogStorageDir       "data"
TransactionLog      "mlogc-transaction.log"
QueuePath           "mlogc-queue.log"
ErrorLog            "mlogc-error.log"
LockFile            "mlogc.lck"
KeepEntries         0
ErrorLogLevel       2
MaxConnections      10
MaxWorkerRequests   1000
TransactionDelay    50
StartupDelay        5000
CheckpointInterval  15
ServerErrorTimeout  60

А настройки в httpd.conf для mod_security и mlogc привел к следующему виду:

SecRuleEngine On
SecRequestBodyAccess On
SecResponseBodyAccess On
SecAuditEngine RelevantOnly
SecAuditLogRelevantStatus "^(?:5|4\d[^4])"
SecAuditLogType Concurrent
SecAuditLogParts ABCDEFGHZ
SecAuditLogStorageDir "E:/iLogs/data/"
SecAuditLog "E:/iLogs/audit.log"
#SecAuditLog "|bin/mlogc.exe"
SecDataDir "E:/iLogs"
SecResponseBodyMimeType text/plain text/html text/xml application/octet-stream
SecDefaultAction "deny,phase:2,status:403"
SecRule ARGS "\.\./" "t:normalizePathWin,id:50904,severity:4,t:none,t:urlDecodeUni,t:htmlEntityDecode,t:lowercase,msg:'Drive Access'"

<IfModule security2_module>
Include crs/modsecurity_crs_10_setup.conf
Include crs/base_rules/*.conf
Include crs/slr_rules/modsecurity_crs_46_slr_et_joomla_attacks.conf
</IfModule>

одна строка там закомментирована, так как она выдавала кучу ошибок в лог файле

чтобы проверить работу что при попытке неправильных запросов пишутся логи можно зайти по следующему адресу на свой хост

http://localhost/?abc=../../

в файле audit.log должны появиться записи о попытке использования не правильных URL

так же записи должны появится в файлах в подкаталогах в каталоге data

воскресенье, 17 апреля 2016 г.

Подключаем (включаем) ротацию log файлов на Apache x64 2.4.20 под Windows Server 2008

 

Тут опишу два способа ротации логов.

СПОСОБ РАЗ

1) Качаем модуль ротации от сюда http://www.apachelounge.com/download/ (под вашу разрядность Apache)

AL001

2) Копируем из архива файл mod_log_rotate.so в каталог с модулями Apache (обычно это подкаталог modules)

3) В файл httpd.conf добавляем строку LoadModule log_rotate_module modules/mod_log_rotate.so

4)  В файл httpd.conf добавляем строку RotateLogs On

5)  В файл httpd.conf добавляем строку RotateLogsLocalTime On

6) По желанию добавляем в файл httpd.conf добавляем строку RotateInterval указываем значение в секундах через которое будут создаваться новые файлы логов. По умолчанию используется значение 86400 то есть один день. Если эту строчку не указать, то будет использовано значение по умолчанию. Минимальное значение 60 секунд.

7) В файле httpd.conf изменяем строку создания файла логов доступа. Например на такую: "E:/iLogs/access %Y.%m.%d %B %H-%M-%S.log" combinedio

То же самое проделываете для всех ваших логов доступа (access.log) на виртуальных хостингах. Иначе к их названию просто прилепиться случайное число.

8) Перезапускаем Apache

P.S. mod_log_rotate 1.00a for Apache 2.4 Win64 VC14 работает только для логов доступа. Для логов ошибок он не работает.

СПОСОБ ДВА

При помощи утилиты – rotatelogs.

Rotatelogs - небольшая утилита в составе APACHE, позволяющая осуществлять ротацию логов по времени и по размеру.

rotatelogs [ -l ] [ -f ] logfile rotationtime|filesizeM [ offset ]

-l - Использовать локальное время

-f - Открыть новый файл немедленно, не дожидаясь добавления в него записи

logfile - путь и базовое название лога. Допускается использование модификаторов имени файла (ниже)

rotationtime - время ротации в секундах

filesizeM - максимальный размер лога в мегабайтах

offset - смещение во времени в минтах

Примеры для APACHE под WINDOWS

Внимание!!!! надо указывать либо полный путь к утилите rotatelogs либо отностительный, а так же файлу логов.

CustomLog "|C:/bin/rotatelogs.exe C:/var/logs/logfile 86400" common

CustomLog "|bin/rotatelogs.exe -l C:/var/logs/logfile.%Y.%m.%d 86400" common

CustomLog "|C:/bin/rotatelogs.exe C:/var/logs/logfile 5M" common

ErrorLog "|C:/bin/rotatelogs.exe C:/var/logs/errorlog.%Y-%m-%d-%H_%M_%S 5M"

Модификаторы названия файла

%A full weekday name (localized)

%a 3-character weekday name (localized)

%B full month name (localized)

%b 3-character month name (localized)

%c date and time (localized)

%d 2-digit day of month

%H 2-digit hour (24 hour clock)

%I 2-digit hour (12 hour clock)

%j 3-digit day of year

%M 2-digit minute

%m 2-digit month

%p am/pm of 12 hour clock (localized)

%S 2-digit second

%U 2-digit week of year (Sunday first day of week)

%W 2-digit week of year (Monday first day of week)

%w 1-digit weekday (Sunday first day of week)

%X time (localized)

%x date (localized)

%Y 4-digit year

%y 2-digit year

%Z time zone name

%% literal `%'

Вторым способом можно ротировать и логи ошибок. Но он не позволить использовать пробелы между модификаторами.

Можно одновременно использовать оба метода. Например первый для логов доступа, а второй для лога ошибок.

Либо же только второй для обоих логов.

Возможно в будущем, первым способом можно будет ротировать и логи ошибок.

P.S. Если время ротации логов задано по умолчанию, то во времени %H%M%S всегда будут нули.

Обновление Apache x64 2.4.18 до 2.4.20 под Windows Server 2008

 

Собственно все обновление сводится к копированию (перезаписыванию) файлов из архива с новой версией поверх старой!

НО! Перед этим надо сохранить все конфигурационные файлы, чтобы потом перезаписать их на место.

Все операции буду производить с сервером Apache, установка которого описана тут.

1) Качаем новую версию (2.4.20) от сюда http://www.apachelounge.com/download/

2) Тушим Apache

3) Копируем (бекпим) конфиги Apache (просто сохраняем папку conf)

4) Копируем файлы из скачанного архива поверх старых.

5) Копируем сохраненную папку conf поверх папки conf с установленным Apache

6) Запускаем сервис Apache

7) Все! Работает :)