Centos配置ssh密钥登录

Centos使用密钥登录,既安全又快捷,还免了每次输密码错误的烦恼,下面,我们就来进行吧:

ssh-keygen是产生、管理和转化ssh验证密钥的命令,ssh分为v1和v2版,v1版不建议使用,它有很多弱点漏洞,并且也没有v2的一些高级功能 。 

1、客户端生成密钥对,一个私钥,一个公钥,pub后缀的是公钥。一些远程工具也能生成。

# ssh-keygen -t [dsa | ecdsa | ed25519| rsa | rsa1] -b 2048 -f keyname -m keymode

ssh-keygen默认产生v2版本的2048位的rsa密钥对,名为id_rsa和id_rsa.pub,位于~/.ssh下面,如果没有这个目录,你可以建立这个目录,或者用-f 选项来指定文件保存位置。

-p 用于更改密钥的口令

-l keyname 用于查看key的指纹

-b bits 密钥长度(RSA最小值为1024,默认为2048;DSA必须为1024;ECDSA必须 为256|284|512,通过从三个椭圆之一中选择密钥长度

-e 打印(导出)密钥,默认格式为RFC4716,可以用-m指定格式

-V  validity_interval 有效时间间隔

-c comment 对于 RSA1 密钥和以较新的 OpenSSH 格式存储的密钥,key 文件可以加入一个注释字段,仅用于帮助用户区别key。 comment可以告诉钥匙是干什么用的,或者什么有用的。comment创建密钥时初始化为“user@host”,但可以用 -C选项更改

-a number 用于指定 KDF(key derivation function)的数量数字越大,则破解难度越高

-B 显示bubblebabble摘要,可以参考:CTF杂项之BubbleBabble加密算法_digupang7059的博客-CSDN博客

-z serial_number 指定要嵌入证书中的序列号,cate将此证书与其他证书区分开来相同的CA。默认序列号为零。

2、上传客户端生成的公钥文件,如id_rsa_2048.pub上传到服务端的~/.ssh下面,如果没有此目录,可以自己建。(~是指当前用户的目录环境,目录名前加个 . 的意思是隐藏目录,可以用ll -a显示出来)

3、将公钥文件写入到~/.ssh/authorized_keys 文件里:

cat .ssh/id_rsa_2048.pub >>authorized_keys

给目录和文件加权限加固一下:

chmod 500 ~/.ssh

4、修改配置文件并重启sshd服务:

# vi /etc/ssh/sshd_config
HostKey /etc/ssh/ssh_host_rsa_key
#HostKey /etc/ssh/ssh_host_dsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key

PubkeyAuthentication yes
AuthorizedKeysFile      .ssh/authorized_keys
PasswordAuthentication no
systemctl restart sshd
5、然后可以连了,查看ssh登录日志:
tail /var/log/secure
Oct  7 20:52:16 localhost sshd[1837]: pam_unix(sshd:session): session opened for user root by (uid=0)
最后,为安全起见,最好禁止root用户直接登录。
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值