Intereting Posts
Присоединить несколько файлов с двумя пустыми строками? Сортировка каталогов и файлов в каждом каталоге в порядке возрастания и экспорт данных в csv Как отображать скрытые символы при вводе текста? Как я могу найти неравномерные разрешения файлов в структуре каталогов? Добавить обложку альбома в файл mp3 / ogg из командной строки в пакетном режиме? Как изменить информацию о камере в Exif с помощью командной строки Отслеживание последних выпусков Rhythmbox не может найти музыку на моем Android-устройстве brctl Не работает нормально с мостом eth0 и at0 Диспетчер модемов устанавливает канал и автоматически подключается Дать разрешение на просмотр файлов Есть ли кэширование на уровне диска в Solaris 11? Nvidia загружается, несмотря на то, что она включена в черный список Суммирование суммарной совокупности суммарного поля Поддерживается ли Уби?

Конфигурация VPN: общий секретный формат PSK

Я использую в качестве клиента коммерческую VPN для OS / X и iPhone. Я также предоставляю VNP на работу для iOS / MacOs и имею VPN на базе Debian дома с StrongSwan.

Я захватил .mobileconfig инициализации .mobileconfig файл Sierra MacOS, предоставленный моим коммерческим поставщиком VPN. Я хотел бы получить информацию о конфигурации оттуда, чтобы не устанавливать их программное обеспечение Linux и настраивать его вручную, однако поле данных XML SharedSecret зашифровано.

На работе я использовал Apple Configurator 2 чтобы зашифровать свой Shared Secret для создания скелета файлов обеспечения мобильным контентом для устройств Apple, однако у меня все еще нет идеи, каков формат этого поля.

Я заметил, что этот «зашифрованный» пароль можно поместить в ipsec.secrets вместо простых текстовых паролей, таких как:

 @vpngroup : PSK 0scGFzc3dvcmQK 

Аналогично, снова в файлах Apple mobileconfig, которые доставляются клиентам / конечным пользователям, его можно найти снова:

 <key>SharedSecret</key> <data>cGFzc3dvcmQK</data> 

Так что же это за формат? И как его зашифровать и зашифровать? Я точно знаю, что это не фактический общий секрет в ясном тексте.

Формат регистрации общего секретного / группового пароля на самом деле Base64 .

С сайта сильной ссылки :

В качестве альтернативы предустановленные секреты могут быть представлены как шестнадцатеричные или двоичные значения с кодировкой Base64. Последовательность символов, начинающаяся с 0x, интерпретируется как шестнадцатеричные цифры последовательности. Аналогично, последовательность символов, начинающаяся с 0s, интерпретируется как двоичные данные с кодировкой Base64.

На самом деле формат Base64 для группового пароля, помимо использования в конфигурациях Linux и FreeBSD IPsec и файлах подготовки Apple, также используется в клиентских файлах Cisco VPN.

Фактически обоснование использования Base64 заключается в защите пароля от посторонних глаз и конечных пользователей. Зачем использовать тогда такой базовый алгоритм регистрации …

Поэтому в конце дня, чтобы декодировать его в Linux, он должен быть доведен дословно из поля данных Apple SharedSecret или когда он начинается с ipsec.secrets , вы должны игнорировать ведущие «0s» из строки:

 $echo cGFzc3dvcmQK | base64 -d password 

Чтобы декодировать его во FreeBSD / OS / X:

 $echo cGFzc3dvcmQK | base64 -D password 

Аналогично, чтобы закодировать его обратно:

 $echo password | base64 cGFzc3dvcmQK