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-команда, SSH-команда добавляется в список запросов на выполнение: