I've made Powershell-script to check Active Directory group members. Everything works fine, but I cannot make NRPE (v. 0.4.4.19 2015-12-08 on domain controller) or Powershell (v. 2.0) to accept non-latin (russian) input arguments. So when I run command where persist russian symbols I see the error:
Code: Select all
# ./check_nrpe -H 192.168.111.246 -t 30 -c check_ad_members -a "Администраторы домена" "user1,user2"
CHECK_NRPE: Invalid packet type received from server.
# locale
LANG=ru_RU.utf8
LC_CTYPE="ru_RU.utf8"
LC_NUMERIC="ru_RU.utf8"
LC_TIME="ru_RU.utf8"
LC_COLLATE="ru_RU.utf8"
LC_MONETARY="ru_RU.utf8"
LC_MESSAGES="ru_RU.utf8"
LC_PAPER="ru_RU.utf8"
LC_NAME="ru_RU.utf8"
LC_ADDRESS="ru_RU.utf8"
LC_TELEPHONE="ru_RU.utf8"
LC_MEASUREMENT="ru_RU.utf8"
LC_IDENTIFICATION="ru_RU.utf8"
LC_ALL=
My powershell script in attachment.
The part of nsclient.ini:
Code: Select all
[/settings/external scripts/scripts]
check_ad_members=cmd /c echo scripts\check_adgroup.ps1 "$ARG1$" -usermembs $ARG2$ | powershell.exe -command -
Code: Select all
# ./check_nrpe -H 192.168.111.246 -t 30 -c check_ad_members -a "1C77-Users" "sav,nva"
WARINING: В группе '1C77-Users' обнаружены несовпадения. Лишние аккаунты: 'lera,Olga,Natasha'. Недостающие аккаунты: 'nva'.|