0%

aws | 修改 SSH 端口忘记打开防火墙

最近干了一个傻逼事,修改了 ssh 端口,但是,新端口没有在防火墙上打开。

导致服务器连不上了。

这里有两个方案。

方案一

点击相关实例,然后连接。

只有串行才不用 ssh,其他连接都需要 ssh。但是,串行需要服务器提前有账户和密码。

方案二

具体步骤:

在亚马逊云控制台将原有服务器实例(THLM)停止(注意不是终止啊),刷新直到状态显示 已停止

新建一个服务器实例名字叫 TMP (啥配置都行,最好选择和你原来机器同一区域网络的机器)。

在左边的导航栏里找到 Elastic Block Store下面的

勾选挂接到原服务器 (THLM) 实例的卷(在卷的附加资源上能看到具体属于哪个实例,默认硬盘挂载到 /dev/sda1)。点击右上角 操作 -> 分离卷,直到刷新后卷状态显示为 可用

再次勾选这个卷,操作 -> 挂载卷,实例选择新服务器(TMP)挂载卷(过载的时候,让你选择一个路径,这个随便选一个能用的就行)。

进入新服务器实例的远程终端,输入 lsblk

出现

可用看到一个未挂接的磁盘(nvme1n1),可以通过磁盘大小来区分是不是原来服务器上的磁盘,mountpoints 为空的就是没有挂载。

挂接此卷下的文件系统

1
2
$ mkdir mydisk
$ sudo mount -t ext4 /dev/nvme1n1p1 mydisk

修改防火墙配置文件

1
sudo vi mydisk/etc/ufw/ufw.conf

注意一定是上面的打开方式,而不是

1
2
cd mydisk/etc/ufw
sudo vim ufw.conf

这种方式,打开的还是新机器上的配置,不知道为啥。

ENABLED=yes 改为 ENABLED=no,保存。

卸载卷

1
sudo umount /dev/nvme1n1p1

将卷从新服务器实例分离后挂接回原服务器实例

回到亚马逊云控制台:

  • 在左边的导航栏里找到 Elastic Block Store 下面的
  • 勾选挂接到原服务器实例的卷
  • 右上角 操作 -> 分离卷
    刷新后卷状态显示为 可用
  • 再次勾选这个卷,操作 -> 挂载卷
    • 实例选择 THLM
    • 设备名称:/dev/sda1
  • 挂载卷

回到 实例,选择原服务器,实例状态->启动现有实例。

请我喝杯咖啡吧~