Oracle Cloud Infrastructure(OCI)使用Bastion Hosts

网络安全最佳实践

Oracle建议仅为堡垒主机创建单独的公共子网,以确保将适当的安全列表分配给正确的主机。 下图显示了在每个段上配置的安全列表,用于细粒度访问控制。

Oracle Cloud Infrastructure(OCI)使用Bastion Hosts_第1张图片

Security List 1的规则设置

Oracle Cloud Infrastructure(OCI)使用Bastion Hosts_第2张图片

Security List 2的规则设置

Oracle Cloud Infrastructure(OCI)使用Bastion Hosts_第3张图片

使用ssh-agent通过堡垒主机连接

ssh-add [path_to_keyfile]

如果有“Could not open a connection to your authentication agent.”错误发生的话,请执行

eval `ssh-agent`

然后在执行

ssh-add [path_to_keyfile]

使用以下命令连接到堡垒主机可启用代理转发,并允许通过从本地计算机转发凭据登录到下一个服务器:

ssh -A opc@bastion_host

要简化SSH访问和配置,请将-J(ProxyJump)参数添加到ssh命令。 以下是ProxyJump用法的示例:

ssh -J [email protected] [email protected]

通过SSH隧道访问服务

有时SSH访问可能不足以执行任务。 在这种情况下,SSH隧道可以提供访问Web应用程序或其他侦听服务的简便方法。

SSH隧道的主要类型是本地,远程和动态。
1,本地隧道在本地环回接口上提供了一个公开端口,该端口连接到SSH服务器的IP:端口。
例如,您可以将本地端口8080连接到可从您的堡垒主机访问的web_server_ip:80,并将您的Web浏览器指向http:// localhost:8080:
 

ssh opc@bastion_host -L 8080:web_server_ip:80

2,远程隧道超出了本教程的范围,但它与本地转发相反:它将本地端口公开给进入远程服务器的连接。
3,动态隧道在本地端口上提供SOCKS代理,但连接源自远程主机。 例如,您可以在端口1080上设置动态隧道,并在Web浏览器中将其配置为SOCKS代理。 因此,您可以连接到堡垒主机中可用于私有子网的所有可用资源。

ssh opc@bastion_host -D 1080

文件传输

对于Linux客户端和服务器,您可以使用SCP通过使用SSH命令行指定的相同ProxyCommand或ProxyJump选项,通过堡垒主机安全地与主机之间传输文件。 例如:

scp -o "ProxyJump opc@bastion_host" filename opc@private_host:/path/to/file

堡垒网关

您还可以创建堡垒网关,为其后面的服务器提供基于Web的访问。
多个软件解决方案可以提供SSH Web控制台,例如shellinabox,KeyBox或Apache Guacamole。 Guacamole项目还提供对使用VNC和RDP的Windows主机的访问,以及文件传输接口,远程磁盘功能,甚至远程声音和打印支持。
Bastion网关软件提供了更容易的访问(特别是来自移动设备),可以使用任何流行的Web服务器应用程序(如Nginx或Apache)进行部署,并且可以使用LXC或Docker在容器中启动。

 

结尾!

 

 

 

 

 

 

你可能感兴趣的:(ORACLE,OCI)