Настройка OpenVPN

Генерация сертификатов
1. Идем на официальный сайт https://openvpn.net/index.php/open-source/downloads.html (community->downloads) и скачиваем ПО OpenVPN 2.3.18 (old stable) — released on 2017.09.26

2. Устанавливаем ПО

3. Открываем C:\Program Files\OpenVPN\easy-rsa\vars.bat.sample

Переименовываем vars.bat.sample в vars.bat, открываем файл и изменяем строки:

set KEY_COUNTRY=RU

set KEY_PROVINCE=Moscow

set KEY_CITY=Moscow

set KEY_ORG=UMEL

set KEY_EMAIL=admin@umel.ru

set KEY_CN=server

set KEY_NAME=server

set KEY_OU=UMEL

set PKCS11_MODULE_PATH=server

set PKCS11_PIN=1234

4. Генерируем сертификаты. Запускаем командную строку от имени администратора, переходим в каталог C:\Program Files\OpenVPN\easy-rsa\

Набираем vars, потом clean-all, читаем информативную надпись "Скопировано файлов - 1

5. Командами:

build-ca- генерируем публичный сертификат.

build-key-server server (имя может быть любым) — генерируем сертификат сервера

build-key client1 — генерируем сертификат пользователя/

На все вопросы нажимаем enter или y. Потому как мы все нужное уже прописали в vars.bat

Все созданные сертификаты будут находиться C:\Program Files\OpenVPN\easy-rsa\keys

Настройка Mikrotik
1. Копируем ca.crt, server.crt, server.key, заходим в Mikrotik — Files и жмем на иконку вставить.

2. Импортируем сертификаты в Mikrotik System - Certificates - выбор сертификата - кнопка Import.

3. Создаем пул адресов

4.Создаем PPP-профиль. (PPP - Profiles)

5.Настраиваем сервер VPN (PPP- Interface - OVPN Server)


6. добавляем пользователя (PPP - Secrets)

7. Создаем разрешающее правило в Firewall

Настройка клиента
1. Устанавливаем OpenVPN, который мы скачали ранее

2.Копируем ранее созданные файлы ca.crt, client.crt, client.key в C:\Program Files\OpenVPN\config.

3. Там же создаем файл auth.cfg. Первой строчкой прописываем имя пользователя, второй пароль.

4. В папке C:\Program Files\OpenVPN\sample-config находим файл client.ovpn копируем его в C:\Program Files\OpenVPN\config и изменяем строки:

remote XXX.XXX.XXX.XXX 1194 (XXX.XXX.XXX.XXX- внешний адрес mikrotik)

ca ca.crt

cert client1.crt

key client1.key

auth-user-pass auth.cfg

5. на клиенте прописываем обратный маршрут

route add -p 192.168.0.0 mask 255.255.255.0 192.168.5.1

Как исправить размытый шрифт в Windows 10.

Откройте редактор реестра (WIN+R regedit).
В разделе реестра : HKEY_CURRENT_USER\ControlPanel\Desktop

  • Установите параметр DpiScalingVer — 0x00001018
  • Установите параметр Win8DpiScaling : 1
  • Установите параметр LogPixels : 0x00000078 (если его нет, создайте новый 32-битный ключ DWORD)

Перезагрузите Windows 10.
Профит

Как оповестить форму о событиях в другой форме

Учебник 1С Как оповестить форму о событиях в другой форме

Для примера рассмотрим справочник "Страны Мира".

im5

У этого справочника есть несколько форм, в том числе ФормаСписка и Классификатор. Грубо говоря в форме классификатора содержаться сведения о всех странах.

im8

?з формы классификатора мы можем выбрать интересующую нас страну

im6

и поместить её в ФормуСписка.

im7Как же одна форма узнает о том, что происходит в другой?

Рассмотрим обе формы. В Классификаторе нас будет интересовать событие  "Выбор". Обратите внимание - это событие относится не к форме, а к основному реквизиту формы - таблице значений Классификатор.

im9

А в ФормеСписка событие так же основного реквизита Список (тип ДинамическийСписок) "ОбработкаВыбора"

im10

Процедура которая срабатывает при выборе из Классификатора называется КлассификаторВыбор.

&НаКлиенте
Процедура КлассификаторВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
    СтандартнаяОбработка=Ложь;
    ВсеДанныеСтроки = Классификатор.НайтиПо?дентификатору(ВыбраннаяСтрока);
    Если ВсеДанныеСтроки<>Неопределено Тогда
        ДанныеСтроки = Новый Структура(ПоляКлассификатора);
        ЗаполнитьЗначенияСвойств(ДанныеСтроки, ВсеДанныеСтроки);
       
        ДанныеВыбора =ДанныеВыбораЭлементаКлассификатора(ДанныеСтроки);
        ОповеститьОВыборе(ДанныеВыбора.Ссылка);        
    КонецЕсли;

КонецПроцедуры

Сообственно здесь нас интересует событие

ОповеститьОВыборе

?менно это событие закроет форму Классификатора и "сообщит"  ФормеСписка, что выбор произведен.

В ФормеСписка же отработает событие  ОбработкаВыбора  с процедурой СписокОбработкаВыбора. Которая просто обновит список.

&НаКлиенте
Процедура СписокОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
    Элементы.Список.Обновить();
КонецПроцедуры

 

Заставляем появиться кнопкам на форме

Учебник 1С Заставляем появиться кнопкам на форме

Допустим нужно разместить кнопку сортировки на форме на форме. ? вроде бы все правильно делаем, а кнопка не появляется.


Все дело оказывается в свойстве "Только во всех действиях"

Выставляем значение в "нет"

? ву а ля! Кнопочка появилась.