понедельник, 19 августа 2019 г.

Пробить человека посредством Telegram

Теневые боты помогут найти практически любую информацию о человеке на основе минимальных данных.
Необычные боты для индетификации человека, пробив по базам и другие полезные инструменты месседжера.
Все боты на момент написания статьи исправно работают.

вторник, 6 августа 2019 г.

среда, 3 июля 2019 г.

1С Excel

Само сохранение:
ТабДок.Записать(ПутьКФайлу, ТипФайлаТабличногоДокумента.XLSX);

Подготовка данных, 2 метода, второй более "красивый".
&НаСервере
Функция ТЗ_В_ТабДок(ТаблицаЗначений) Экспорт
ТабДок = Новый ТабличныйДокумент;
Построитель = Новый ПостроительОтчета;
Построитель.ИсточникДанных=Новый ОписаниеИсточникаДанных(ТаблицаЗначений);       
Построитель.Вывести(ТабДок);
Возврат ТабДок;
КонецФункции

&НаСервере
Функция Запрос_В_ТабДок(Запрос) Экспорт
ТабДок = Новый ТабличныйДокумент;
Результат = Запрос.Выполнить();
Колонки = Результат.Колонки;
Выборка = Результат.Выбрать();
Количество = Выборка.Количество()+2;
// рисуем заголовки
кол = 1;
стр = 1;
Для Каждого колонка Из Колонки цикл
Имяобласть = "R1C" + Строка(кол);
ТабДок.Область(Имяобласть).Текст = колонка.Имя;
кол = кол + 1;
КонецЦикла;
Пока Выборка.Следующий() Цикл
кол = 1;
стр = стр + 1;
Для Каждого колонка Из Колонки цикл
Имяобласть = "R" + Строка(стр) + "C" + Строка(кол);
ТабДок.Область(Имяобласть).Текст = Выборка[колонка.Имя];
кол = кол + 1;
КонецЦикла;
КонецЦикла;
Возврат ТабДок;
КонецФункции

Первый метод взят отсюда:
Источник: https://pro1c8.ru/obmen-excel-1c/#tablichnyjdokument

1C 8.3 + Excel (ADO)

