在Kali Linux上设置SSH服务的公钥认证是一种增强安全性的有效方法,与传统的密码认证相比,公钥认证提供了更高级别的安全保障,因为它不依赖于容易被破解的静态密码,而是使用一对非对称加密的密钥(公钥和私钥)进行身份验证。
以下是在Kali Linux上设置SSH服务以使用公钥认证的详细步骤:
1. 安装OpenSSH服务器
确保你的Kali Linux系统已经安装了OpenSSH服务器,如果没有,请打开终端并运行以下命令来安装:
sudo apt update sudo apt install opensshserver
2. 生成密钥对
在客户端机器上,你需要生成一个SSH密钥对,如果你还没有密钥对,可以使用sshkeygen
命令来创建一个,运行以下命令启动密钥生成过程,并按照提示操作:
sshkeygen t rsa
这将创建两个文件:id_rsa
(私钥)和id_rsa.pub
(公钥),默认情况下,它们会被保存在你的用户主目录的.ssh
文件夹中。
3. 复制公钥到服务器
将你的公钥(id_rsa.pub
)复制到Kali Linux服务器上,你可以使用scp
命令安全地复制文件:
scp ~/.ssh/id_rsa.pub username@kali:~/
其中username
是你的Kali Linux服务器上的用户名,kali
是服务器的IP地址或主机名。
4. 登录到Kali Linux服务器
使用SSH登录到Kali Linux服务器:
ssh username@kali
5. 创建.ssh
目录和authorized_keys
文件
确保在Kali Linux服务器上的用户主目录中存在.ssh
目录,并且该目录具有正确的权限,如果.ssh
目录不存在,请创建它:
mkdir ~/.ssh chmod 700 ~/.ssh
在.ssh
目录下创建authorized_keys
文件:
touch ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys
6. 添加公钥到authorized_keys
现在,将你从客户端复制过来的公钥内容追加到authorized_keys
文件中:
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys
7. 禁用密码认证(可选)
为了强制使用公钥认证,你可以编辑sshd_config
文件来禁用密码认证,使用文本编辑器打开sshd_config
:
sudo nano /etc/ssh/sshd_config
找到以下行并进行相应的更改:
#PasswordAuthentication no PubkeyAuthentication yes
取消对PasswordAuthentication
行的注释,并将其设置为no
,同时确保PubkeyAuthentication
行被设置为yes
。
8. 重启SSH服务
保存sshd_config
文件的更改并退出编辑器,重启SSH服务以应用更改:
sudo systemctl restart ssh
9. 测试公钥认证
现在,尝试从客户端使用SSH连接到Kali Linux服务器,如果一切设置正确,你应该能够无密码登录:
ssh username@kali
上文归纳
通过完成上述步骤,你已经在Kali Linux上成功设置了SSH服务的公钥认证,这种方法不仅提高了安全性,还简化了登录过程,因为不再需要输入密码,记住,保持私钥的安全至关重要,不要将其泄露给任何人。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/532089.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复