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

Как установить NCALayer на Linux

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров10K

Введение

Всем привет, меня зовут Абай, я обычный пользователь Linux.

В последнее время часто замечаю, что у пользователей Linux в Казахстане постоянно проблемы с установкой NCALayer, поэтому решил написать гайд, который простым языком объяснит, как установить его.

NCALayer - программное обеспечение, которое предоставляет возможность использовать средства ЭЦП НУЦ РК в веб-приложениях, а также обеспечивает работу Java в браузерах. Если простым языком, то предоставляет возможность использовать ЭЦП на различных сайтах, которые предоставляют государственные услуги, чтоб аутентифицировать себя и подписывать документы.

Оглавление

  • Оговорка

  • Скачивание NCALayer

  • Неправильная установка NCALayer

  • Решение ошибки во время установки

  • Правильная установка NCALayer после исправления ошибки

  • Удаление NCALayer

  • Заключение

Оговорка

Данное руководство рассчитано на пользователей Linux дистрибутивов из семейства RHEL (Fedora, CentOS, AlmaLinux, RHEL) и Debian (Debian, Ubuntu, Linux Mint, Pop_OS! и т.д.), которые используют пакетные менеджеры yum, dnf, apt. На других дистрибутивах вы вероятно сможете воспользоваться данным скриптом, однако нужно будет вручную поставить nss-tools через ваш пакетный менеджер.

Функция в скрипте, которая отвечает за установку nss-tools:

installNSS3() {

if [ `command -v apt-get ` ]; then

sudo apt install  -y libnss3-tools >/dev/null  # Автоустановка зависимости для сертификатов для Debian-based

elif [ `command -v yum ` ]; then 

sudo yum install -y nss-tools >/dev/null # Автоустановка зависимости для сертификатов для RHEL-based

elif [ `command -v dnf ` ]; then 

sudo dnf install -y nss-tools >/dev/null # Автоустановка зависимости для сертификатов для RHEL-based

fi 

if [ -z "$(getInfoCertutil)" ]; then

printf "${COLOR_OFF}\n";

printf "${BLACK_ON_RED}Программу nss-tools установить не удалось!\n"

printf "${COLOR_OFF}\n";

echo 

else

printf "${COLOR_OFF}\n";

printf "${BLUE_BG_BOLD}Программа nss-tools успешно установилась!\n"

printf "${COLOR_OFF}\n";

echo "SUCCESS"

fi

}

Как видите установки под другие пакетные менеджеры здесь нет.

Скачивание NCALayer

Для того, чтоб скачать исходники со скриптом под Linux, нам нужно перейти по данной ссылке -> https://ncl.pki.gov.kz/

Официальный сайт разработчика данного ПО
Официальный сайт разработчика данного ПО

Как перейдете на данную ссылку, то пролистываете ниже и нажимаете на ссылку "NCALayer для Linux" после чего начнется скачивание.

Пункт, который нужно выбрать для скачивания
Пункт, который нужно выбрать для скачивания

После чего ждем скачивания данного архива

Скачанный архив
Скачанный архив

Дальше открываете терминал и прописываете команду ниже, чтоб перейти в директорию, в которую скачался наш архив и увидеть ее содержимое:

cd Downloads && ls 
Переход в директорию с нашим архивом
Переход в директорию с нашим архивом

После чего следующей командой берем и разархивируем данный архив в папку ncalayer:

unzip ncalayer.zip -d ncalayer

Переходим следующей командой в директорию ncalayer, где хранится наш скрипт установки и делаем его исполняемым файлом:

cd ncalayer && chmod +x ncalayer.sh && ls

Неправильная установка NCALayer

Прописываем команду ниже и ловим ошибку:

./ncalayer.sh 
Ошибка, которая всех останавливает
Ошибка, которая всех останавливает

Теперь попробуем другую команду, запускающая установку через терминал, прожимая на всех вопросах Enter. Она сначала начнет работать, но потом все равно ничего не поставит:

./ncalayer.sh --nogui 
Показывает, что все как бы установилось
Показывает, что все как бы установилось

Как видите ничего не будет работать, поскольку не была найдена утилита xxd при установке

Неудачная попытка воспользоваться NCALayer для входа на сайт
Неудачная попытка воспользоваться NCALayer для входа на сайт

Теперь берем и удаляем неправильную установку NCALayer с помощью той же команды:

./ncalayer.sh --nogui 

После чего нажимаем D и Enter, чтоб ее удалить:

Удаление неправильной установки
Удаление неправильной установки

Решение ошибки во время установки

Непонятно зачем кто-либо решил сделать зависимость от утилиты xxd при установке ПО, которая входит в текстовый редактор vim, однако это и является всей проблемой при установке. Команды для ее решения приведены ниже.

Debian-based дистрибутивы:

sudo apt-get install vim

RHEL-based дистрибутивы:

sudo dnf install vim

Или же:

sudo yum install vim

Правильная установка NCALayer после исправления ошибки

Теперь пробуем еще раз провести установку через скрипт с помощью команды:

./ncalayer.sh --nogui 

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

Правильная установка приложения
Правильная установка приложения

Теперь переходим на любой сайт, где используется ЭЦП для авторизации и видим, что все работает

Запрос ЭЦП для аутентификации пользователя на сайте через NCALayer
Запрос ЭЦП для аутентификации пользователя на сайте через NCALayer

Удаление NCALayer

Пишите команду ниже, чтоб активировать скрипт удаления:

cd /home/$USER/NCALayer && ./ncalayer.sh --nogui 

И прожимаем D и Enter:

Программа успешно удалена с вашего устройства
Программа успешно удалена с вашего устройства

Заключение

В принципе установка NCALayer не является какой-то слишком сложной, однако все же непонятно, почему в инструкции не написан простой момент, что нужно иметь установленный Vim для установки приложения.

Инструкция для установки NCALayer на Linux
Инструкция для установки NCALayer на Linux

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

P.S. В полной инструкции на Linux все же написано о консольной установке на странице 11, но не в приложенной.

Начало скрипта установки ncalayer.sh
Начало скрипта установки ncalayer.sh

Ну и последней моей критикой в сторону инструкции будет, что не написано, что можно посмотреть полный man для скрипта через:

./ncalayer.sh --help
man для NCALayer
man для NCALayer

Однако, в любом случае спасибо, что хоть имеется какой-либо порт ПО под Linux.

Теги:
Хабы:
Всего голосов 12: ↑12 и ↓0+12
Комментарии11

Публикации

Истории

Работа

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

7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн
15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
22 – 24 ноября
Хакатон «AgroCode Hack Genetics'24»
Онлайн
28 ноября
Конференция «TechRec: ITHR CAMPUS»
МоскваОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань