SSH-интерфейс с PTY
Предисловие
Сервер ClickHouse позволяет подключаться к себе напрямую по протоколу SSH. Можно использовать любой клиент.
После создания пользователя базы данных, идентифицируемого с помощью SSH‑ключа:
Этот ключ позволяет подключиться к серверу ClickHouse. При этом будет открыт псевдотерминал (PTY) с интерактивным сеансом clickhouse-client.
Также поддерживается выполнение команд по SSH в неинтерактивном режиме:
Конфигурация сервера
Чтобы включить SSH-сервер, необходимо раскомментировать или добавить следующий раздел в config.xml:
Ключ хоста является неотъемлемой частью протокола SSH. Открытая часть этого ключа хранится в файле ~/.ssh/known_hosts на стороне клиента и обычно используется для предотвращения атак типа «man-in-the-middle». При первом подключении к серверу вы увидите сообщение, показанное ниже:
На самом деле это означает: "Вы хотите запомнить открытый ключ этого хоста и продолжить подключение?".
Вы можете передать SSH‑клиенту опцию, чтобы он не проверял хост:
Настройка встроенного клиента
Вы можете передавать параметры встроенному клиенту аналогично тому, как это делается для обычного clickhouse-client, но с некоторыми ограничениями.
Поскольку используется протокол SSH, единственный способ передать параметры на целевой хост — через переменные окружения.
Например, параметр format можно задать следующим образом:
Вы можете менять любые параметры на уровне пользователя таким способом и дополнительно передавать большинство обычных опций clickhouse-client (за исключением тех, которые не имеют смысла в этом режиме работы).
Важно:
Если одновременно переданы опция query и SSH‑команда, последняя добавляется в список запросов к выполнению: