пятница, 22 февраля 2019 г.

Шпаргалка по назначению прав на файлы

cmd:
icacls "\\path\file" /grant user:(OI)(CI)(M) - Добавить права на изменения с наследованием

powershell:
start-process "$env:windir\system32\icacls.exe" -arg '"\\path\file" /grant user:(OI)(CI)(M)' -nonew - Добавить права на изменения с наследованием

bash:

понедельник, 18 февраля 2019 г.

Проблемы со связью через Asterisk

Если проблема заключается в "электронном голосе", либо не все слова прилетают в трубку, то проверить что канал (между звонящими, между телефонами и АТС asterisk) имеет постоянную задержку.

Отключение автозапуска (autorun) на съёмных носителях

Автозапуск (autorun) отключается простым скриптом.

@echo off
echo Disable Autorun on all removable devices
set RegistryFolder="HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer"
reg add %RegistryFolder% /v NoDriveTypeAutoRun /t REG_DWORD /d 0x000000ff /f
reg add %RegistryFolder% /v NoDriveAutoRun /t REG_DWORD /d 0x000000ff /f
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\Autorun.inf" /ve /t REG_SZ /d "SYS:AutorunDisabledBy_AnikinSV" /f

пятница, 15 февраля 2019 г.

Особенности работы asterisk на двух интернет каналах

1. Для правильной работы настроить маршрутизацию через 1 интерфейс.
2. При смене провайдера (например, когда один отвалился), заменить внешний адрес в строке externip= на нужный
3. Проверить что пакеты прилетают с правильного адреса, если это не так, то потушить интерфейс на маршрутизаторе, того провайдера который в дауне.
4. Зайти в личный кабинет провайдера и попробовать отключить пользователя и включить заново

четверг, 14 февраля 2019 г.

Замена внешнего ip в конфиге Asterisk

Повесить скрипт в cron

#!/bin/bash
#
#This script change IP address in line 'externip=' in 
#/etc/asterisk/sip.conf file to current WAN IP address
#
wan_ip=$(dig +short myip.opendns.com @resolver1.opendns.com)
cfg="/etc/asterisk/sip.conf"
current_ip=$(grep '^externip=' $cfg | sed 's/externip=//g')
if
    [ "$wan_ip" != "$current_ip" ];
then
    tmp_cfg=$cfg".tmp"
    echo '[general]' > $tmp_cfg
    echo "externip=$wan_ip" >> $tmp_cfg
    cat $cfg | sed 1d | sed '/externip=/d' >>$tmp_cfg
    mv -f $tmp_cfg $cfg
    asterisk -rx "core reload"
else
    echo "WAN IP is equal IP in config file"
fi


среда, 13 февраля 2019 г.

Очистка истории синхронизации WSUS

Подключиться к БД SUSDB в ms sql и выполнить запрос

USE SUSDB 
GO 
DELETE FROM tbEventInstance WHERE EventNamespaceID = '2' AND EVENTID IN ('381', '382', '384', '386', '387', '389')

Если используется внутренняя БД (WID), то подключатся нужно по пути \\.\pipe\MSSQL$MICROSOFT##SSEE\sql\query

Документация


З.Ы. Дополнительный скрипт который оставляет недавнии синхронизации:

USE SUSDB
GO
DELETE FROM tbEventInstance WHERE EventNamespaceID = '2' AND EVENTID IN ('381', '382', '384', '386', '387', '389') AND DATEDIFF(month, TimeAtServer, CURRENT_TIMESTAMP) >= 3;
GO

Перезапуск WSUS при падении службы

Иногда WSUS съедает много обновлений и падает служба с ошибкой. Лечим скриптом и патчами венды.

@echo off
iisreset
net stop WsusService && net start WsusService
cd /d "C:\Program Files\Update Services\Tools\"
WsusUtil.exe checkhealth
timeout /t 10

Просмотр отчётов во WSUS

1. Установить SQL Clear Types 2012 (файл SQLSysClrTypes.msi)
2. Установить Report Viewer 2012
3. Перезапустить консоль WSUS

воскресенье, 3 февраля 2019 г.

Скрипт на отключение пользователя от Windows Vpn Server и на удаления его из группы AD

Import-Module ActiveDirectory
Import-Module RemoteAccess
$user='user'
$group='vpn-users'
$server='vpn.domain.local'
#[string]$filter='"*'+$user+'*"'
Remove-ADGroupMember -Members $user -Identity $group -Confirm:$false
Get-RemoteAccessConnectionStatistics -ComputerName $server | ? UserName -like "*$user*" | Disconnect-VpnUser -ComputerName $server