17 мар. 2015 г.

Flush logs Windows 2003

rem recursive delete supermag ukm logs older than 280 days
forfiles /P C:\Progra~1\ukmserver\logs /D -280 /S /M *.log /C "cmd /c del @path"

OpenWRT TP-Link MR3420

Превращение роутера от TP-Link в комбайн с секретаршами и телефонистами.
Ч.1 - rootfs.

25 февр. 2015 г.

Rsyslog local redirect

В дополнение к Посту о rsylog:
- как отфильтровать местные сообщения, от самого rsyslog-сервера?
Очень просто -
В ommysql.conf /etc/rsyslog.d/ (п.14) нужно написать так:
$ModLoad ommysql
if not (($hostname == 'localhost') or ($hostname == '127.0.0.1')) or ($hostname == 'syslogserv') \
then {
     *.* :ommysql:127.0.0.1,Syslog,syslog,PASSWORD
     stop
}
Тогда местные сообщения пойдут в местные файлы, как сказано в основном конфиге, а то что пришло по 514 порту - уйдет в mysql.

И еще:

Для redirect-а Eventlog Windows использовать утилиту с www.syslogserver.com
- она позволяет гибко фильтровать, что конкретно отправлять, брать логи из текстовых файлов и, работая как сервис, потребляет не очень много памяти.

6 февр. 2015 г.

Lazarus. Файловый монитор.

Была тут такая задача. Есть папки, в которые попадают графические файлы. Для упрощения, можно считать, что файлы со сканера. Потом те файлы, которые оказываются нужными, необходимо сохранить, ставшие не нужными - удалить. Главное, чтобы файлы не оставались в исходной папке, т.к. уже через день никто не может сказать, нужны они кому-то, или их просто забыли удалить. Что собственно и происходит сейчас. Решил оказать помощь, написать программу, которая будет автоматизировать процесс, "заставляя" пользователя, в т.ч. и с помощью модальных окон, чистить от картинок папку в которую они попадают.
В качестве инструмента решил попробовать Lazarus. С удивлением обнаружил, что с его помощью можно писать программы. Т.е. стабильность достигла приличного уровня, юзабельность - вполне на уровне. VCL с множеством компонент. Столкнулся, правда, с парой глюков, но их удалось обойти.

В общем, просто супер, разработчики Lazarus - крутые. Уже можно школьников обучать.
Программу мою, правда, уже две недели тот, кому она была нужна, не смотрит. Как впрочем многое из того, что я делаю здесь. Исходники хотя бы надо куда-нибудь выложить.
Выложил. Вот

17 янв. 2015 г.

Send SMS - Addpac GS1002C from command line (using tst10.exe or other expect-like tools)

if  "%1"=="" goto usage
:gettemp
set TMPFILE=%TMP%\%RANDOM%.tmp
if exist "%TMPFILE%" GOTO :gettemp
echo 172.16.20.222>%TMPFILE%
echo WAIT "Login">>%TMPFILE%
echo SEND "r00t\m">>%TMPFILE%
echo WAIT "Password:">>%TMPFILE%
echo SEND "P@$$w0rd\m">>%TMPFILE%
echo WAIT ">">>%TMPFILE%
echo SEND "enable\m">>%TMPFILE%
echo WAIT "#">>%TMPFILE%
echo SEND "mobile 0 0 sms message send %1 %2 %3 %4 %5 %6 %7 %8 %9\m">>%TMPFILE%
echo WAIT "#">>%TMPFILE%
echo SEND "exit\m">>%TMPFILE%
echo WAIT ">">>%TMPFILE%
echo SEND "exit\m">>%TMPFILE%
tst10.exe /r:%TMPFILE% /o:out 
del %TMPFILE%
exit
:usage
echo Usage:%0 Phone_num Message

18 дек. 2014 г.

SOAP 1C, связь Oktell и Итилиум

Как из Октела закинуть информацию о телефонных звонках в Итилиум? Веб-запрос с GETами на php-скрипт, который дергает SOAP от 1С.
<pre>
<html>
<title>Itilium input call</title>
<?php
// http://localhost/itil/?Date=1&EventKind=2&ch1=3&ch2=4&cid1=5&cid2=6&id1=7&id2=8&descr=9
echo '<table>';
echo '<tr><td>Date</td><td>' . htmlspecialchars($_GET["Date"]) . '</td></tr>';
echo '<tr><td>EventKind</td><td>' . htmlspecialchars($_GET["EventKind"]) .'</td></tr>';
echo '<tr><td>cid1</td><td>' . htmlspecialchars($_GET["cid1"]) . '</td></tr>';
echo '<tr><td>cid2</td><td>' . htmlspecialchars($_GET["cid2"]) . '</td></tr>';
echo '<tr><td>descr</td><td>' . htmlspecialchars($_GET["descr"]) . '</td></tr>';
echo '</table>';

$client = new SoapClient("http://server/ITIL/ws/IT_AsteriskEvent/?wsdl",
array('login' => "user",'password'=> "12345",
                 'soap_version' => SOAP_1_1,'trace' => 1,
                 'exceptions' => false,'encoding'=>'utf-8'));
//print(var_dump($client->__getFunctions())."<br/>");
try
{
$client->Event(array('Date'=>htmlspecialchars($_GET["Date"]),
                     'EventKind'=>htmlspecialchars($_GET["EventKind"]),
                     'ch1'=>htmlspecialchars($_GET["cid1"]),
                     'ch2'=>htmlspecialchars($_GET["cid2"]),
                     'id1'=>htmlspecialchars($_GET["cid1"]),
                     'id2'=>htmlspecialchars($_GET["cid2"]),
                     'cid1'=>htmlspecialchars($_GET["cid1"]),
                     'cid2'=>htmlspecialchars($_GET["cid2"]),
             'descr'=>htmlspecialchars($_GET["descr"])
));
//echo "REQUEST:<br/>" . htmlentities(str_ireplace('><', ">\n<", $client->__getLastRequest())) . "<br/>";
//echo "RESPONSE:<br/>" . htmlentities(str_ireplace('><', ">\n<", $client->__getLastResponse())) . "<br/>";
}
catch (SoapFault $exception) 
{
    var_dump($exception->getMessage());

?>
</html>
</pre>

13 дек. 2014 г.

Kb3004394 - Windows 7 64bit, Server 2008

Remove it to get windows working.
.\psexec  \\PC  wusa /uninstall /kb:3004394 /quiet /norestart
Rest in peace.

4 дек. 2014 г.

Check number of active rdp users on any server from command line - powershell

Param(
[Parameter(Mandatory=$True,Position=1)]
[string]$computerName
)
net use \\$computerName\c$ /user:Domain\UserName Password| out-null
$Connections=qwinsta /server:$computerName|?{ $_ -match '^\srdp-tcp#' }|?{ $_ -match 'Активно|Active' }|wc -l
Write-host $Connections.trim()
net use \\$computerName\c$ /delete | out-null

17 нояб. 2014 г.

restrict remote registry

regedit
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurePipeServers\
Select “winreg” and click Edit, Select “Permissions”
Select appropriate users/groups

12 нояб. 2014 г.

rsyslog & loganalizer in OpenSUSE

1. Install OpenSUSE. So,I'm installed 13.2 with LXDE.
2. Install rsyslog rsyslog-module-mysql from standard repositories (and remove systemd logger in same time)
3.Install MariaDB, phpMyAdmin, Apache2, mod-php5, php-mysql, php5-gd from standard repositories.
4.Enable apache2, mysql, rsyslog in services.
5. Run "mysqladmin -u root password newpass"