apt-get install tftpd tftp nano /etc/inetd.conf ---EDIT---- tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /tftpROOT ---END_EDIT---- invoke-rc.d openbsd-inetd restart mkdir /tftpROOT sudo chown nobody /tftpROOT
Asterisk заметки с хабра
Отправка уведомлений о пропущенных звонках из Asterisk
Asterisk: режим DND на BLF клавише
Индикация работы режима DnD на BLF клавише в Asterisk
Затачиваем Astesrisk для работы с BLF Cisco
Индикация состояния абонента в очереди на телефоне с BLF кнопками
Мониторинг состояния Asterisk с помощью MonAst
Как сделать будильник при помощи Asterisk, FreeBSD и наличии небольшого количества свободного времени
Переадресация для Asterisk
Оценка работы операторов на Asterisk
Автоматическая генерация Dial Patterns для Asterisk из DEF-кодов сотовых операторов
Попытка обойтись без регулярных выражений для номеров телефонов собственного региона
AEL в asterisk
Быстрое развертывание телефонной сети на Asterisk+Cisco
Openfire+Miranda+Asterisk+Active Directory+щепотка php,bash,C# или как звонить из Miranda, используя обычные телефоны
Панель телефонии для 1С
Digium G100 / G200 E1/T1/PRI маршрутизатор
Отчет о пропущенных за день звонках на почту
Интеграция мобильного телефона с корпоративной IP-АТС с помощью Aastra Mobile Client
Связь Elastix c Panasonic TDE 200 и платой v SIPGW16 по SIP
Домашний сервер: прокси для SIP
Система автоконфигурации для VoIP устройств на коленке
Запрос номера из реестра «Россвязи»
Падение Microsoft Exchange Transport .
Симптомы
Большой размер mail.que. Процесс EdgeTransport съедает всю оперативную память.
Файл mail.que располагается в папке:
%EXCHANGE_PATH%\TransportRoles\data\Queue
и представляет из себя файл базы данных очереди сообщений для промежуточного хранения данных перед их доставкой. При быстром росте файла появляется множество файлов вида:
trn0000XXX.log
Set-TransportServer mail -PipelineTracingEnabled $False Set-TransportConfig -MaxDumpsterSizePerStorageGroup 100MB -MaxDumpsterTime 7.00:00:00
Для диагностики также можно воспользоваться
Get-Message -Queue "Unreachable" | Export-Message -Path "c:\UNR\" Get-Message -Queue "Remote Delivery Queue" | Export-Message -Path “c:\DLVR\”
Добавление фотографий в GAL Exchange и AD PowerShell
Cкрипт для массовой загрузки-ресайза фотографий.
Выполнять в консоли PShell exchange
[PS] C:\Windows\system32>cd C:\photos [PS] C:\photos>.\BatchConverter.ps1 -InputFolder .\Input -OutputFolder .\Output Converting C:\photos\Input\ivanov.jpg USER ivanov [PS] C:\photos>
Что делает скрипт:
Ищет файлы с расширением =».jpg»,».jpeg»,».bmp»,».tif»,».tiff»,».gif»,».png» по пути C:\photos\input (Имя файла == логину пользователя)
Ресайзит их до размера 96*96 пикселей (Максимальный размер для AD)
Загружает фото в AD
param($InputFolder,$OutputFolder,$Quality); if (!$InputFolder -or !$OutputFolder) { throw "НЕ введены параметры инпут-оутпут папок"; } if (!(Test-Path $InputFolder)) { throw "InputFolder нет папки"; } if (!(Test-Path $OutputFolder)) { throw "OutputFolder нет папки"; } $FullOutputFolderPath = (Get-Item $OutputFolder).FullName if (!$Quality) { $Quality = 100; } $Items = Get-ChildItem $InputFolder if ($Items.Count -eq 0) { throw "No items in folder" } [array]$ValidExt=".jpg",".jpeg",".bmp",".tif",".tiff",".gif",".png" foreach ($Item in $Items) { if ($ValidExt -contains $Item.Extension) { Write-Output "Converting $($Item.FullName)" .\convert.exe -quality $Quality -depth 8 -strip -thumbnail 96x96^ -gravity Center -crop 96x96+0+0 $Item.FullName "$($FullOutputFolderPath)\$($Item.BaseName).jpg" Write-Output "USER $($Item.BaseName)" Import-RecipientDataProperty -Identity "$($Item.BaseName)" -Picture -FileData ([Byte[]]$(Get-Content -Path "$($FullOutputFolderPath)\$($Item.BaseName).jpg" -Encoding Byte -ReadCount 0)) } }
Планшет в качестве магнитолы. Тюнинг Hyunday Terracan
Сегодня мой друг, Сергей Кушеев (Immortal) выложил мануал, мимо которорого я не мог пройти мимо, с его разрешения выкладываю….
Пациент: Hyunday Terracan 2002 года
Диагноз: отсутствие музыки, штатная магнитолла умерла от старости.
Лечение:
планшет DNS E78- 3790 руб.
усб кабель — 150 руб.
адаптер 12в — 5в 2100 мач 2 шт. — 400 руб.
усилитель автомобильный 4-х канальный 4х40 Вт — 600 руб.
ELM327 Bluetooth OBD2 V1.5 Car Diagnostic Interface — 13$ — 450 руб.
E4000+2832U USB DVB-T TV Receiver Stick — White + Black — 18$ — 600 руб. (в качестве fm радио с программой SDR Touch)
usb хаб с внешним питанием — 370 руб.
micro sd карта памяти — 1100
Итого мы имеем расходы в сумме: 7460
что мы имеем: Читать далее
Asterisk 11 Centos 6.5 Установка
Образ используемый для установки CentOS-6.5-x86_64-minimal.iso md5 0d9dc37b5dd4befa1c440d2174e88a87 VM под астериск IP 192.168.0.33/24 GW 192.168.0.1 DNS 192.168.0.2,192.168.0.22 Суффиксы DNS поиска iamroot.ru [root@ast-01 ~]# uname -r 2.6.32-431.el6.x86_64 [root@ast-01 ~]# yum update –y [root@ast-01 ~]# sed -i s/SELINUX=enforcing/SELINUX=disabled/g /etc/selinux/config [root@ast-01 ~]# yum install -y make wget openssl-devel ncurses-devel newt-devel libxml2-devel kernel-devel gcc gcc-c++ sqlite-devel libuuid-devel nano perl [root@ast-01 jansson-2.5]# cd ../ [root@ast-01 src]# wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz [root@ast-01 src]# wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-1.4-current.tar.gz [root@ast-01 src]# wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-11-current.tar.gz [root@ast-01 src]# tar zxvf dahdi-linux-complete* [root@ast-01 src]# tar zxvf libpri* [root@ast-01 src]# tar zxvf asterisk* [root@ast-01 src]# reboot [root@ast-01 src]# cd /usr/src/dahdi-linux-complete* && make && make install && makeconfig [root@ast-01 src]# chkconfig --add dahdi [root@ast-01 src]# cd /usr/src/libpri* && make && make install [root@ast-01 libpri-1.4.14]# cd /usr/src/asterisk* [root@ast-01 asterisk-11.7.0]#./configure --libdir=/usr/lib64 && make menuselect && make && make install [root@ast-01 asterisk-11.7.0]# make samples [root@ast-01 asterisk-11.7.0]# yum install doxygen -y && make progdocs [root@ast-01 asterisk-11.7.0]# make config [root@ast-01 asterisk-11.7.0]# service dahdi start [root@ast-01 asterisk-11.7.0]# service asterisk start [root@ast-01 asterisk-11.7.0]# asterisk -r Privilege escalation protection disabled! See https://wiki.asterisk.org/wiki/x/1gKfAQ for more details. Asterisk 11.7.0, Copyright (C) 1999 - 2013 Digium, Inc. and others. Created by Mark Spencer <markster@digium.com> Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details. This is free software, with components licensed under the GNU General Public License version 2 and other licenses; you are welcome to redistribute it under certain conditions. Type 'core show license' for details. ========================================================================= Connected to Asterisk 11.7.0 currently running on ast-01 (pid = 29706) ast-01*CLI> [root@ast-01 src]# cd /usr/src/ [root@ast-01 src]# yum install -y python iptables [root@ast-01 src]# wget sourceforge.net/projects/fail2ban/files/fail2ban-stable/fail2ban-0.8.4/fail2ban-0.8.4.tar.bz2/download [root@ast-01 src]# tar jxf fail2ban-0.8.4.tar.bz2 [root@ast-01 src]# cd fail2ban-0.8.4 [root@ast-01 fail2ban-0.8.4]# python setup.py install [root@ast-01 fail2ban-0.8.4]# cp /usr/src/fail2ban-0.8.4/files/redhat-initd /etc/init.d/fail2ban [root@ast-01 fail2ban-0.8.4]# chmod 755 /etc/init.d/fail2ban [root@ast-01 files]# touch /etc/fail2ban/filter.d/asterisk.conf [root@ast-01 files]# cat /etc/fail2ban/filter.d/asterisk.conf # Fail2Ban configuration file [INCLUDES] # Read common prefixes. If any customizations available -- read them from # common.local #before = common.conf [Definition] #_daemon = asterisk # Option: failregex # Notes.: regex to match the password failures messages in the logfile. The # host must be matched by a group named "host". The tag "" can # be used for standard IP/hostname matching and is only an alias for # (?:::f{4,6}:)?(?P\S+) # Values: TEXT # failregex = NOTICE.* .*: Registration from '.*' failed for '' - Wrong password NOTICE.* .*: Registration from '.*' failed for '' - No matching peer found NOTICE.* .*: Registration from '.*' failed for '' - Username/auth name mismatch NOTICE.* .*: Registration from '.*' failed for '' - Device does not match ACL NOTICE.* .*: Registration from '.*' failed for '' - Peer is not supposed to register NOTICE.* .*: Registration from '.*' failed for '' - ACL error (permit/deny) NOTICE.* .*: Registration from '.*' failed for '' - Device does not match ACL NOTICE.* failed to authenticate as '.*'$ NOTICE.* .*: No registration for peer '.*' \(from \) NOTICE.* .*: Host failed MD5 authentication for '.*' (.*) NOTICE.* .*: Failed to authenticate user .*@.* # Option: ignoreregex # Notes.: regex to ignore. If this regex matches, the line is ignored. # Values: TEXT # ignoreregex = 192.168.0.0/24 #указываем наш IP с которого не будет проходить блок ------------------------------------------------ [root@ast-01 files]#cat /etc/fail2ban/jail.conf ------------------------------------------------ … [asterisk-iptables] enabled = true filter = asterisk action = iptables-allports[name=ASTERISK, protocol=all] sendmail-whois[name=ASTERISK, dest=root, sender=fail2ban@localhost] logpath = /var/log/messages maxretry = 5 bantime = 259200 ignoreip=192.168.0.0/24 ----------------------------------------------------- [root@ast-01 files]# nano /etc/asterisk/logger.conf ----------------------------------------------------- ... [general] dateformat=%F %T syslog.local0 => notice ... ----------------------------------------------- [root@ast-01 files]#service iptables start [root@ast-01 files]#service fail2ban start
configure: error: *** JSON support not found (this typically means the libjansson development package is missing)
cd /usr/src/ && wget http://www.digip.org/jansson/releases/jansson-2.5.tar.gz tar -zxf jansson-2.5.tar.gz cd jansson* ./configure --prefix=/usr/ && make clean && make && make install && ldconfig
Аудит заполнения полей AD Powershell
$base = "OU=OOO_MYCOMPANY,DC=iamroot,DC=ru" $properties = "telephoneNumber","mail","displayName","company","department","manager","title","l","thumbnailPhoto" Get-ADUser -Filter * -SearchBase $base -Properties $properties | Foreach { $user = $_ if($miss = $properties | Where {!$user."$_"}) { "{0} - {1}" -f ($miss -join ","),$user.name } else { "OK - {0}" -f $user.name } } | Sort | Out-String > c:\BAD_USER_LIST.txt
AD Заполнение отдела пользователя по имени OU/Создание группы безопасности по имени OU
clear $Connect = "LDAP://dc3/DC=iamroot,DC=ru" $ads = [adsi] $Connect $ads = New-Object System.DirectoryServices.DirectorySearcher([ADSI]"") $ads.PageSize = 25000 $ads.Filter = "(&(objectCategory=OrganizationalUnit))" $ads.SearchScope = "Subtree" $ads.PropertiesToLoad.AddRange(@("name", "distinguishedName","canonicalName")) $ads.FindAll() | %{ $OU=$_.Properties["canonicalname"] $departments=$_.Properties["name"] If ($OU –match "OOO_MYCOMPANY") { If ($OU –match "Москва") { $pref="MSK_" } If ($OU –match "Ростов-на-дону") { $pref="RST_" } If ($OU –match "Екатеринбург") { $pref="EKB_" } If ($OU –match "Санкт-петербург") { $pref="SPB_" } If ($OU –match "Новосибирск") { $pref="NSK_" } If ($OU –match "Региональные") { $pref="RP_" } If ($OU –match "Самара") { $pref="SMR_" } new-QADGroup -name "$pref$departments" -ParentContainer "$OU" Get-QADUser -searchRoot "$OU" -searchScope 'OneLevel' | ` Set-QADUser -Description "$departments" -Department "$departments" } }
Куда сходить с друзьями в Петербурге
Маленький полезный списочек
Театры:
1. Смарттеатр, Владимирский проспект, 19, www.spb-smartstudio.ru
2. Театр «Бродячая Собачка», проспект Стачек, 59, www.puppettheatre.spb.ru
3. Большой театр кукол, улица Некрасова, 10, www.puppets.ru/index.php Читать далее