Сегодня сервер FTP становится обязательной частью любого офиса. Без его работы не обходится ни одна серьёзная компания. Узел на базе FTP входит в пятёрку основных серверов, составляющих ядро ИТ компании читать далее
Метка: utility
Как подключить СмартToken Linux
Введение.
Темой блога является материал рабочих заметок, полученный при подключение USB считывателя и смарткарты в окружающей среде операционной системы Linux.
Предположим, есть организация, в которой существует смешанная среда рабочих станций, под управлением операционной системы Windows и linux. В организации развёрнут удостоверяющий центр сертификации, который из последних сил, выдаёт сертификат открытого и закрытого ключа для записи на токен носитель. Сам токен выполнен в виде смарт карт, Rutoken или Esmart. Наша задача подключить считыватель, подключить смарт карту(ы), проверить чтение информации хранившийся на ней и возможность менять информацию доступную для корректировки. В дальнейшем предполагается добавить интеграцию с КриптоПро и возможность входа/логина с помощью смарт карты или как принято называть, двух факторной авторизации.
Подготовка СмартToken.
- Стенд
- Альт Рабочая станция К
Устанавливаем необходимые пакеты и библиотеки.
# apt-get update
# apt-get install pcsc-lite pcsc-lite-ccid pcsc-tools opensc
Добавляем драйвер для считывателя Athena.
# apt-get install pcsc-lite-asedriveiiie-usb
Выбираем библиотеку rtPKCS11ECP, для RSA и ГОСТ-алгоритмов модели Рутокен.
# apt-get install librtpkcs11ecp
Проверяем наличие требуемых необходимых пакетов.
# rpm -q pcsc-lite-ccid libpcsclite pcsc-tools opensc
pcsc-lite-ccid-1.4.28-alt0.M80P.1
libpcsclite-1.8.22-alt0.M80P.1
pcsc-tools-1.4.27-alt0.M80P.1
opensc-0.19.0-alt2.M80P.
Проверяем наличие библиотек для rutoken.
# ldconfig -p|grep librtpkcs11ecp.so
librtpkcs11ecp.so (libc6,x86-64) => /usr/lib64/librtpkcs11ecp.so
Устанавливаем драйвер для Рутокен.
# apt-get install pcsc-lite-rutokens
Можно скачать актуальную версии драйвера для «ручной» установки.
Загрузки]# apt-get install ifd-rutokens*.x86_64
Устанавливаем драйвер для ESMART карты, проверяем наличие требуемых библиотек.
# apt-get install isbc-pkcs11
...
# ldconfig -p|grep libisbc*
libisbc_pkcs11_main.so (libc6,x86-64) => /usr/lib64/libisbc_pkcs11_main.so
libisbc_esmart_token_mod.so (libc6,x86-64) => /usr/lib64/libisbc_esmart_token_mod.so
# ldconfig -p|grep libesmart*
libesmart_token_mskey_mod.so (libc6,x86-64) => /usr/lib64/libesmart_token_mskey_mod.so
libesmart_token_gost_mod.so (libc6,x86-64) => /usr/lib64/libesmart_token_gost_mod.so
# ldconfig -p|grep libEsmart*
libEsmartToken_Javalib.so (libc6,x86-64) => /usr/lib64/libEsmartToken_Javalib.s
Запускаем demon pcscd.
# systemctl start pcscd
# systemctl enable pcscd
Проверка и управление СмартToken.
Проверяем «видимость» считывателя при подключение к ПК.
# lsusb
...
Bus 002 Device 003: ID 0dc3:0802 Athena Smartcard Solutions, Inc. ASEDrive IIIe
...
Проверяем установку драйвера считывателя Athena.
# usb-devices
Bus=02 Lev=01 Prnt=01 Port=01 Cnt=02 Dev#= 4 Spd=12 MxCh= 0
D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0dc3 ProdID=0802 Rev=03.27
S: Manufacturer=Athena Smartcard Solutions
S: Product=ASEDrive IIIe
C: #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=60mA
I: If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=00 Prot=00 Driver=usbfs*
Тестируем работу смарткарты Rutoken.
# pcsc_scan
PC/SC device scanner
V 1.4.27 (c) 2001-2011, Ludovic Rousseau
Compiled with PC/SC lite version: 1.8.18
Using reader plug'n play mechanism
Scanning present readers...
0: AseIIIeUSB 00 00
...
ATR: 3B 9C 96 00 52 75 74 6F 6B 65 6E 45 43 50 73 63
+ TS = 3B --> Direct Convention
+ T0 = 9C, Y(1): 1001, K: 12 (historical bytes)
TA(1) = 96 --> Fi=512, Di=32, 16 cycles/ETU
250000 bits/s at 4 MHz, fMax for Fi = 5 MHz => 312500 bits/s
TD(1) = 00 --> Y(i+1) = 0000, Protocol T = 0
-----
+ Historical bytes: 52 75 74 6F 6B 65 6E 45 43 50 73 63
Category indicator byte: 52 (proprietary format) Possibly identified card (using /usr/share/pcsc/smartcard_list.txt):
3B 9C 96 00 52 75 74 6F 6B 65 6E 45 43 50 73 63
RuToken Light SC
# ctr^C
Комплексная проверка работы считывателя и смарткарты Rutoken.
# pkcs11-tool -L --module /usr/lib64/pkcs11/librtpkcs11ecp.so
Available slots:
Slot 0 (0x0): AseIIIeUSB 00 00
token label : test
token manufacturer : Aktiv Co.
token model : Rutoken ECP SC
token flags : login required, rng, SO PIN to be changed, token initialized, PIN initialized, user PIN to be changed
hardware version : 54.2
firmware version : 18.0
serial num : 37866b44
pin min/max : 6/32
Slot 1 (0x1):
(empty)
Slot 2 (0x2):
(empty)
...
Смотрим информацию на токене Rutoken.
# pkcs11-tool -Ol --module /usr/lib64/pkcs11/librtpkcs11ecp.so
Using slot 0 with a present token (0x0)
Logging in to "test".
WARNING: user PIN to be changed
Please enter User PIN:
Private Key Object; RSA
label: le-!0412!0445!043e!0434!0441!043e-52423_E
ID: 6c652d2130343132213034343521303433652130343334213034343121303433652d35323432335f45
Usage: decrypt, sign, derive
Public Key Object; RSA 2048 bits
label: le-!0412!0445!043e!0434!0441!043e-52423_E
ID: 6c652d2130343132213034343521303433652130343334213034343121303433652d35323432335f45
Usage: encrypt, verify, derive
Certificate Object; type = X.509 cert
label: le-!0412!0445!043e!0434!0441!043e-52423_E
subject: DN: DC=ru, DC=trest, DC=bany, DC=taziki, OU=\xD0\xA6\xD0\xB5\xD0\xBD\xD1\x82\xD1\x80\xD0\xB0\xD0\xBB\xD1\x8C\xD0\xBD\xD0\xBE\xD0\xB5 \xD1\x82\xD0\xB0\xD0\xBC\xD0\xBE\xD0\xB6\xD0\xB5\xD0\xBD\xD0\xBD\xD0\xBE\xD0\xB5 \xD1\x83\xD0\xBF\xD1\x80\xD0\xB0\xD0\xB2\xD0\xBB\xD0\xB5\xD0\xBD\xD0\xB8\xD0\xB5, OU=\xD0\xA6\xD0\xA2\xD0\xA3, OU=user, OU=baza, CN=bany
ID: 6c652d2130343132213034343521303433652130343334213034343121303433652d35323432335f45
...
Пробуем сменить PIN код на токене Rutoken.
# pkcs11-tool --change-pin --module /usr/lib64/pkcs11/librtpkcs11ecp.so
Using slot 0 with a present token (0x0)
Please enter the current PIN:
...
Инициализация токена Rutoken.
Вся предыдущая информация стирается
# pkcs11-tool --init-token --label EsmartToken --module /usr/lib64/pkcs11/librtpkcs11ecp.so
Проверяем работу считывателя и смарткарты Esmart.
# pkcs11-tool -L --module /usr/lib64/pkcs11/libisbc_pkcs11_main.so
Available slots:
Slot 0 (0x1): AseIIIeUSB 00 00
token label : ESMART Token
token manufacturer : ISBC
token model : ESMART Token
token flags : login required, rng, SO PIN locked, token initialized, PIN initialized
hardware version : 0.0
firmware version : 2.4
serial num : C07DC072A10B
pin min/max : 4/8
Смотрим информацию на токене Esmart.
# pkcs11-tool -Ol --module /usr/lib64/pkcs11/librtpkcs11ecp.so
Using slot 0 with a present token (0x0)
Logging in to "test".
WARNING: user PIN to be changed
Please enter User PIN:
Private Key Object; RSA
label: le-!0412!0445!043e!0434!0441!043e-52423_E
ID: 6c652d2130343132213034343521303433652130343334213034343121303433652d35323432335f45
Usage: decrypt, sign, derive
Public Key Object; RSA 2048 bits
label: le-!0412!0445!043e!0434!0441!043e-52423_E
ID: 6c652d2130343132213034343521303433652130343334213034343121303433652d35323432335f45
Usage: encrypt, verify, derive
Certificate Object; type = X.509 cert
label: le-!0412!0445!043e!0434!0441!043e-52423_E
subject: DN: DC=ru, DC=trest, DC=bany, DC=taziki, OU=\xD0\xA6\xD0\xB5\xD0\xBD\xD1\x82\xD1\x80\xD0\xB0\xD0\xBB\xD1\x8C\xD0\xBD\xD0\xBE\xD0\xB5 \xD1\x82\xD0\xB0\xD0\xBC\xD0\xBE\xD0\xB6\xD0\xB5\xD0\xBD\xD0\xBD\xD0\xBE\xD0\xB5 \xD1\x83\xD0\xBF\xD1\x80\xD0\xB0\xD0\xB2\xD0\xBB\xD0\xB5\xD0\xBD\xD0\xB8\xD0\xB5, OU=\xD0\xA6\xD0\xA2\xD0\xA3, OU=user, OU=baza, CN=bany
ID: 6c652d2130343132213034343521303433652130343334213034343121303433652d35323432335f45
...
Пробуем сменить PIN код на токене Esmart.
# pkcs11-tool -Ol --module /usr/lib64/pkcs11/libisbc_pkcs11_main.so
Using slot 0 with a present token (0x1)
Logging in to "ESMART Token".
Please enter User PIN:
....
Сменить PIN код на токене (смарткарте) Esmart
# pkcs11-tool --change-pin --module /usr/lib64/pkcs11/libisbc_pkcs11_main.so
Using slot 0 with a present token (0x1)
Please enter the current PIN:
...
Инициализация токена Esmart.
Вся предыдущая информация стирается.
# pkcs11-tool --init-token --label EsmartToken --module /usr/lib64/pkcs11/libisbc_pkcs11_main.so
Заключение.
Во многих ИТ структурах, особенно в государственных учреждениях, применяются меры безопасности при работе с информацией личного характера или носящих в себе сведения персональных данных ,включающие разные уровни защиты от использования сведений не предназначенных для просмотра посторонними лицами, в том числе относящиеся к коммерческой и государственной тайне. Для идентификации пользователя на рабочей станции применяется контролер, считыватель и смарт-карта с чипом или заменяющий считыватель и карту USB носитель. В любом случае на карте или USB носителе записывается информация, которая идентифицирует пользователя на ПК, сверяя электронный отпечаток владельца с тем который хранится в центре сертификации предприятия. Такая схема применяется повсеместно, не смотря на то, какие сведения обрабатываются на этом ПК. Безусловно дополнительный контролер и алгоритм проверки уменьшает скорость работы рабочей станции. Администратору приходится маневрировать, искать оптимальные решения и подходы, выбирать тех производителей «железа» и софта, которые поддерживают техническую совместимость устройств безопасности.
Как выбрать настроить NTP сервер Linux
Служба NTP является важной составляющей в системе организации работы ИТ предприятия, развёрнутых на Windows и Linux. Серию статей посвящённых обзору использования NTP, на примере дистрибутива ALT Linux, подготовлены на сайте https://kabtim-t.ru. В статьях рассказывается о установке и работе основных NTP служб для синхронизации точного времени; ntpd, openntpd, chronyd.