linux - 我在 ssh 中批量执行了一个权限命令,现在我被锁定了
问题描述
我在 aws ssh 终端中工作。我一直被拒绝写入很多文件的权限,这让我很烦。我尝试在 vscode 远程的根目录中执行此命令:
chmod -R o+rw .
它对日志中的许多文件运行命令。然后过了一会儿它停止响应。我尝试重新登录,但它给了我这个错误:
kex_exchange_identification: Connection closed by remote host
Connection closed by (host ip address) port 22
我的一位远程同事似乎可以访问,但我和我的内部同事(由同一用户工作)无法连接。我们已经尝试连接到终端上的其他用户,但没有响应。
解决方案
首先很抱歉您被锁定了,请确保您的朋友没有退出机器。
从错误信息
kex_exchange_identification:连接被远程主机关闭
当所有人都可以读取私钥(文件)时会发生这种情况,即具有错误的权限。
你通过命令做的
chmod -R o+rw .
所以/etc/ssh/下面的文件通常需要有600 个权限
ssh_host_key
ssh_host_dsa_key
ssh_host_rsa_key
除此之外,您的authorized_keys文件也可能存在问题
chmod 700 /root/.ssh
chmod 600 /root/.ssh/authorized_keys
restorecon -R -v /root/.ssh
在这个问题中,add-a-public-key-to-ssh-authorized-keys-does-not-log-me-in-automatically有很多选项可以尝试。
如果没有任何效果,启动另一个 EC2 实例并将这个有问题的实例作为另一个卷安装在新启动的机器上,至少您将能够获取您的代码/数据。
推荐阅读
- linux - yum 更新显示已安装的软件包版本
- javascript - 我的 aws Lambda 函数是否有任何错误?
- sql - 当时间范围在两天之间时如何获取特定时间范围内的记录
- python - 给定一个非空整数数组 nums,每个元素出现两次,除了一个。找到那个单一的
- ansible - 引号的 Anisble Yaml 文件格式
- html - 动画网格列:强制到屏幕边框
- c++ - 为自定义 PyTorch 激活函数启动正确数量的 CUDA 块
- xamarin - 为什么我在 iOS 中的 PhoneDialer.Open 中出现 FeatureNotSupported 异常,但在 Xamarin Forms 中的 Android 中工作正常?
- php - 如何在 Codeigniter 中获取特定的行数据
- wpf - 为 Web-API 和 WPF 客户端 APP 使用一个 AAD 应用注册