最近干了一个傻逼事,修改了 ssh 端口,但是,新端口没有在防火墙上打开。
导致服务器连不上了。
这里有两个方案。
方案一
点击相关实例,然后连接。

只有串行才不用 ssh,其他连接都需要 ssh。但是,串行需要服务器提前有账户和密码。
方案二
具体步骤:
在亚马逊云控制台将原有服务器实例(THLM)停止(注意不是终止啊),刷新直到状态显示 已停止。
新建一个服务器实例名字叫 TMP (啥配置都行,最好选择和你原来机器同一区域网络的机器)。
在左边的导航栏里找到 Elastic Block Store下面的 卷
勾选挂接到原服务器 (THLM) 实例的卷(在卷的附加资源上能看到具体属于哪个实例,默认硬盘挂载到 /dev/sda1)。点击右上角 操作 -> 分离卷,直到刷新后卷状态显示为 可用。
再次勾选这个卷,操作 -> 挂载卷,实例选择新服务器(TMP)挂载卷(过载的时候,让你选择一个路径,这个随便选一个能用的就行)。
进入新服务器实例的远程终端,输入 lsblk
出现

可用看到一个未挂接的磁盘(nvme1n1),可以通过磁盘大小来区分是不是原来服务器上的磁盘,mountpoints 为空的就是没有挂载。
挂接此卷下的文件系统
1 | $ mkdir mydisk |
修改防火墙配置文件
1 | sudo vi mydisk/etc/ufw/ufw.conf |
注意一定是上面的打开方式,而不是
1 | cd mydisk/etc/ufw |
这种方式,打开的还是新机器上的配置,不知道为啥。
将 ENABLED=yes 改为 ENABLED=no,保存。
卸载卷
1 | sudo umount /dev/nvme1n1p1 |
将卷从新服务器实例分离后挂接回原服务器实例
回到亚马逊云控制台:
- 在左边的导航栏里找到
Elastic Block Store下面的卷 - 勾选挂接到原服务器实例的卷
- 右上角
操作->分离卷
刷新后卷状态显示为可用 - 再次勾选这个卷,
操作->挂载卷- 实例选择
THLM - 设备名称:
/dev/sda1
- 实例选择
- 挂载卷
回到 实例,选择原服务器,实例状态->启动现有实例。