Túnel SSH com encaminhamento

As etapas a seguir descrevem como configurar a conectividade com um banco de dados de origem usando um túnel SSH encaminhado.

Etapa 1: escolher o host em que o túnel será encerrado

A primeira etapa para configurar o acesso ao túnel SSH para seu banco de dados é escolher o host que será usado para encerrar o túnel. O túnel pode ser encerrado no host do banco de dados ou em um host separado (o servidor do túnel).

Usar o servidor de banco de dados

O encerramento do túnel no banco de dados tem a vantagem da simplicidade. Como há um host a menos envolvido, não há máquinas adicionais e os custos associados. A desvantagem é que seu servidor de banco de dados pode estar em uma rede protegida que não tem acesso direto da Internet.

Usar um servidor de túnel

O encerramento do túnel em um servidor separado tem a vantagem de manter o servidor de banco de dados inacessível na Internet. Se o servidor do túnel for comprometido, será removido apenas uma etapa do servidor de banco de dados. Recomendamos remover todo o software e os usuários não essenciais do servidor do túnel e monitorá-lo de perto com ferramentas como um sistema de detecção de intrusões (IDS).

O servidor do túnel pode ser qualquer host Unix ou Linux que:

  1. Pode ser acessado pela Internet usando SSH.
  2. Pode acessar o banco de dados.

Etapa 2: criar uma lista de permissões de IP

A segunda etapa da configuração do acesso do túnel SSH ao seu banco de dados é permitir que o tráfego de rede atinja o servidor de túnel ou o host de banco de dados usando SSH, que geralmente está na porta TCP 22.

Permita o tráfego de rede de cada um dos endereços IP da região em que os recursos do Datastream são criados.

Etapa 3: usar o túnel SSH

Forneça os detalhes do túnel na configuração do perfil de conexão. Para mais informações, consulte Criar um perfil de conexão.

Para autenticar a sessão do túnel SSH, o Datastream requer a senha da conta de túnel ou uma chave privada exclusiva. Para usar uma chave privada exclusiva, use as ferramentas de linha de comando OpenSSH ou OpenSSL para gerar chaves.

O Datastream armazena a chave privada com segurança como parte da configuração do perfil de conexão do Datastream. Você precisa adicionar a chave pública manualmente ao arquivo ~/.ssh/authorized_keys do Bastion Host.

Gerar chaves privada e pública

É possível gerar chaves SSH usando o seguinte método:

  • ssh-keygen: uma ferramenta de linha de comando do OpenSSH para gerar pares de chaves SSH.

    Flags úteis

    • -t: especifica o tipo de chave a ser criada, por exemplo:

      ssh-keygen -t rsa

      ssh-keygen -t ed25519

    • -b: especifica o comprimento da chave a ser criada, por exemplo:

      ssh-keygen -t rsa -b 2048

    • -y: lê um arquivo privado no formato OpenSSH e imprime uma chave pública OpenSSH na saída padrão.

    • -f: especifica o nome do arquivo de chave, por exemplo:

      ssh-keygen -y [-f KEY_FILENAME]

    Para mais informações sobre flags compatíveis, consulte a documentação do OpenBSD.

É possível gerar uma chave PEM privada usando o seguinte método:

  • openssl genpkey: uma ferramenta de linha de comando do OpenSSL para gerar uma chave privada PEM.

    Flags úteis

    • algorithm: especifica o algoritmo de chave pública a ser usado, por exemplo:

      openssl genpkey -algorithm RSA

    • -out: especifica o nome do arquivo em que a chave será gravada. Por exemplo:

      openssl genpkey -algorithm RSA -out PRIVATE_KEY_FILENAME.pem

    Para mais informações sobre flags aceitas, consulte a documentação do OpenSSL.

A seguir