ssh无法连接到服务器中的root用户

本文讲述了作者在Linux中尝试使用scp命令时遇到的问题,因误删除openssh-client导致无法连接root用户。文章详细描述了问题解决过程,包括ssh的root登录限制以及如何修改sshd_config配置。

背景

今天又摊上大事了,每次使用linux系统准没好事发生。原本今天想用一台服务器机子使用scp命令将后缀165服务器上的文件发送给164服务器,可是奈何164服务器上没有scp命令,而且按照网上说的使用 apt install openssh-client 下载也没用,因为电脑里已经有openssh-client。于是乎我想到了一招妙计(bushi),把原有的openssh-client删除。原本删除文件使用两种方式:

apt remove package 移除软件包

apt purge package 移除软件包及配置文件

我很激进地选择了第二种方案,于是乎openssh-client中的配置文件成功被我删除了,当时也没有想那么多,输入命令scp时也有了。我以为我成功了,可是在之后我想使用ssh连接服务器的root用户时,发现出问题了。报错 Access denied。

解决方案

ssh默认是不能远程连接root用户的,这是为了保护安全。然后现在只能修改配置文件了,步骤如下:

sudo vi /etc/ssh/sshd_config

把PermitRootLogin prohibit-password 修改为 PermitRootLogin yes

但是我现在遇到的死局就是无法使用root用户来修改文件,而且我还没办法使用ssh连接root用户,真的是套娃呀。

解决方案原文链接:https://blog.youkuaiyun.com/newton_liu/article/details/134419029

### 配置 VSCode Remote-SSHroot 用户连接服务器 要通过 VSCode 的 Remote-SSH 功能远程连接服务器并切换到 `root` 用户,需要进行以下步骤: 1. **安装必要的扩展** 在 VSCode 中安装 `Remote - SSH` 扩展,它支持通过 SSH 协议连接远程服务器[^2]。 2. **配置 SSH 连接信息** 编辑 `.ssh/config` 文件,添加目标服务器连接信息。例如: ```plaintext Host your-server-name HostName 100.19.14.217 User root Port 22 ``` 此处 `User` 字段设置为 `root`,表示直接以 `root` 身份登录[^1]。 3. **设置免密登录(推荐)** 如果每次连接都需要输入密码,可以使用 `ssh-keygen` 生成密钥对,并将公钥拷贝至服务器的 `~/.ssh/authorized_keys` 文件中。具体命令如下: ```bash ssh-keygen -t rsa -b 4096 scp ~/.ssh/id_rsa.pub root@100.19.14.217:/root/.ssh/ ssh root@100.19.14.217 "cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys" ``` 完成上述操作后,即可实现免密登录[^4]。 4. **测试 SSH 连接** 在终端运行以下命令,确认是否能成功连接: ```bash ssh root@100.19.14.217 ``` 5. **在 VSCode 中连接服务器** 打开 VSCode,按下快捷键 `Ctrl+Shift+P` 或 `Cmd+Shift+P`(Mac),输入 `Remote-SSH: Connect to Host` 并选择之前配置的 `your-server-name`。此时,VSCode 将通过 SSH 连接到服务器,并以 `root` 身份打开远程工作区[^1]。 6. **解决常见问题** - 如果遇到连接超时或无法安装 VS Code 服务器的问题,可以检查网络环境、SSH 配置以及服务器资源是否正常[^5]。 - 若提示“vscode 无法重新连接”,可能是 Git 插件导致的问题,尝试使用快捷命令 `Shift+Command+P` 重新加载窗口[^3]。 --- ###
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值