Как стать автором
Обновить

Руководство по организации удалённого подключения к промышленному ПЛК посредством OpenVPN

Время на прочтение14 мин
Количество просмотров32K
image

В этой статье я хочу рассказать о полученном опыте организации удалённого доступа к промышленному программируемому логическому контроллеру (далее — ПЛК) посредством бюджетного решения на базе интернет-центра KEENETIC 4G.

Данная статья будет особенно интересна специалистам в области АСУТП, которые задались вопросом организации удалённого доступа, но не знали с чего начать.

Итак, начнём!


В данном примере рассмотрим наиболее часто встречающийся вариант, а именно:

  1. Локальный компьютер, который будет являться OpenVPN сервером с установленным пакетом TIA Portal для программирования ПЛК. (локальная сеть 192.168.1.0)
  2. Маршрутизатор предприятия с внешним белым IP — адресом (например, 217.196.58.128).
  3. Интернет-центр KEENETIC 4G с установленным клиентом OpenVPN подключенный к мобильной связи.
  4. Программируемый логический контроллер SIMATIC S7-1500 (локальная сеть 192.168.112.0).

Наличие внешнего белого IP — адреса на одной из сторон является необходимым условием работы OpenVPN сервера (сервер OpenVPN должен быть расположен на стороне белого IP — адреса).

Для организации VPN соединения между Интернет-центром KEENETIC и рабочем местом нам необходимо установить следующее ПО:

  1. OpenVPN — программа для создания безопасных виртуальных частных сетей, удаленного подключения к серверу
  2. XCA — программа для лёгкого создания сертификатов с графическим интерфейсом
  3. Notepad++ — текстовый редактор (необязательно)

Установка пакета OpenVPN на Windows.


