4

我的问题是,简单地说

是否有任何 AMI 附带在端口 443 上配置的 SSH?

我问的主要原因是,尽管我在 IT 部门工作,但我的公司过滤了除 443 和 80 之外的所有端口,并且要求我的所有连接都通过 HTTP 代理。

我之前使用corkscrew在端口 443 上接受 ssh 的主机上通过 SSH 连接。我的一个朋友仍然能够做到这一点,但它涉及离开办公室或使用 VPN 连接到亚马逊实例,更改 SSHD 配置中的线路,并重新启动 SSH。

是否有默认情况下完成此操作的 AMI?

4

1 回答 1

14

只要 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

于 2012-09-14T03:56:32.367 回答