Введение
Всем привет, меня зовут Абай, я обычный пользователей 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.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
Пишите команду ниже, чтоб активировать скрипт удаления:
cd /home/$USER/NCALayer && ./ncalayer.sh --nogui
И прожимаем D и Enter:
Заключение
В принципе установка NCALayer не является какой-то слишком сложной, однако все же непонятно, почему в инструкции не написан простой момент, что нужно иметь установленный Vim для установки приложения.
Также момент с установкой без gui, не упоминается в приложенной инструкции, а лишь помечен в исходниках самого скрипта, что тоже можно было бы добавить в нее.
P.S. В полной инструкции на Linux все же написано о консольной установке на странице 11, но не в приложенной.
Ну и последней моей критикой в сторону инструкции будет, что не написано, что можно посмотреть полный man для скрипта через:
./ncalayer.sh --help
Однако, в любом случае спасибо, что хоть имеется какой-либо порт ПО под Linux.
Комментарии (9)
chupasaurus
08.01.2024 04:24В репах Debian/Ubuntu xxd - отдельный пакет, от которого в свою очередь зависит vim-common.
PrisonerOfDarkMatter
08.01.2024 04:24+1Гладко было на бумаге...
2 раза ставил его на Ubuntu, оба раза он устанавливался нормально, но после установки модулей и попытки перезапуска просто не запускался. Первый раз пофиксил это тем, что установил сначала jre и потом уже NCA Layer, во второй ЕМНИП и (пере-)установка Джавы не помогла, плюнул и поднял виртуалку с Win10.
LaggerIsME Автор
08.01.2024 04:24Да уж, NCALayer на Linux это сплошное веселье, что иногда проще виртуалку ставить)
vernolub
08.01.2024 04:24Радует, что можно обойтись без вина. Но, линукс, к большому сожалению, для терпил. Потому что подразумевается, что если на линуксе какого-то софта нет, то ты терпишь-терпишь-терпишь и терпишь пока он наконец-то появится, но еще параллельно можно писать разработчикам этого самого софта чтобы они сделали линукс версию. В некоторых случаях это работает, а в некоторых случаях видимо не будет работать никогда. Ну, например, банально на сайте налоговой есть программа для заполнения налоговых декларации, она только под винду и это для частных лиц, а всякие специализированные софтины для бухгалтеров, каких-нибудь организаций тоже только под винду. И разработчикам вообще все равно на желания пользователей. Но в принципе здесь есть еще закон об импортозамещении, так сказать, вернее об отвязке от майков и переходе на менее зависимое от США ПО, то есть под линукс. Возможно что-нибудь когда-нибудь напилят. Но пока, если ты разработчик софта и хочешь хоть как-то на этом подняться, то первое что ты должен сделать - версию для винды, все остальное уже по желанию.
saag
В общем попробовал как вы описали, установка прошла на первый взгляд успешно, даже корневые сертификаты установились, чего раньше не было, но после окончания установки ни в системном трее программа не отображается и при попытке зайти на тот же egov выдает сообщение, что не установлено соединение с программой ncalayer. Он у меня на Linux Mint может через раз работать, от одной установке до другой.
LaggerIsME Автор
Насчет трея то да, у этой программы с ним постоянно проблемы. В том же дефолтном Gnome в Background Apps он не отображается. А насчет ошибки, что не установилось даже так, то советую обратиться к Дежурному АО НИТ по телеграмму: @dezhurnyNitec и скинуть ему логи. Когда лично у меня на Федоре произошла ошибка запуска после обновления, то я обращался именно туда и все исправили на следующий день. Также можете сами логи почитать и поискать корень проблемы. Они находятся по пути: /home/$USER/.config/NCALayer/ncalayer.log