千家信息网

Linux上实现ssh免密码登陆远程服务器

发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,0.说明平常使用ssh登陆远程服务器时,都需要使用输入密码,希望可以实现通过密钥登陆而免除输入密码,从而可以为以后实现批量自动部署主机做好准备。环境如下:IP地址操作系统服务器端10.0.0.128/
千家信息网最后更新 2025年12月03日Linux上实现ssh免密码登陆远程服务器

0.说明

平常使用ssh登陆远程服务器时,都需要使用输入密码,希望可以实现通过密钥登陆而免除输入密码,从而可以为以后实现批量自动部署主机做好准备。

环境如下:


IP地址操作系统
服务器端10.0.0.128/24CentOS 6.5 x86
客户端10.0.0.129/24Ubuntu 16.04 x86




1.客户端生成密钥对


生成密钥对:

xpleaf@leaf:~$ ssh-keygen -t rsa -b 2048Generating public/private rsa key pair.Enter file in which to save the key (/home/xpleaf/.ssh/id_rsa): Created directory '/home/xpleaf/.ssh'.Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/xpleaf/.ssh/id_rsa.Your public key has been saved in /home/xpleaf/.ssh/id_rsa.pub.The key fingerprint is:SHA256:eLssyXJLzUCfSN5mu6nqNH9dB/gOyXSvWBwQdNssIYE xpleaf@leafThe key's randomart p_w_picpath is:+---[RSA 2048]----+|         o=oo    ||        E .o =   ||      o    oo o  ||     + = .o +.   ||      = So = +   ||       B o+ = o  ||    o...=. * o   ||   ..+=..+o o    ||   .o++==        |+----[SHA256]-----+

查看生成的密钥对:

xpleaf@leaf:~$ ls .sshid_rsa  id_rsa.pub# id_rsa为私钥,这个一般需要保密;id_rsa.pub为公钥,这个可以公开。




2.上传公钥到服务器端


使用scp命令操作:

xpleaf@leaf:~$ scp .ssh/id_rsa.pub root@10.0.0.128:/rootThe authenticity of host '10.0.0.128 (10.0.0.128)' can't be established.RSA key fingerprint is SHA256:0Tpm11wruaQXyvOfEB1maIkEwxmjT2AklWb198Vrln0.Are you sure you want to continue connecting (yes/no)? yesWarning: Permanently added '10.0.0.128' (RSA) to the list of known hosts.root@10.0.0.128's password: id_rsa.pub                                                    100%  393     0.4KB/s   00:00




3.服务器端操作


把从客户端传来的公钥添加到.ssh/authorized_keys中:

[root@leaf ~]# cat id_rsa.pub >> .ssh/authorized_keys[root@leaf ~]# chmod 600 .ssh/authorized_keys# authorized_keys的权限需要为600

修改ssh配置文件/etc/ssh/sshd_config,找到下面一行:

PubkeyAuthentication no

修改为:

PubkeyAuthentication yes




4.测试


在客户端上使用密钥登陆到服务器上:

xpleaf@leaf:~$ ssh -i .ssh/id_rsa root@10.0.0.128Last login: Tue May  9 15:14:01 2017 from 10.0.0.129[root@leaf ~]#




5.注意事项


  • 在服务器端需要把selinux关闭,否则最后无法使用密钥进行远程登陆;

  • 客户端使用scp命令时,在服务器端也需要安装ssh客户端,否则无法把公钥上传到服务器端,另外也可以使用ssh-copy-id root@10.0.0.128来代替scp操作(这样在服务器端也不需要执行创建.ssh目录等这些操作,即相当于该命令可以一步帮我们完成密钥的上传与配置工作);



服务器 服务 密钥 客户 客户端 登陆 公钥 命令 生成 密码 输入 配置 平常 操作系统 一行 主机 事项 地址 文件 权限 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 上海市计算机软件开发中心闵行 数据库中学生学号是什么意思 hp 服务器管理 it软件开发要多少学历 结构力学数据库编程 单机游戏服务器关闭了还能玩吗 通信与网络技术基础 天下3服务器名字 射频技术属于无线网络技术吗 杭州手机打车软件开发 关于计算机网络技术方面的网站 信息化服务器管理 服务器端口怎么修改 我的世界永久免费的云服务器 哪所高校有私募通数据库 足球小说软件开发 茂名市桓捷互联网科技 盈信世嘉网络技术公司 我的世界七龙珠服务器2021 数据库标准要素代码命名 长沙旅游哪里学电脑软件开发好 思政大讲堂主题班会网络安全 在服务器里面如何搭建游戏后台 联想电脑网络服务器无法连接 沈阳酒店软件开发公司 呼市新华互联网科技学校多大 新一代光网络技术叫 数据库 相关英语怎么说 生产企业的数据库系统设计 魔兽世界服务器人口查询 赛季服
0