Устанавливаем компонент EasyRSA (для создания сертификатов встроенными средствами (необязательно).

image

В случае вывода сообщения об установке драйвера, нажимаем «установить».

image

В случае, если требуется установить несколько виртуальных адаптеров или если виртуальный адаптер был некорректно установлен, то переходим по нижеприведённому адресу и запускаем «addtab.bat» скрипт:
C:\Program Files\TAP-Windows\bin

image

Создание X.509 сертификатов


1. Устанавливаем XCA


XCA — программа для лёгкого создания сертификатов с графическим интерфейсом

2. Создаём БД


«Файл» -> «Новая база данных», далее программа запросит ввод пароля, вводим пароль или оставляем поля пустыми и нажимаем «ОК».

image

3. Создаём сертификат удостоверяющего центра (CA)


Для этого переключаемся на вкладку «Сертификаты» и нажимаем на кнопку «Новый сертификат»

image

Далее переключаемся на вкладку «Субъект» и заполняем необходимые поля (то, что выделено красным должно иметь уникальное имя).

image

Нажимаем «Сгенерировать новый ключ» и подтверждаем действие нажатием кнопки «создать».

image

Переключаемся на вкладку «Расширения», выбираем тип сертификата «Центр Сертификации» и настраиваем срок действия сертификата (сертификат CA должен иметь более длительный срок действия, чем сертификаты компьютера, которые будут созданы позже.)

image

Нажимаем «ОК» и теперь мы можем приступить к настройке сертификатов компьютера.

4. Создание шаблонов сертификатов компьютера


Для упрощения создания машинных сертификатов будем использовать заранее приготовленный шаблон. Переключаемся на вкладку «Шаблоны» и нажимаем на кнопку «Новый шаблон».

image

Выбираем «Пустой шаблон» и переходим к редактированию нашего шаблона, имена в угловых скобках в будущем должны быть уникальными.

image

Переходим на вкладку «Расширения», задаём тип «Конечный субъект» и настраиваем период действия сертификата компьютера (должен быть не больше чем у сертификата удостоверяющего центра).

image

Нажимаем «Ок» для создания шаблона.
Данный шаблон теперь может быть использован как базовый в качестве создания машинных сертификатов, подписанных нашим удостоверяющим центром.

5. Создания сертификатов компьютера с использованием шаблона


Переключаемся на вкладку «сертификаты» и нажимаем на кнопку «Новый сертификат», выбираем опцию «Использовать этот сертификат для подписи», в качестве шаблона выбираем наш шаблон <My_Machine> и нажимаем на кнопку «Применить всё».

image

Далее переходим на вкладку «Субъект» вводим уникальное имя, например, «My_Server», генерируем ключ.

image

Таким образом мы создали сертификат сервера. Проделываем туже самую процедуру для сертификата клиента (My_Client).

image

6. Экспорт машинных сертификатов и ключей


Для создания конфигурационного файла OpenVPN клиента (KEENETIC) и сервера (ПК Windows) нам потребуется экспортировать сертификат удостоверяющего центра, сертификат сервера, сертификат клиента, закрытый ключ сервера, закрытый ключ клиента.

Для этого переходим на вкладку «Сертификаты» выбираем сертификат удостоверяющего центра My_CA нажимаем на кнопку «Экспорт» и выгружаем в заранее созданную папку, например My_Keys, расположенную на рабочем столе.

image

Проделываем тоже самое для сертификата клиента (My_Client) и сертификата сервера (My_Server).

Переключаемся на вкладку «Закрытые ключи» выбираем ключ My_Client, нажимаем экспорт и выгружаем в нашу папку.

image

Проделываем туже самую процедуру для ключа сервера.

7. Создания параметра Диффи-Хэллмана


Для конфигурации параметров сервера нам также потребуется параметр Диффи-Хэллмана
Для создания параметра нажимаем на вкладку «Дополнительно» и выбираем пункт «Сгенерировать параметры Дифии-Хэллмана».

image

Далее выбираем длину параметра, например, 2048. Далее выгружаем наш параметр в папку с ключами.

image

В итоге в нашей папке должны находиться следующее файлы:

  1. Сертификат удостоверяющего центра My_CA.crt
  2. Сертификат клиента My_Client.crt
  3. Сертификат сервера My_Server.crt
  4. Закрытый ключ клиента My_Client.pem
  5. Закрытый ключ сервера My_Server.pem
  6. Параметр Дифии-Хэллмана dh2048.pem

image

Создание файлов конфигурации клиента и сервера


Т.к. протоколом промышленной связи S7-1500 является Profinet, то для установления соединения с ПЛК нам потребуется организовать L2 соединение, которым в данном случае является TAP-интерфейс.

Настройка конфигурации OpenVPN сервера


Для создания файла конфигурации сервера перейдите в папку с конфигурационными файлами OpenVPN [ C:\Program Files\OpenVPN\config ] и создайте файл TAP_Server с расширением .ovpn

image

Откройте файл TAP_Server.ovpn программой просмотра текстовых файлов (например, Notepad++) и скопируйте следующий текст:

# Указываем работу на L2 уровне
dev tap
# Параметр, используемый в Windows системах
# Указываем имя нашего TAP-Windows адаптера
dev-node MyTap
# Конфигурируем сервер в режиме моста для TAP устройств
server-bridge
# Указываем протокол работы сервера и версию IP
proto udp4
# Указываем номер порта, на котором будет работать OpenVPN
port 50501
# Пинговать каждые 10 секунд сервер и если в течение 120 секунд 
# не будут получены ответные пакеты, перезапустить подключение.
keepalive 10 120
# Указывает алгоритм шифрования
cipher AES-256-CBC
# Уровень детализации лога
verb 3
# Во внутрь копируем сертификат удостоверяющего центра
&ltca&gt

&lt/ca&gt
# Во внутрь копируем сертификат ключа
&ltcert&gt

&lt/cert&gt
# Во внутрь копируем закрытый ключ
&ltkey&gt

&lt/key&gt
# Во внутрь копируем параметр (ключ) Diffie-Hellman (Диффи-Хеллмана).
&ltdh&gt

&lt/dh&gt

Затем откройте программой просмотра текстовых файлов My_CA.crt, My_Server.crt, My_Server.pem, dh2048.pem и скопируйте текст из:
My_CA.crt в &ltca&gt &lt/ca&gt
My_Server.crt в &ltcert&gt &lt/cert&gt
My_Server.pem в &ltkey&gt &lt/key&gt
dh2048.pem в &ltdh&gt &lt/dh&gt

image

в результате получим следующее:
dev tap
dev-node MyTap
server-bridge
proto udp4
port 50501
keepalive 10 120
cipher AES-256-CBC
verb 3

&ltca&gt
-----BEGIN CERTIFICATE-----
MIIDqjCCApKgAwIBAgIIJJ8tf67Csf4wDQYJKoZIhvcNAQELBQAwgYsxCzAJBgNV
BAYTAlJVMRQwEgYDVQQIEwtLUkFTTk9ZQVJTSzEUMBIGA1UEBxMLS1JBU05PWUFS
U0sxDjAMBgNVBAoTBU15T1JHMQ4wDAYDVQQLEwVNeU9SRzEOMAwGA1UEAwwFTXlf
Q0ExIDAeBgkqhkiG9w0BCQEWEW15ZW1haWxAbXlob3N0Lnh4MB4XDTE5MTIxMzAw
MDAwMFoXDTQ5MTIxMjIzNTk1OVowgYsxCzAJBgNVBAYTAlJVMRQwEgYDVQQIEwtL
UkFTTk9ZQVJTSzEUMBIGA1UEBxMLS1JBU05PWUFSU0sxDjAMBgNVBAoTBU15T1JH
MQ4wDAYDVQQLEwVNeU9SRzEOMAwGA1UEAwwFTXlfQ0ExIDAeBgkqhkiG9w0BCQEW
EW15ZW1haWxAbXlob3N0Lnh4MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEA3dJoAVl7foXZMavZIr9RTB59h+El26OYll7KMBHritf+x8DEVjcg86uyDSf0
yzLtAR+8J013W3SRDVpl3gqdk3t1qb7Paz1OUrV2Hu3N5Ws1s4elpENTQAe1HFZS
u0NRhXBCxTTyToNdb1pKcIJziVNLXdTL+pud0T8FNs6q37t14XFkfDOw85m7y3py
vU8+ucmQEd5vOKPjcY1jklVZkQJKcGTI77x/R2k6HK7ryul5uIepi/RrVrgTNe5W
rYWuk6wlmmFLvgdzoVaBJO8edo89M7oJIQFMNN9x3cpbths6/3ZummBktfgVa7xy
3fs//M5v1pjnYeJ5wd5tiCXkpQIDAQABoxAwDjAMBgNVHRMEBTADAQH/MA0GCSqG
SIb3DQEBCwUAA4IBAQDbNhPy3IftjPVNyaUH/5AW6R0Fjqoct/55ZMDrdWlLY1mo
iTTxhFPv1DbilUE/nr+SwGvZV2MQs4G1hi9PgGqY5a+lJCSios8BJ7zlrt/LLQQ/
st0r2wzpCYROxoi+zu9YNGZJPP9GI3KdcVye9Rt3vbLbL8LQ8kKKwn3Ju5i1SUMy
gzvGTNUPtqOKVJid39IIdva3iMUBspfMGv2EcaGaRWekW9Pni/gBS2eHkBH1/X6n
KiopjtZw7A4RPHzC58jp+ypT/X63tPwf5+kWsMDeLG1XTKnLoPeAVNtszMhGsgzE
DoZUuL4pb8XbpcnrPlgp0WSkrf1RJrJGuArvUDLu
-----END CERTIFICATE-----

&lt/ca&gt

&ltcert&gt
-----BEGIN CERTIFICATE-----
MIIDyzCCArOgAwIBAgIIINPrUqBedY8wDQYJKoZIhvcNAQELBQAwgYsxCzAJBgNV
BAYTAlJVMRQwEgYDVQQIEwtLUkFTTk9ZQVJTSzEUMBIGA1UEBxMLS1JBU05PWUFS
U0sxDjAMBgNVBAoTBU15T1JHMQ4wDAYDVQQLEwVNeU9SRzEOMAwGA1UEAwwFTXlf
Q0ExIDAeBgkqhkiG9w0BCQEWEW15ZW1haWxAbXlob3N0Lnh4MB4XDTE5MTIxMzAw
MDAwMFoXDTQ5MTIxMjIzNTk1OVowgY8xCzAJBgNVBAYTAlJVMRQwEgYDVQQIEwtL
UkFTTk9ZQVJTSzEUMBIGA1UEBxMLS1JBU05PWUFSU0sxDjAMBgNVBAoTBU15T1JH
MQ4wDAYDVQQLEwVNeU9SRzESMBAGA1UEAwwJTXlfU2VydmVyMSAwHgYJKoZIhvcN
AQkBFhFNeUVtYWlsQE15SG9zdC54eDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
AQoCggEBAJhJYVC8WJneQTTO9p7NJvS803W1lq/8Z78Vx8J5jejVhXXZa0NYfXX8
iiXUr26vdhXN5htSNgktz9Tr5zUHwKhzpq+yYICPS44AmzMJByPBhjHUq7/HjnOA
e78k80OTzqL5XH8olrQc7690K1GW3b0PduH+bYykDGijQ8vlkwBKQhgxeo7zkTrm
VWsgmFJEbrdGoZPnwyHrStMHM0f6UMkEWqooughphaxtJWzS4GJES09z3VSN/3CV
FuV2Jn3UGyoEHKrZUa/kFgRx9j9AqRx3//WFusm2KPUim+IA4SLoXP5M6pZXaxvA
Z4y5b2xIc/OFFX5DfaCSpAMFwzZFYXkCAwEAAaMtMCswCQYDVR0TBAIwADAeBglg
hkgBhvhCAQ0EERYPeGNhIGNlcnRpZmljYXRlMA0GCSqGSIb3DQEBCwUAA4IBAQAZ
EXHnqu9Ilz6+w4SB/wfl5HG3UyS2n8oNpTHbFkX1Sn2+2FFuSCZlxhQYyhZKUjRq
NsbWMMcwRDST9V6cPw6iaTPfz2G8zaBFjsemnyYD6YttNmdqXgv5wiik3btP2Jk2
3msmg8MlA/EgeZWSFe0ee4yE+L145JgtEQeg0xb7t8J9OOt3W1GVnoX1hQa2GePH
PlKqc5ooPAuzIW4kWzxQefqcV5j1Rof98/dQJwJwCatRYgFciOZe26rcsu0R1iKF
yS6NB+HwJxZY1ExPcSDmiVu5cyeasSLp1bxcqb9V7a3e9YxNZ8AVmjh/NfOcb2a/
/Mx8QxPEP7g+B6tWfF/Q
-----END CERTIFICATE-----

&lt/cert&gt

&ltkey&gt
-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCAQEAmElhULxYmd5BNM72ns0m9LzTdbWWr/xnvxXHwnmN6NWFddlr
Q1h9dfyKJdSvbq92Fc3mG1I2CS3P1OvnNQfAqHOmr7JggI9LjgCbMwkHI8GGMdSr
v8eOc4B7vyTzQ5POovlcfyiWtBzvr3QrUZbdvQ924f5tjKQMaKNDy+WTAEpCGDF6
jvOROuZVayCYUkRut0ahk+fDIetK0wczR/pQyQRaqii6CGmFrG0lbNLgYkRLT3Pd
VI3/cJUW5XYmfdQbKgQcqtlRr+QWBHH2P0CpHHf/9YW6ybYo9SKb4gDhIuhc/kzq
lldrG8BnjLlvbEhz84UVfkN9oJKkAwXDNkVheQIDAQABAoIBAGZFmapr4yDqx2Xc
vHmnk0r3aRf7LMjhvRbyXKZ5ldlRVIDx0/x1eER9ppWDgZHXGnnIPooIqyt87b+z
8iGGJFe826vRIsgT9AzY0WHz5SyZMjNS/Ukdjsh4+CJFgW3X3QVMbFclfhhV+o4d
eV4g8KegtBlQEmhKX98CDmznr9KYAxBtiMODkG3gi523+8qgOH5Nqgr+0CGxwcJU
4fDHadjbSj7+12ZrY3TVZm451fEzgh2nPAseyAoNYe0CM9hExmq4jeNxjZFQHNBv
refghZaPmyuRWSOfzNbEwRsLCZeLUHDdrNvsPRnFvmLcFhtFKwctngvkGK5lPs1w
dCgs8pUCgYEAyJOsi+ZTAWTjJC1pCr3FRJEjoqfqZGw/OLCKV7PBF8Yf2DIB+LDD
gfgoMi39sK/HkaH1H6CqD1Gter8WE67gAURvo5UjK4vFAGhmQSbiwhRUCRKRljwT
zB4k649XpD8fiOzd9S12uKyr8EvvDbOz9x1XcxQELcqURIunTuDH4CsCgYEAwl3F
twSkSOPYG2AeLnuwf8sYtFbcvSYL/8cGovOuZ0GlSLpHO2k1qhUzl6HrpIhEyVom
IQRJW9S5lB7z5lU/CVcbGmYLwu4y5/tl4MeG8NOEj1o8FR9RzUw92dSSKoMfCMad
lz/RmOrBnX4pwqICs7r7h7VsnOsr/AYn5H04zusCgYEAwHHv+8rhmVTTGsL3Jfcu
brtTFZ1Gp1O01Q+NrNgrTEQsCaLxgUsYSntvFbZK0lvVf0WFivL8N/aGHF97Lyd6
hbzD4JAXTpCsU9fXRGuq5cvbVVkblqnN1OqXQewmitCF0TpzO+qDHm2OCuDQXLUu
1sqwPRnXaJgV6i6UOHozTEECgYEAgmguFqxrmWgdf8iOl3tvoV5f1eeNtO7JEDS1
1DEQ68CUp+YrksX1NoeBFRSTqNGw7TOp728T1SQ12xalZ/38DEVALwcWjxQIXbND
2HumowAXqaLOOxHHbangub0w0IsnEFlKNMeh1ipz+zpBxI+0pmgnCReFpwb2fOKY
c2o86j8CgYAWTWn/Y1/bNgtStzya6fbxpc4Mc2nCZu6bTQpAgA44r+nRJuHpVm0T
cGDKj4NZ8H4wqMmk58GoOreAVsX4qXeN9QkdfAR5dA8eWVz42faC328W3G4VA5cc
GvTqDMzq0j3bz+4csHMn3BHatHymjgsg0sgc8FshuD6dQk0NNruk9A==
-----END RSA PRIVATE KEY-----

&lt/key&gt

&ltdh&gt
-----BEGIN DH PARAMETERS-----
MIIBCAKCAQEAlpVUnvCTJ1XF9mnwhf+P+QZhVWsNyRaqEgLuO2a/fGUqPESU9KRo
bDa489awzJs6j/JCKh1xR5H5JLE+Ho6XdgIXH9LTr03BV3PsPQiA28ZiluekBGGY
ps7dTLr0Ex4V6Ae3+E+Z7lM/Yhsa4w6fl+GNRkastD42Nx4g4iN+cIerLMFCRPl1
P7Go36VbEtO/aNX/zNExmcDsYSqiLkBeGrNxXen2Loqex5AlwE9WOliUbak6Ra/W
vf21Wi03TvBBfjEDKtM/Bsyo8Ar2lgBYIrANvylU/0Gg8OyRWqcIoQjwPyjavAHd
v14V1igYDa1xP9WQ262DMHfHLhqwjOW2GwIBAg==
-----END DH PARAMETERS-----

&lt/dh&gt


Настройка конфигурации OpenVPN клиента


Для создания файла конфигурации клиента перейдите в папку с конфигурационными файлами OpenVPN [ C:\Program Files\OpenVPN\config ] и создайте файл TAP_Client с расширением .ovpn
Откройте файл TAP_Server.ovpn программой просмотра текстовых файлов (например Notepad++) и скопируйте следующий текст:

# Указываем, что мы используем клиентское подключение
client
# Указываем работу на L2 уровне
dev tap0
# Указываем протокол работы сервера и версию IP
proto udp4
# Указываем номер порта, на котором будет работать OpenVPN
port 50501
# Задает сервер, к которому должен подключаться клиент
# могут использоваться записи IP и DNS.
remote 217.196.58.128
# Указывает алгоритм шифрования
cipher AES-256-CBC
# Уровень детализации лога
verb 3
# Во внутрь копируем сертификат удостоверяющего центра
&ltca&gt

&lt/ca&gt
# Во внутрь копируем сертификат клиента
&ltcert&gt

&lt/cert&gt
# Во внутрь копируем закрытый ключ клиента
&ltkey&gt

&lt/key&gt


Затем откройте программой просмотра текстовых файлов My_CA.crt, My_Client.crt, My_Client.pem и скопируйте текст из:
My_CA.crt в &ltca&gt &lt/ca&gt
My_Client.crt в &ltcert&gt &lt/cert&gt
My_Client.pem в &ltkey&gt &lt/key&gt

image

в результате получим следующее:

client
dev tap0
proto udp4
port 50501
remote 217.196.58.128
cipher AES-256-CBC
verb 3

&ltca&gt
-----BEGIN CERTIFICATE-----
MIIDqjCCApKgAwIBAgIIJJ8tf67Csf4wDQYJKoZIhvcNAQELBQAwgYsxCzAJBgNV
BAYTAlJVMRQwEgYDVQQIEwtLUkFTTk9ZQVJTSzEUMBIGA1UEBxMLS1JBU05PWUFS
U0sxDjAMBgNVBAoTBU15T1JHMQ4wDAYDVQQLEwVNeU9SRzEOMAwGA1UEAwwFTXlf
Q0ExIDAeBgkqhkiG9w0BCQEWEW15ZW1haWxAbXlob3N0Lnh4MB4XDTE5MTIxMzAw
MDAwMFoXDTQ5MTIxMjIzNTk1OVowgYsxCzAJBgNVBAYTAlJVMRQwEgYDVQQIEwtL
UkFTTk9ZQVJTSzEUMBIGA1UEBxMLS1JBU05PWUFSU0sxDjAMBgNVBAoTBU15T1JH
MQ4wDAYDVQQLEwVNeU9SRzEOMAwGA1UEAwwFTXlfQ0ExIDAeBgkqhkiG9w0BCQEW
EW15ZW1haWxAbXlob3N0Lnh4MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEA3dJoAVl7foXZMavZIr9RTB59h+El26OYll7KMBHritf+x8DEVjcg86uyDSf0
yzLtAR+8J013W3SRDVpl3gqdk3t1qb7Paz1OUrV2Hu3N5Ws1s4elpENTQAe1HFZS
u0NRhXBCxTTyToNdb1pKcIJziVNLXdTL+pud0T8FNs6q37t14XFkfDOw85m7y3py
vU8+ucmQEd5vOKPjcY1jklVZkQJKcGTI77x/R2k6HK7ryul5uIepi/RrVrgTNe5W
rYWuk6wlmmFLvgdzoVaBJO8edo89M7oJIQFMNN9x3cpbths6/3ZummBktfgVa7xy
3fs//M5v1pjnYeJ5wd5tiCXkpQIDAQABoxAwDjAMBgNVHRMEBTADAQH/MA0GCSqG
SIb3DQEBCwUAA4IBAQDbNhPy3IftjPVNyaUH/5AW6R0Fjqoct/55ZMDrdWlLY1mo
iTTxhFPv1DbilUE/nr+SwGvZV2MQs4G1hi9PgGqY5a+lJCSios8BJ7zlrt/LLQQ/
st0r2wzpCYROxoi+zu9YNGZJPP9GI3KdcVye9Rt3vbLbL8LQ8kKKwn3Ju5i1SUMy
gzvGTNUPtqOKVJid39IIdva3iMUBspfMGv2EcaGaRWekW9Pni/gBS2eHkBH1/X6n
KiopjtZw7A4RPHzC58jp+ypT/X63tPwf5+kWsMDeLG1XTKnLoPeAVNtszMhGsgzE
DoZUuL4pb8XbpcnrPlgp0WSkrf1RJrJGuArvUDLu
-----END CERTIFICATE-----

&lt/ca&gt

&ltcert&gt
-----BEGIN CERTIFICATE-----
MIIDyzCCArOgAwIBAgIII6a7Y3h+sS0wDQYJKoZIhvcNAQELBQAwgYsxCzAJBgNV
BAYTAlJVMRQwEgYDVQQIEwtLUkFTTk9ZQVJTSzEUMBIGA1UEBxMLS1JBU05PWUFS
U0sxDjAMBgNVBAoTBU15T1JHMQ4wDAYDVQQLEwVNeU9SRzEOMAwGA1UEAwwFTXlf
Q0ExIDAeBgkqhkiG9w0BCQEWEW15ZW1haWxAbXlob3N0Lnh4MB4XDTE5MTIxMzAw
MDAwMFoXDTQ5MTIxMjIzNTk1OVowgY8xCzAJBgNVBAYTAlJVMRQwEgYDVQQIEwtL
UkFTTk9ZQVJTSzEUMBIGA1UEBxMLS1JBU05PWUFSU0sxDjAMBgNVBAoTBU15T1JH
MQ4wDAYDVQQLEwVNeU9SRzESMBAGA1UEAwwJTXlfQ2xpZW50MSAwHgYJKoZIhvcN
AQkBFhFNeUVtYWlsQE15SG9zdC54eDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
AQoCggEBAM1xGkTl0fTge3jacEgSkrMoN3wgIr94Y1uD574XqxKYdH11hEdldTLa
gx8MGLIYaXN/HQTEYuhxpk+EX0Mqns9TazGouvE2/poP4KiO8iSHVO9PaaKO0OKq
Y7ctt4TVBdnD2UjiHCq5DfQ/T6UGv4bOR61RCqymyBnnVQ/KyR0DX4/U+jLx9wxS
d5OLD0SSqOjdLTnI1gBpEphRuPo6705I+eM7cATyoL17GMgAQ1W4zLzq3ojNPCo3
U/P0tPvQi6hHoJv5Rj8EfgK7eID7kUqvCrG4Vvg+iKjC7m1ABweOjBXVpk7UsKin
97I/Gz0PGOwnsh3a3J/WNZu1DuPfw9UCAwEAAaMtMCswCQYDVR0TBAIwADAeBglg
hkgBhvhCAQ0EERYPeGNhIGNlcnRpZmljYXRlMA0GCSqGSIb3DQEBCwUAA4IBAQDd
v4iq13jCqRI6yeFlB8ouMVtuVpI+p7w6KBYyc+phbDuzqI4iFkMyhj0H+cx/760M
ziQMuLR/pRrSPKPI03JgFI5dFh1txnNFkelQutZ+6qe4c1y9OhKhwg3n6jS2PevG
Tvlrl1utoiNOVXhcvH0CxuD5AJEyQa9SH/vO3TRQC9g5zbfULTgOhpUmaVPYBkX/
tBnvnKFdmsLqwgrKvdqfJF3WqJuQSdHtyp4MVZN1d/T+HoQ5YfN5nGXpLLgLdGaq
KvtAtFACkltO0A7R2WeLw1WNiXGHNxd3OFuVedapub1zXCSiYZNC+8MX7PkQnV9e
p1JB/AWXg/Z7uQSua3+c
-----END CERTIFICATE-----

&lt/cert&gt

&ltkey&gt
-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCAQEAzXEaROXR9OB7eNpwSBKSsyg3fCAiv3hjW4PnvherEph0fXWE
R2V1MtqDHwwYshhpc38dBMRi6HGmT4RfQyqez1NrMai68Tb+mg/gqI7yJIdU709p
oo7Q4qpjty23hNUF2cPZSOIcKrkN9D9PpQa/hs5HrVEKrKbIGedVD8rJHQNfj9T6
MvH3DFJ3k4sPRJKo6N0tOcjWAGkSmFG4+jrvTkj54ztwBPKgvXsYyABDVbjMvOre
iM08KjdT8/S0+9CLqEegm/lGPwR+Art4gPuRSq8KsbhW+D6IqMLubUAHB46MFdWm
TtSwqKf3sj8bPQ8Y7CeyHdrcn9Y1m7UO49/D1QIDAQABAoIBAQC6dsyL+jf9VX5b
6497qvfhikAJ9jTzqjYsCuXcwCiygRNCB9ae4rRkCrZ2CImlo8iaXqYc/I51QSnd
BF1eXiG0NZeWg/nhE7Q0avLSqqOWigqKBn7vX0ayZEqLKQBnnN1pkHv3zdoY4MuM
g6YrN5vApBukcGkK2XnHIRMweTLek9/qAeDgcE4ZVXIgHkNjqAc9y/kd5Sx+fL+N
k/dGQeTne2xgzJZsiu4uoS9jnBE7g1hQpfLpbyoREaRjWob/KP2IDFIjInjnHrb9
mO5Xuqsv8mHp4+67Ium8IN5jDldoObayEd8giE6x3r/3x60RSmV8IDHKPIs507qD
2hoCXz8hAoGBAObhKqowjp5TuqPt9Nrm+cVZKroDvz8bXb8ejOMn22Wj171cdNy3
gxbt5ksLXsHmjPWm9fK5ZL8m33U+uMwcgqIUbHILo40AQK9FtwkjyeTQne1OBjJa
2tjCc3ySo0icEswRFJrCu9Rcszehj56WlJzmvE0CiM2QGG3ExOxl8LNtAoGBAOPL
Zv5nkG0RAuOg5w+tLi2H14BcD1ICpPcq232mXdqzEeeXSysvgpwDaOWPGXtgWvIK
ScIw9xqW7tonk5EjKnsgPajV8OvG+vAqC2liHy00IxZ+YB+vzE66uUEpYXUpzI2n
F+pb+rQDSQo3beyamjeL1wYEjntDyWqfRmQfQSkJAoGAMP1CIk6fVHULu1D4jaJJ
CVj8OfAlmmxiHfWLi3+fjBeR5XpCybqetDTSksXc22PiMRW2RkSUXgMPkz810wmR
pnaS9DgIAhk1oHs4dVYEtuqVOA9APVsN6MSJ4Lr0rql/S5GsP5JmbI8m7/z2Dn6B
FjHXbrfE82lJ5bDE4CxZQJkCgYAvmtJrWDlWkbeI2pdvL0H3QexHZvXMrcDL5qj4
GUyD5+hV/cg3vjYNZKkHUGCC6CAZdQz1CEabx+8iqCKusiqukI5SOmOe4naOujqo
S1k4mSy8Bq0P8i1ARsVwWLWFRrb443KcB5zdAdLBz9OpHqYb9Z16JHmiSQhOv/p1
8hIsAQKBgQCvHQu6NKsdNDogXCiwEt52jlqBRs4NEjspupOKzV+HlEfek6ijKMce
P9o4U+vpiG5ZmIYPzgTfAlaWxoMi5ynRZhiMA8dFzX53uyJiYJetXm+zb71l9BW8
kmsch0B5z5yAjEA+CWIqDJ05O7QTLMLC69QU4UICswbyJy1MFUfrbg==
-----END RSA PRIVATE KEY-----

&lt/key&gt

На этом создание файлов конфигурации клиента и сервера будем считать завершенным.

Настройка маршрутизатора предприятия


Т.к. наш персональный компьютер подключен не напрямую к линии с внешним белым IP, а через маршрутизатор предприятия, то для доступа к компьютеру с локальным IP-адресом из внешней сети необходимо пробросить порт, который мы указали в конфигурации сервера (50501).

В зависимости от модели маршрутизатора процедура проброса портов может отличаться.
На скриншоте ниже приведён пример по настройке маршрутизатора предприятия (не нашего KEENETIC 4G).

image

Запуск OpenVPN сервера на персональном компьютере


Наши файлы конфигурации готовы, осталось перейти к нюансам по настройке OpenVPN на системе под управлением Windows, для этого перейдём к настройке параметров адаптера и переименуем TAP-Windows Adapter V9 как MyTap (в соответствии с именем dev-node).

image

А также настроим локальный адрес нашему адаптеру (должен быть назначен на не занятый IP адрес нашей локальной сети контроллера, например 192.168.112.230)

image

Далее запускаем в работу сервер OpenVPN:

1. Запускаем приложение, расположенное по адресу C:\Program Files\OpenVPN\bin\openvpn-gui.exe (или нажимаем на ярлык на рабочем столе)

image

2. Переходим в трей, выбираем созданный файл конфигурации «TAP_Server» и нажимаем «подключиться»

image

3. Убедимся, что наш сервер работает и перейдём к настройке интернет-центра KEENETIC 4G

image

Настройка интернет-центра KEENETIC 4G


По-умолчанию в KEENETIC 4G не входит клиент OpenVPN, поэтому сначала нам следует его установить. Для этого подключаем KEENETIC 4G к интернету различным способом (по кабелю, по Wi-Fi или с помощью 4G модема), далее переходим в «Общие настройки» и нажимаем кнопку «Изменить набор компонентов».

image

Выбираем нужные нам компоненты (в данном случае Клиент OpenVPN уже был установлен, поэтому для примера показывается другой компонент) и нажимаем кнопку «Установить обновление».

image

Далее перейдём к настройке нашей сети, для этого выбираем «Домашняя сеть» и настраиваем IP-адрес нашего маршрутизатора, например 192.168.112.101 (так же должен быть свободным).

image

Далее нам следует настроить наше OpenVPN подключение, для этого выбираем «Другие подключения», нажимаем кнопку «добавить подключение».
Вводим имя подключения (произвольное, например, TAP_Client_PLC), выбираем тип подключения (OpenVPN), в конфигурацию OpenVPN копируем текст из нашего созданного файла для клиента (TAP_Client.ovpn) и нажимаем кнопку сохранить для применения изменений.

image

Далее нам следует включить интерфейс OpenVPN в основной мост, но прежде чем сделать данную процедуру нам придётся установить клиент telnet. Для этого перейдём в панель управления, далее «Включение или отключение компонентов Windows», выберем Telnet Client и нажмём «ОК».

image

После того, как telnet клиент будет установлен — подключаемся к нашему KEENETIC 4G: на клавиатуре жмём сочетание клавиш WIN+R, вводим cmd

image

Вводим команду telnet [IP_нашего_KEENETIC] (например, telnet 192.168.112.101)

image

Пройдём процесс авторизации (введём логин и пароль (если он был настроен)) и введём следующие команды:

interface Bridge0
include OpenVPN0
system configuration save

Проверим правильность нашей конфигурации:

show
running-config

В итоге мы должны увидеть нечто подобное:

image

Отмечу, что интерфейс OpenVPN0 создаётся только после создания OpenVPN подключения.

Включаем в работу наш OpenVPN клиент.

image

Видим, что KEENETIC 4G осуществил подключение к нашему серверу и переходим к настройке нашего контроллера S7-1500.

image

Настройка программируемого логического контроллера S7-1500


В настройках нашего контроллера достаточно установить локальный адрес нашего маршрутизатора:

  1. Устанавливаем галочку «Use router»
  2. Вбиваем адрес домашней сети нашего KEENETIC 4G (192.168.112.101)

image

После прогрузки конфигурации, контроллер станет доступен для доступа по удалённому подключению.

image

На этом настройка нашего удалённого подключения завершена.

Благодарю за внимание!
Теги:
Хабы:
+8
Комментарии29

Публикации

Истории

Работа

Ближайшие события