ssh配置秘钥免密登录远端服务器

一. 如何在远端服务器创建一个sudo用户

1.在服务器新建一个用户
sudo useradd yuanyuan

2.修改用户权限的配置文件 /etc/sudoers 的权限
(1) [work@localhost ~]$ ll /etc/sudoers
-r–r-----. 1 root root 4356 10月 31 08:34 /etc/sudoers
**看到只有只读的权限

(2)添加可编辑w权限如下:**
[work@localhost ~]$ sudo chmod +w /etc/sudoers # 修改文件夹权限之后才能改

(3)添加用户如下(第3行所示) 那么新加用户也有sudo权限了
root ALL=(ALL) ALL
work ALL=(ALL) NOPASSWD:ALL
yuanyuan ALL=(ALL) NOPASSWD:ALL

3. 将/etc/sudoers文件的权限改回去
[work@localhost ~]$ sudo chmod -w /etc/sudoers

4. 查看系统有哪些sudo用户
cat /etc/sudoers

二. 如何ssh直接免密登录到特定的用户所在的远端服务器

1. 本地生成密钥对:ssh-keygen -t rsa

-t 按照什么加密方式 加密方式选 rsa|dsa均可以,默认dsa
-f 生成到哪个文件夹下,包括名称
实际执行: .ssh ssh-keygen -t rsa -f ~/.ssh/yy

生成公钥pub和私钥如下:
-rw------- 1 yuanyuan staff 1.8K 12 2 20:19 yy
-rw-r–r-- 1 yuanyuan staff 426B 12 2 20:19 yy.pub

2. 本地配置config 配置私钥

在本地 ~/.ssh 下编辑: vim config 添加内容如下:
Host yy (ssh连接的名称,自定义)
HostName .... (远端服务器的IP地址)
Port 22 (默认端口号)
User yuanyuan (即将登陆的远程服务器上的用户)
identityFile ~/.ssh/yy (本地的私钥地址)

3. 远程服务器配置公钥

(1)修改 ~/.ssh 文件夹的权限为 700
.ssh目录为700权限 $ chmod 700 -R .ssh

(2)在.ssh 文件夹下创建 authorized_keys 文件,修改权限为600
原来的文件:
-rw-------. 1 yuanyuan yuanyuan 833 12月 2 07:20 authorized_keys
修改: chmod 600 authorized_keys

3)将步骤1生成的wyy.pub 内容复制到 authorized_keys中,注意: 一定不要有多余的空格或者其他字符 秘钥一旦污染 很难找出问题

4. 命令直接登录远端服务器

以上执行完毕后,在本地输入 ssh yy ,即可以登录到远端服务器,且是以2中设置的 User 的身份

注意:要特别注意文件夹和文件的权限问题!!!!:
文件authorized_keys 必须为600权限 :chmod 600 authorized_keys
文件夹.ssh目录必须为700权限 : $ chmod 700 -R .ssh

要保证.ssh和authorized_keys都只有用户自己有写权限(注意:并不是权限越大就什么就可以,要保证安全问题),否则验证无效,这样做是为了不会出现系统漏洞。

1.如何查看公钥和私钥是否匹配

1 用私钥文件生成对应的公钥
ssh-keygen -y -e -f .ssh/id_rsa
2 查看公钥与第1步中的输出公钥是否相同

cat /etc/.ssh/id_rsa.pub

2. 查看两个文件内容是否一样,用md5sum

md5sum 文件名
安装md5sum : brew install md5sha1sum

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值