&НаСервере
Функция ПолучитьДанныеПоДокументу(TableName)
// Получаем номенклатуру для выгрузки
Запрос = Новый Запрос("ВЫБРАТЬ
                      | ИнвентаризацияНоменклатура.Штрихкод КАК Штрихкод,
                      | ИнвентаризацияНоменклатура.Факт КАК Количество,
                      | ИнвентаризацияНоменклатура.Товар.Артикул КАК Артикул,
                      | ИнвентаризацияНоменклатура.Товар.ПолноеНаименование КАК ПолноеНаименование
                      |ИЗ
                      | Документ.Инвентаризация.Номенклатура КАК ИнвентаризацияНоменклатура
                      |ГДЕ
                      | ИнвентаризацияНоменклатура.Ссылка = &Ссылка");
Запрос.Параметры.Вставить("Ссылка", Объект.Ссылка);
Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();
Массив = Новый Массив;
// Заполняем таблицу данными выборки
Пока Выборка.Следующий() Цикл
        Массив.Добавить("INSERT INTO [" + TableName + "] VALUES ("""+Выборка.Штрихкод+""","""+Выборка.Количество+""","""+ Выборка.Артикул+""","""+Выборка.ПолноеНаименование+""")");
КонецЦикла;
Возврат Массив;
КонецФункции

среда, 29 мая 2019 г.

Настройка почты в Bitrix веб окружении

Почта в битрикс веб-окружении отправляется через msmtp

Чтобы настроить запускаем /root/menu.sh (само запускается при входе) и там жмем

вторник, 28 мая 2019 г.

Чек-лист параметров безопасности сервера Windows/Linux


Этот чек-лист безопасности сервера поможет вам в конфигурации и первичной проверке защищенности вашей Windows- или Linux-инфраструктуры. В нем перечислены доступные базовые меры по предотвращению возможных атак, не требующие специальных познаний и навыков. 

пятница, 24 мая 2019 г.

Права на home/bitrix/www/

cd ~/www 
find . -type d -exec chmod 775 {} \; 
find . -type f -exec chmod 664 {} \;
find . -type d -exec chown bitrix:bitrix {} \; 
find . -type f -exec chown bitrix:bitrix {} \; 

вторник, 30 апреля 2019 г.

Поиск людей и информации

Почувствуйте себя детективом. Ниже — способы поиска информации и проверки данных через открытые источники и сервисы.
ВНИМАНИЕ! БУДЬТЕ ОСТОРОЖНЫ ПРИ ИСПОЛЬЗОВАНИИ ДАННЫХ СЕРВИСОВ. ПО ВОЗМОЖНОСТИ НЕ ИСПОЛЬЗУЙТЕ СВОИ ЛИЧНЫЕ АККАУНТЫ.

вторник, 23 апреля 2019 г.

Интеграция 1С и Active Directory

Изредка, в работе программистов и системных администраторов, возникают ситуации и задачи, когда необходимо произвести интеграцию 1С и Active Directory. В данном примере будет показано как с помощью технологии LDAP (англ. Lightweight Directory Access Protocol — «облегчённый протокол доступа к каталогам») и средств интеграции 1С, получить данные из Active Directory. Интеграция 1С и Active Directory может использоваться не только для получения данных, но и для создания объектов в структуре соответствующего домена.

четверг, 18 апреля 2019 г.

Электронные больничные листы

В последнее время в СМИ и социальных сетях активно обсуждается внедрение так называемых «электронных больничных листов». Это нововведение часто преподносится как существенный шаг вперед в части сокращения бумажного документооборота и создания благ для граждан и работодателей. Но с точки зрения медицинских организаций и врачей все это выглядит не таким уж и радужным. А про разработчиков МИС, которых фактически вынуждают делать двойную работу за свой счет, и говорить не приходится.

среда, 6 марта 2019 г.

Отправка письма через powershell с inline вложением

Add-PSSnapin Microsoft.Exchange.Management.Powershell.Admin -erroraction silentlyContinue
$smtpServer = "somemailserver"
$att = new-object Net.Mail.Attachment("c:\scripts\attachment.png")
$att.ContentId = "att"
$msg = new-object Net.Mail.MailMessage
$smtp = new-object Net.Mail.SmtpClient($smtpServer)
$body = "Some Text<br />
<img src="cid:att" />"

$msg.From = "[email protected]"
$msg.To.Add("[email protected]")
$msg.Subject = "Some Subject" + (get-date -format yyyyMMdd)
$msg.Body = $body
$msg.IsBodyHTML = $true
$msg.Attachments.Add($att)
$smtp.Send($msg)
$att.Dispose()

пятница, 1 марта 2019 г.

Проверяем логи, битрикс окружение

В процессе жизнедеятельности сайт и сервер оставляют после себя различные записи в лог-файлах. Данные из этих файлов желательно периодически разгребать и анализировать, что бы сайт работал быстро и бесперебойно
Для Битрикс окружения на CentOS пути к логам обычно будут такими (зависит от настроек):
  1. Битрикс: __bx_log.log или log.txt в корне сайта. Зависит от переменной LOG_FILENAME в файле /bitrix/php_interface/dbconn.php
  2. Apache: /var/log/httpd/error_log
  3. Nginx: /var/log/nginx/error.log
  4. PHP: /var/log/php/exceptions.log
  5. Почта: /home/bitrix/msmtp_default.log
  6. bash, cron: /var/spool/mail/root и /var/spool/mail/bitrix
Как часто надо проверять? Раз в неделю стоит поглядывать, я думаю. Просто что бы убедиться, что эти файлы пусты и ошибок не было.
И как бонус стоит проверить файл /var/log/btmp командой last -f /var/log/btmp если там очень много попыток авторизации, значит доступ к ssh пытаются "брутфорсить". Стоит изменить порт доступа к ssh (в файле /etc/ssh/sshd_config поменять строку "Port 22" на другое значение и перезагрузить sshd) Что бы сбросить лог авторизации нужно выполнить команду cat /dev/null > /var/log/btmp