Kali Linux 默认未启用 SSH 服务,以下是2026 年最新版本的完整配置步骤,基于 systemd 初始化系统。

一、基础配置步骤

1. 安装 OpenSSH 服务器

kali终端运行:

# 更新软件包列表
sudo apt update

# 安装openssh-server
sudo apt install openssh-server -y

2. 配置 SSH 允许 root 登录(关键步骤)

Kali 默认禁止 root 用户通过密码登录 SSH,需要修改配置文件:

# 编辑sshd_config文件
sudo nano /etc/ssh/sshd_config

找到以下两行并修改(取消注释并将值改为 yes):

# 第34行左右,将prohibit-password改为yes
PermitRootLogin yes

# 第57行左右,取消注释
PasswordAuthentication yes

保存退出:按Ctrl+O,回车确认,再按Ctrl+X

# 检查关键配置行(确保没有#注释)
grep -E "PermitRootLogin|PasswordAuthentication" /etc/ssh/sshd_config

3. 启动 SSH 服务并设置开机自启

# 启动SSH服务
sudo systemctl start ssh

# 设置开机自启(核心命令)
sudo systemctl enable ssh

# 或者使用合并命令(同时启动并启用自启)
sudo systemctl enable ssh --now

4. 验证配置是否成功

# 查看SSH服务状态
sudo systemctl status ssh

成功输出应显示:

  • Active: active (running) 表示服务正在运行
  • Loaded: loaded (/lib/systemd/system/ssh.service; enabled; ...) 表示已设置开机自启

验证

现在你就可以在本机电脑上远程连接了:

使用cmd或powershell运行:

ssh root@你的KaliIP地址

密码错误解决方案:

 Kali 默认根本不让 root 用密码登录 SSH! 这是系统安全机制,不是你输错密码


核心原因

Kali 有两个关键限制:

  1. 默认 root 是锁定状态,不能直接 SSH 密码登录
  2. 即使改了 sshd_config,PAM 安全模块依然拦截 root 密码登录

所以: 你输对密码 → 系统依然拒绝 → 显示 Permission denied


最快解决方法

在 Kali 里直接复制这 3 条命令,运行完立刻就能用 kali 密码登录:

# 解除 root 锁定(最关键!)
sudo passwd -u root

# 强制设置 root 密码为 kali(确保一致)
echo "root:kali" | sudo chpasswd

# 重启 SSH
sudo systemctl restart ssh

然后再去 Windows 里试:

ssh root@此处填写kali IP
密码:kali

为什么之前不行?

因为 Kali 默认锁定 root 账户,即使你知道密码也不让登录 SSH。 你刚才看到的:

Permission denied (publickey,password)

就是这个锁定机制在拦截。

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