我的问题是,简单地说
是否有任何 AMI 附带在端口 443 上配置的 SSH?
我问的主要原因是,尽管我在 IT 部门工作,但我的公司过滤了除 443 和 80 之外的所有端口,并且要求我的所有连接都通过 HTTP 代理。
我之前使用corkscrew在端口 443 上接受 ssh 的主机上通过 SSH 连接。我的一个朋友仍然能够做到这一点,但它涉及离开办公室或使用 VPN 连接到亚马逊实例,更改 SSHD 配置中的线路,并重新启动 SSH。
是否有默认情况下完成此操作的 AMI?
我的问题是,简单地说
是否有任何 AMI 附带在端口 443 上配置的 SSH?
我问的主要原因是,尽管我在 IT 部门工作,但我的公司过滤了除 443 和 80 之外的所有端口,并且要求我的所有连接都通过 HTTP 代理。
我之前使用corkscrew在端口 443 上接受 ssh 的主机上通过 SSH 连接。我的一个朋友仍然能够做到这一点,但它涉及离开办公室或使用 VPN 连接到亚马逊实例,更改 SSHD 配置中的线路,并重新启动 SSH。
是否有默认情况下完成此操作的 AMI?
只要 AMI 支持在实例首次启动时运行的用户数据脚本,您就可以使用标准 EC2 实例在 80 或 443 等备用端口上运行 sshd。Amazon Linux 和 Ubuntu AMI 都支持 CloudInit。
例如,您可以使用以下用户数据启动 Ubuntu EC2 实例:
#!/bin/bash -ex
perl -pi -e 's/^#?Port 22$/Port 443/' /etc/ssh/sshd_config
service sshd restart || service ssh restart
启动后,您可以通过 ssh 访问 443 端口。
这是我几年前写的一篇描述这种方法的文章:http: //alestic.com/2010/12/ec2-ssh-port-80