Инструкция по получению доступа к базам данных НЦСЭД
Введение
Данная инструкция описывает процесс получения доступа к базам данных Национального центра социально-экономических данных (НЦСЭД) для работы в научных и аналитических целях. Доступ предоставляется через безопасное SSH-соединение (Secure Shell), что позволяет работать с данными напрямую с компьютеров пользователей с помощью терминала или специализированных программ.
Шаг 1: Передача SSH-ключа
Для получения доступа к ряду баз данных НЦСЭД необходимо подать заявку через специальную форму. Если заявка одобрена, то следующим шагом является передача администраторам платформы публичного SSH-ключа.
SSH-ключ — это пара файлов, обеспечивающая безопасное соединение. Он включает два файла:
- Приватный ключ — секретный файл, который хранится только на компьютере пользователя
- Публичный ключ — файл, который передается в НЦСЭД для настройки доступа
Настройка SSH-ключа для пользователей Windows
1.1. Открыть PowerShell
Необходимо нажать Win + X и выбрать Windows PowerShell или Terminal.
1.2. Проверить наличие существующего ключа
Выполнить команду:
Test-Path ~/.ssh/id_ed25519.pubЕсли вывод True — публичный ключ уже существует, можно перейти к шагу 1.4.
Если вывод False — необходимо создать ключ, перейти к шагу 1.3.
1.3. Создать новый SSH-ключ для НЦСЭД
Выполнить команду (заменив your_email@example.com на реальный email):
ssh-keygen -t ed25519 -C "your_email@example.com" -f ~/.ssh/id_ed25519_nsedcСистема задаст два вопроса:
Enter passphrase (empty for no passphrase):
Рекомендуется: Ввести пароль для защиты ключа (символы не отображаются — это нормально) Альтернатива: Нажать Enter, если пароль не требуется
Enter same passphrase again:
Действие: Повторить пароль или снова нажать Enter
1.4. Скопировать публичный ключ
Вывести ключ на экран командой:
Get-Content ~/.ssh/id_ed25519_nsedc.pubНеобходимо скопировать весь текст, который начинается с ssh-ed25519 и заканчивается email.
Пример:
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJqJ... your_email@example.com
Этот текст необходимо передать администраторам платформы НЦСЭД.
Для пользователей macOS
1.1. Открыть Терминал
Найти приложение Terminal через Spotlight (Cmd + Space, набрать “Terminal”).
1.2. Проверить наличие существующего ключа
Выполнить команду:
ls ~/.ssh/id_ed25519.pubЕсли вывод показывает путь к файлу — ключ существует, перейти к шагу 1.4.
Если вывод “No such file or directory” — необходимо создать ключ, перейти к шагу 1.3.
1.3. Создать новый SSH-ключ
Выполнить команду (заменив your_email@example.com на реальный email):
ssh-keygen -t ed25519 -C "your_email@example.com" -f ~/.ssh/id_ed25519_nsedcСледовать подсказкам аналогично инструкции для Windows (шаг 1.3).
1.4. Скопировать публичный ключ
Выполнить команду:
cat ~/.ssh/id_ed25519_nsedc.pubСкопировать весь текст (от ssh-ed25519 до email).
Для пользователей Linux
1.1. Открыть терминал
Использовать стандартный эмулятор терминала.
1.2. Проверить наличие существующего ключа
ls ~/.ssh/id_ed25519.pub1.3. Создать новый SSH-ключ (если необходимо)
ssh-keygen -t ed25519 -C "your_email@example.com" -f ~/.ssh/id_ed25519_nsedc1.4. Скопировать публичный ключ
Для вывода содержимого файла в терминал используется команда cat.
Для ключа, созданного по умолчанию:
cat ~/.ssh/id_ed25519.pubДля специального ключа, созданного для НЦСЭД:
cat ~/.ssh/id_ed25519_nsedc.pubНеобходимо скопировать весь текст, который начинается с ssh-ed25519 и заканчивается email.
Пример:
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJqJ... your_email@example.com
Этот текст необходимо передать администраторам платформы НЦСЭД.
Необходимо убедиться, что копируется именно публичный ключ (файл с расширением .pub). Приватный ключ (файл без расширения) не подлежит передаче третьим лицам.
Шаг 2: Получение параметров подключения
После одобрения заявки на email будут отправлены параметры для подключения к каждой из запрошенных баз данных.
Получаемые параметры
Для каждой базы данных предоставляются следующие параметры:
- Имя пользователя для сервера (например,
z000123) - Хост прокси-сервера (например,
usergate.nsedc.ru) - Хост сервера с базой (например,
172.31.3.3) - Название базы данных (например,
justice) - Порт базы данных (например,
5432) - Имя пользователя для доступа к базе
- Пароль для доступа к базе
- Пример конфигурации SSH
Эти данные необходимо сохранить в надежном месте — они понадобятся для настройки подключения.
Шаг 3: Настройка подключения через терминал
Этот способ подходит для работы с базой данных через командную строку (например, с помощью psql для PostgreSQL).
3.1. Создать или открыть файл конфигурации SSH
Файл config хранится в специальной папке .ssh в домашней директории пользователя.
Для Windows (PowerShell)
# Проверить наличие папки .ssh
Test-Path ~/.ssh
# Если вывод False, создать папку
mkdir ~/.ssh
# Перейти в папку и открыть файл config в Notepad
cd ~/.ssh
notepad ~/.ssh/configЕсли Notepad спросит “Хотите создать новый файл?” — нажать Да.
Для macOS и Linux
# Создать папку .ssh, если её нет
mkdir -p ~/.ssh
# Открыть файл config в текстовом редакторе
nano ~/.ssh/config3.2. Добавить конфигурацию подключения
В открывшемся файле добавить конфигурацию, которая была прислана от НЦСЭД.
Пример конфигурации (необходимо заменить значения на реальные данные):
# Отключить проверку ключа хоста (упрощает первое подключение)
Host *
StrictHostKeyChecking no
# DataLake, usergate (прокси-сервер НЦСЭД)
Host usergate.user
HostName usergate.nsedc.ru
User ЛОГИН_ПОЛЬЗОВАТЕЛЯ
IdentityFile ~/.ssh/id_ed25519_nsedc
# DataLake, БД egrul (Единый государственный реестр юридических лиц)
Host egrul.user
HostName 172.31.3.9
User ЛОГИН_ПОЛЬЗОВАТЕЛЯ
IdentityFile ~/.ssh/id_ed25519_nsedc
ProxyJump usergate.user
# DataLake, БД justice (Картотека арбитражных дел)
Host justice.user
HostName 172.31.3.3
User ЛОГИН_ПОЛЬЗОВАТЕЛЯ
IdentityFile ~/.ssh/id_ed25519_nsedc
ProxyJump usergate.user
# DataLake, БД eis (Единая информационная система закупок)
Host eis.user
HostName 172.31.3.5
User ЛОГИН_ПОЛЬЗОВАТЕЛЯ
IdentityFile ~/.ssh/id_ed25519_nsedc
ProxyJump usergate.user
Значение параметров:
Host— короткое имя для подключения (можно изменить на любое удобное)HostName— адрес сервераUser— имя пользователя (например, z000001, z000002)IdentityFile— путь к приватному ключуProxyJump— подключение через прокси-серверStrictHostKeyChecking no— отключает проверку ключа хоста при первом подключении (упрощает процесс)
3.3. Сохранить файл
Windows (Notepad): Нажать Ctrl + S, затем закрыть окно.
macOS/Linux (nano): Нажать Ctrl + O (сохранить), затем Ctrl + X (выйти).
3.4. Подключиться к серверу
Теперь можно подключиться к серверу с базой данных одной командой:
ssh egrul.userПосле подключения откроется командная строка сервера.
3.5. Подключиться к базе данных
На сервере выполнить команду:
./sql_loginЭта команда автоматически подключает к базе данных с учетными данными пользователя.
Безопасность
- Никогда не передавать приватный ключ третьим лицам (
id_ed25519_nsedcбез расширения.pub) - Не публиковать приватный ключ в открытых репозиториях (GitHub, GitLab и т.д.)
- Хранить пароль от ключа в надежном месте (если он был установлен)
- Не передавать пароль от базы данных третьим лицам
Публичный ключ (файл с расширением .pub) можно свободно передавать — он не содержит секретной информации.
Успешной работы с данными НЦСЭД!