Quando falamos de uma arquitetura básica de redes no OCI, um dos cenários mais comuns seria o uso de uma subnet privada para alocar os recursos mais críticos e que não possam estar de frente para a internet, esses recursos só podem ser acessados por uma conexão privada(VPN ou Fastconnect) ou de uma rede pública com regras configuradas.
No ultimo dia 26 a Oracle lançou um Bastion como Serviço , simplificando bastante o processo para acessar seus serviços(com ele você consegue acessar VMS e Bancos de dados por exemplo) e tirando a necessidade de ter uma VM(mesmo que Always free) apenas para isso, abaixo mostro como configurar e usar esse serviço, esse serviço fica no caminho Identity & Security -> Bastion
Requisitos
Os requisitos são bem simples, basicamente você precisa ativar a funcionalidade de Bastion no Agent da VM, como a própria documentação da Oracle aponta, se você estiver usando uma imagem da Oracle, o recurso já deve estar presente na VM, bastando você ativar o recurso:
Na parte de redes, você precisa ter uma subnet pública que vai ser apontada na criação do serviço, regras que permitam o IP do Bastion acessar a porta de destino, além de já conseguir especificar quais ips estão permitidos a concluir essa conexão, um outro ponto é qual o TTL (por quanto tempo a conexão vai existir) da conexão, o tempo minimo é de 30 minutos e o máximo de 3 horas.
Depois que o Bastion está criado, precisamos criar uma Sessão (a conexão propriamente dita), aqui somos apresentados aos dois tipos disponíveis:
Managed SSH Session
Usamos essa opção quando vamos acessar a porta 22 da instância/serviço, além disso para que ela funcione, o serviço a ser acessado precisa estar rodando o OpenSSH Server com a porta 22 configurada (nas opções avançadas do Bastion você consegue alterar isso) e vamos inserir uma chave temporária para um usuário que exista na VM, além disso na parte de Advanced options você pode selecionar para qual VM/Serviço essa conexão vai apontar:
SSH Port forwarding session
Aqui as coisas começam a ficar interessantes, imagina que o acesso seja para uma VM Windows, com essa opção vamos criar um túnel para o Serviço/VM de destino, sendo assim podemos acessar qualquer porta que a máquina esteja escutando/publicando, aqui o que muda para o outro método é que especificamos o IP e a porta já na configuração principal:
Conectando
Após preencher todas a telas, basta copiar a string de conexão, editar ela apontando para a sua chave e usar o seu programa favorito para abrir o tunel, aqui estou usando o Powershell do windows:
Histórico
Caso queira acompanhar as sessões que foram criadas ou as que estão ativas, existe uma tela de histórico:
É isso pessoal, espero que tenham gostado desse novo recurso do OCI e qualquer duvida podem me contactar 🙂