30 вересня 2017 р.

Оновлення сторожового апаратного таймера Watchdog2 у Windows Hyper-V Server 2016 через IPMI

Оновлення сторожового апаратного таймера  Windows Hyper-V Server 2016 не реалізовано базово.
Тому потрібне додаткове програмне забезпечення на кшталт "Enterprise Managment".
Після реалізації під FreeBSD (pfSense)  вирішив зробити те саме і у Windows Hyper-V Server 2016.
Так як сервер не має графічного інтерфейсу, все робиться віддалено через PowerShell.
Enter-PSSession -ComputerName COMPUTER 
З проекту http://ipmiutil.sourceforge.net, завантажую ipmiutil-3.0.7-win64.zip,
розпаковую та переписую до теки що знаходиться на сервері.

Перевіримо статус:
[hv]: PS С:\install\ipmiutil-3.0.7-win64> .\ipmiutil.exe wdt
ipmiutil ver 3.07
iwdt ver 3.07
-- BMC version 2.01, IPMI version 2.0
wdt data: 43 00 00 08 70 17 d7 16
Watchdog timer is started for use with OS Load. Logging
               pretimeout is 0 seconds, pre-action is None
               timeout is 600 seconds, counter is 584 seconds
               action is No action

ipmiutil wdt, completed successfully

Для скидання таймера
[hv]: PS С:\install\ipmiutil-3.0.7-win64> .\ipmiutil.exe wdt -r
ipmiutil ver 3.07
iwdt ver 3.07
-- BMC version 2.01, IPMI version 2.0
wdt data: 43 00 00 08 70 17 ca 13
Watchdog timer is started for use with OS Load. Logging
               pretimeout is 0 seconds, pre-action is None
               timeout is 600 seconds, counter is 506 seconds
               action is No action
Resetting watchdog timer ...
reset_wdt: ret = 0
wdt data: 43 00 00 08 70 17 70 17
Watchdog timer is started for use with OS Load. Logging
               pretimeout is 0 seconds, pre-action is None
               timeout is 600 seconds, counter is 600 seconds
               action is No action

ipmiutil wdt, completed successfully

Для періодичного запуску створюю завдання:
SCHTASKS /create /sc MINUTE /MO 1 /TR "С:\install\ipmiutil-3.0.7-win64\ipmiutil.exe wdt -r" /TN "WDT reset"

Оновлення сторожового апаратного таймера Watchdog2 у pfSense через IPMI

З'ясував що версії pfSense версій 2.3.4, 2.4.0, не обробляє оновлення апаратного сторожового таймера материнської плати з Watchdog2.
Виправляв ось так:
Додати підтримку IPMI у ядро:
Додавання рядка ipmi_load="YES" до файлу /boot/loader.conf.local
/boot/loader.conf.local - ipmi_load="YES"

Потрібно перезавантажити систему і перевірити чи є підтримка IPMI з терміналу:
cat /var/log/dmesg.boot | grep ipmi

/var/log/dmesg.boot

З терміналу читаємо значення сенсорів:
ipmitool sensor

ipmitool sensor, перевірка наявності Watchdog2

Надалі необхідно оновити значення сенсора, це можна зробити за допомоги команди watchdog
$watchdog -d -t 300
shifted 549755813888
seconds_to_pow2ns: seconds: 300, ns 300000000000, power 39
Timeout for -t is 2^39 nanoseconds (in: 300 sec -> out: 549 sec 755813888 ns -> 549757 ticks)
Timeout is 2^39 nanoseconds

І повторювати її періодично, наприклад правилами планувальника cron:
Періодичне оновлення значення сенсора Watchdog2
Або можна запустити у фоновому режимі програму watchdogd.
watchdogd  -s 60 -t 300

Також можна скинути значення таймера виконавши  команду ipmitool:
$ipmitool mc watchdog reset
IPMI Watchdog Timer Reset -  countdown restarted!

Або визначити поточне значення таймера:
$ipmitool mc watchdog get
Watchdog Timer Use:     SMS/OS (0x44)
Watchdog Timer Is:      Started/Running
Watchdog Timer Actions: Hard Reset (0x01)
Pre-timeout interval:   0 seconds
Timer Expiration Flags: 0x08
Initial Countdown:      549 sec
Present Countdown:      545 sec

Або вимкнути таймер повністю:
$ipmitool mc watchdog off
Watchdog Timer Shutoff successful -- timer stopped

Тоді можна змінити cron на ipmitool mc watchdog reset:
ipmitool mc watchdog reset


Використано материнську плату Asus P10S-C/4L з модулем ASMB8-iKVM.
Налаштування Watchdog timer в BIOS через віддалене підключення iKVM.

14 вересня 2017 р.

pfSence з зовнішнім ДБЖ APC, APCUPSD, SNMP, PowerChute Business Edition


Використовується спільне ДБЖ фірми APC by Schneider Electric, модель Smart-UPS 750, між двома серверами.
APC Smart-UPS 750VA LCD RM 2U (SMT750RMI2U)
Головний сервер це гіпервізор Microsoft  HV-Server 2016, підлеглий це сервер маршрутизатор з системою pfSence.
Для керуванням ДБЖ встановлено програму PowerChute Business Edition (9.2.0.604), для керування підлеглим сервером використовується протокол SNMP.

13 вересня 2017 р.

pfSence, Squid proxy, deny acces to DMZ networks

Якщо використовувати разом з pfSence модуль Squid proxy server то існує можливість потрапляти користувачам до деяких DMZ локальних мереж.
Використовуючи локальні адреси роутера але через процес squid.
Як вихід додав до дозвіл до DMZ мережі тільки спеціальному користувачу  який пройде автентифікацію на у проксі сервері, якщо така (proxy_auth) використовується.
Для цього у Package/Proxy Server: General Settings/General , натиснути "Show Advanced Features" і у розділі
Custom Options (After Auth) додаю:
acl BlockedHost dst 10.0.0.0/8
acl SysopUser proxy_auth sysopuser
http_access allow BlockedHost SysopUser
http_access deny BlockedHost  

Де "10.0.0.0/8" - локальна мережа з DMZ, а "sysopuser" ім'я користувача котрому дозволено доступ після автентифікації до цієїї мережі.

Proxy Server, Advanced Features



Коли забув ти рідну мову, біднієш духом ти щодня...
When you forgot your native language you would become a poor at spirit every day ...

Д.Білоус / D.Bilous
Рабів до раю не пускають. Будь вільним!

ipv6 ready