какая вообще разница использовать pre-shared-key или сертификат?
pre-shared-key - это аутентификация по паролю. Она плоха тем что можно сбутфорсить пароль или сделать
MITM атаку
сертификат - более продвинутая версия аутентификации когда проверяется вторая сторона. сбутфорсить или сделать MITM атаку практически нереально (читай невозможно если ты простой смертный, а не сотрудник АНБ). В сертификатах есть проверка по IP еще, очень полезная штука.
можно ли и если да, то как, использовать ключ, созданный в меню IP - IPSec - Keys, для VPN между Mikrotik и клиентом Windows;
Для IPsec сертификат должен иметь IPsec галочки в настройках генерации сертификата, сертификат желательно привязать к IP. Потом полученный сертификат (его открытый ключ) экспортировать в windows в центр корневых сертификатов. Я настроил IPsec с гибриной авторизацией только на микротиках, на windows переностить настройки никогда небыло нужды, но сертификаты от других служб экспортировать приходилось и их нужно сувать именно в корневые сертификаты.
в чем отличие ключа из IP - IPSec - Keys и сертификатов из System - Certificate;
IP - IPSec - Keys = нет привязки к IP и скорее всего этот сертификат только для авторизации на микротиках, для windows нужен другой из System - Certificate.
правильно ли я понимаю, что связь IPSec, установленная между компьютером и сервером VPN, при использовании pre-shared-key отличается от нее же, но с использованием сертификата/ключа, более легкой возможностью подбора?
грубо говоря да pre-shared-key это полное говно и его никогда нельзя использовать. только сертификаты с проверкой сервера и клиента. сертификаты сервера нужно экспортировать на клента, а клиентские сертификаты нужно экспортировать с клиента на сервер, чтобы они друг друга знали, иначе соединиться не получится.
-----
Обязательные нстройки:
для L2TP (PPP > L2TP_Server) Use IPsec: reguired - требовать IPsec и без него не поднимать L2TP
В профиле L2TP (PPP > Profiles) Use Encryption: required - требовать шифрование.
для IPsec
(IP > IPsec > Peer_Profiles) и (IP > IPsec > Peers) настроить так чтобы использовалось шифрование не ниже AES. DES, 3DES - явно уязвимы. blowfish - есть вероятность что уязвим.
(IP > IPsec > Policies)
Action : encryption
Level : required
IPsec Protocols : esp (не вздумай поставить ah, труба всему шифрованию, его тупо не будет. только esp)
IP > IPsec > Installed_SAs
тут после соединения проверь чтобы было шифрование три колонки (Auth. Algorithm; Encr. Algorithm; Encr. Key Size) алгоримм подписи пакета, алгоритм шифрования и размер ключа шифрования.
вот хорошая статься по IPsec:
https://habr.com/ru/post/438176/