ssh连接localhost失败 permission deny问题解决

本文介绍了如何确保SSH和SSHD服务已安装并运行,并讲解了如何修改配置文件,如/etc/ssh/ssh_config和/etc/ssh/sshd_config,涉及关键参数如permitrootlogin。接着,文章详细阐述了如何设置密码并进行本地连接测试,以验证SSH配置的成功。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先确认ssh 和 sshd都已经正常安装且运行

其次设置ssh和sshd的一些系统参数 基本都是修改以下这两个文件:

1、/etc/ssh/ssh_config

2、/etc/ssh/sshd_config

比如permitrootlogin  等等参数 根据网上的教程就好

然后需要设置密码

sudo passwd

输入两次密码

然后ssh localhost

成功连接

### 解决 SSH 连接时遇到的权限拒绝问题 当遇到 `Connection refused` 或者 `Permission denied (publickey)` 错误时,这通常意味着客户端无法通过公钥认证成功连接到远程服务器。以下是详细的排查和解决方法: #### 1. 检查 SSH 服务状态 确保目标机器上的 SSH 服务正在运行并监听默认端口(22)。可以通过以下命令检查: ```bash sudo systemctl status sshd ``` 如果服务未启动,则可以尝试启动它: ```bash sudo systemctl start sshd ``` #### 2. 验证防火墙设置 确认防火墙允许来自外部网络的流量到达 SSH 端口。对于基于 Linux 的系统,可使用如下命令查看当前规则集: ```bash sudo ufw status ``` 必要时添加相应规则来开放所需端口。 #### 3. 客户端配置文件调整 编辑本地用户的 `.ssh/config` 文件以指定正确的用户名、主机名以及私钥路径。例如: ```plaintext Host myserver HostName 120.0.0.11 User ubuntu IdentityFile ~/.ssh/id_rsa_myserver ``` #### 4. 添加私钥至代理程序 为了简化多账户管理流程,在每次会话开始前先加载所需的私钥入内存缓存区: ```bash eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_rsa_github_account_1 ssh-add ~/.ssh/id_rsa_github_account_2 ``` #### 5. 测试连通性 最后一步是再次发起测试性的连接请求看看是否能够正常访问: ```bash ssh -vT git@github.com ``` 此命令中的 `-v` 参数用于启用调试模式输出更多诊断信息以便进一步分析可能存在的其他潜在问题[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值