我的问题是,简单地说就是
是否在端口443上配置了SSH配备的AMI?
我要问的主要原因是,尽管在IT部门工作,但我的公司会过滤除了443和80之外的所有端口,并要求我的所有连接都通过HTTP代理。
我之前通过SSH连接在使用corkscrew接受端口443上的ssh的主机上。我的一个朋友仍然可以这样做,但它涉及离开办公室或使用VPN连接到亚马逊实例,更改SSHD配置中的线路,然后重新启动SSH。
AMI是否默认完成?
答案 0 :(得分:12)
只要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
在启动后,您可以进入端口443。
这是几年前我写的一篇文章,描述了这种方法:http://alestic.com/2010/12/ec2-ssh-port-80