centos7配置SSH免密码登录

本文详细介绍了如何在CentOS7系统中配置SSH免密码登录,包括生成公钥和私钥、修改SSH配置文件、设置authorized_keys文件权限等步骤,适用于需要在多台机器间进行高效远程管理的场景。

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

centos7配置SSH免密码登录

最近因为备份需要配置机器之间可以ssh免密码登录,之前也没有做过就看下网上的教程 结果看的稀碎 写的乱七八糟 参考这个centos免密码登录authorized_keys需要600权限 写下自己从头开始配置的步骤和经过。

需求 :A机器想要ssh登录到B机器上。

SSH原理学习Hadoop第五课(配置ssh免密码登陆配置和ssh原理)
在这里插入图片描述

A就是客户端 B就是服务器首先要在客户端A上操作如下:

配置ssh配置文件

[root@localhost mysql]# vim /etc/ssh/sshd_config

在这里插入图片描述
将这三个配置打开 并进行对应的配置 全为yes

重启ssh服务

[root@localhost mysql]# systemctl status sshd.service
sshd.service - OpenSSH server daemon
   Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled)
   Active: active (running) since 三 2018-10-10 15:20:32 CST; 2 weeks 6 days ago
 Main PID: 1263 (sshd)
   CGroup: /system.slice/sshd.service
           └─1263 /usr/sbin/sshd -D

10月 25 15:47:57 localhost.localdomain sshd[20598]: pam_succeed_if(sshd:auth): requirement "uid >= 1000" not met by user "root"
...

配置ssh服务开机自启动


[root@localhost mysql]# systemctl enable sshd.service

在A客户端上生成公钥和私钥:


[root@localhost mysql]#  ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
...

拷贝及配置方案1:

ssh-copy-id -i ~/.ssh/id_rsa.pub root@要拷贝到的机器ip

输入远程机器密码,即可完成ssh配置。

拷贝及配置方案2

拷贝公钥到B机器上

方式2:

[root@localhost .ssh]# scp /root/.ssh/id_rsa.pub root@192.168.1.1:/root/id_rsa.pub
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.1.1' (ECDSA) to the list of known hosts.
root@192.168.1.1's password: 
id_rsa.pub                                                                                                 100%  408     0.4KB/s   00:00    

这里两点说明
1.关于scp /root/.ssh/id_rsa.pub root@192.168.1.1:/root/id_rsa.pub中 /root/.ssh/id_rsa.pub就是刚才生成密匙默认存放的文件夹 Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub.生成密匙的时候也有提示信息输出 。 root@192.168.1.1:/root/id_rsa.pub部分就是B机器的 root@192.168.1.1 账户和ip ,:/root/id_rsa.pub就是放在/root路径下 文件名字叫id_rsa.pub
2.这里因为还没有配置完成 所以scp的时候还是要输入B服务器的密码的
至此 A客户端的配置就结束了,下面进行B服务端的配置:

B机器上配置ssh配置文件
[root@localhost mysql]# vim /etc/ssh/sshd_config

在这里插入图片描述
将这三个配置打开 并进行对应的配置 全为yes

创建 /root/.ssh/authorzied_keys文件夹

没有任何sshc操作的机器在root下是没有.ssh/authorzied_keys文件夹的

[root@localhost ~]# mkdir .ssh
[root@localhost ~]# cd .ssh
[root@localhost .ssh]# ls
[root@localhost .ssh]# mkdir authorzied_keys
[root@localhost .ssh]# ls
authorzied_keys

文件夹创建完成。

将从A机复制的id_rsa.pub添加到.ssh/authorzied_keys文件里
[root@localhost .ssh]# cd
[root@localhost ~]# cat id_rsa.pub >> .ssh/authorized_keys
authorized_keys 文件夹权限修改 600
[root@localhost ~]# chmod 600 .ssh/authorized_keys 

至此B机器上的配置也完成了,现在就可以用 ssh 192.168.1.1登录B服务器了。

### 如何在 CentOS 7 上设置 SSH 免密登录 #### 准备工作 为了确保能够成功配置免密码登录,在开始之前需确认已安装并启动了 OpenSSHsshd 服务。通常情况下,默认已经安装。 #### 创建公钥和私钥对 如果本地机器尚未创建过 SSH 密钥,则需要先生成一对新的 RSA 密钥: ```bash ssh-keygen -t rsa -b 4096 -C "your_email@example.com" ``` 上述命令将会提示指定保存位置(默认即可),以及输入 passphrase(可以为空)。完成后会在 `~/.ssh` 文件夹下找到两个新文件:`id_rsa`(私钥) 及其对应的公开部分 `id_rsa.pub`[^3]。 #### 将公钥复制到目标服务器 有多种方式可把客户端产生的公钥传输至远程主机,这里介绍两种常用方法之一——利用 `ssh-copy-id` 工具完成操作非常简便快捷: ```bash ssh-copy-id user@remote_host_ip_address ``` 此指令会自动连接到指定 IP 地址的目标设备,并询问当前用户的密码验证身份;一旦认证通过即刻上传 `.pub` 文件中的内容追加进对方家目录下的 `authorized_keys` 中去[^4]。 另一种手动的方式则是直接编辑远程计算机上的 `~/.ssh/authorized_keys` 文件并将本地生成的公钥粘贴进去。不过这种方式相对复杂一些,推荐初学者采用前一种方案。 #### 测试无密码访问功能 现在应该可以从源节点无需再次提供任何凭证就能顺利登陆目的端了。尝试执行如下命令检验效果: ```bash ssh user@remote_host_ip_address ``` 如果一切正常的话,此时应当可以直接进入远端 shell 而不需要重新输入密码了[^1]。 #### 安全建议 虽然实现了便捷性,但也请注意适当调整权限以保障安全性。对于 `/home/user/.ssh` 目录及其内部的所有文件来说,理想的权限设定应该是这样的: - 对于整个`.ssh`目录本身而言,应将其设为仅允许属主读写(`chmod 700 ~/.ssh`) - 授权列表文件`authorized_keys`则只需让拥有者具有读取权利就足够了 (`chmod 600 ~/.ssh/authorized_keys`) 这样既不影响正常使用又能有效防止潜在风险的发生[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AI新视界

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值