CentOS 7 SSH远程证书登陆

SSH远程证书登陆是使用"公私钥"认证的方式来进行SSH登录。

1、创建公私钥

创建方式有很多种,比如说通用ssh连接工具创建,然后把公钥上传到Server主机对应的用户目录下:

~/.ssh/authorized_keys  

大家可以参考这里:http://www.aiezu.com/system/linux/xshell_ssh_public-key_login.html

这里我使用服务器自带的openssh来创建,以root用户为例:  

//检查是否安装了openssh服务
rpm -qa|grep openssh

//创建公私钥
ssh-keygen -t rsa

  执行上边的语句后,开始进入引导设置:

Generating public/private rsa key pair.
//创建ssh目录,直接回车
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:
74:4a:c7:28:26:06:20:7d:62:40:8b:2e:fa:14:a8:1b [email protected]
The key‘s randomart image is:
+--[ RSA 2048]----+
|==.              |
|o =..    o       |
|.o oo o + +      |
|.. . o + +       |
|o..     S        |
|+  .             |
|E .              |
| =               |
|. .              |
+-----------------+

//结束

  执行上边的方法,我们的公私钥便创建完成啦,可以查看一下:

[[email protected] ~]# ls ~/.ssh/
id_rsa  id_rsa.pub

//id_rsa  id 为私钥
//id_rsa.pub 为公钥

2、服务器配置

//打开配置文件
vim /etc/ssh/sshd_config

  修改相应节点:

//启用 RSA 认证
RSAAuthentication yes
//启用公钥私钥配对认证方式
PubkeyAuthentication yes
//公钥文件路径
AuthorizedKeysFile .ssh/authorized_keys
//禁用密码登陆
PasswordAuthentication no

  通过上边的设置可以看出公钥存储在 authorized_keys 文件里,我们需要将第一步生成的公钥写入到该文件,执行以下命令:

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

  注意:非root用户至少需要授于只读权限

chmod 400 ~/.ssh/authorized_keys

  最后重启ssh服务

systemctl restart sshd.service

3、客户端配置

本地创建一个文件key.txt,下载服务端生成的私钥,打开并复制到本地key.txt文件中:

more ~/.ssh/id_rsa

  注意:复制的时候请选择 -----BEGIN RSA PRIVATE KEY-----  -----END RSA PRIVATE KEY----- 全部内容,否则无法使用,例如:

-----BEGIN RSA PRIVATE KEY-----
MIIEpgIBAAKCAQEAuUD63UpzsyrPc5YmW0VdQmF3fCqlPJmddGkVwl2V2nv7QDZX
+oUan96XfABAms3Sp2LHKQHidHPDjgs/3hfIAsB/I8gBQZJupoA6DBJ2HHhoUD7O
FG99S/YTM4nMfu3BPD6yFDMyhMjKY4Ed38WEaESG6QeFMO5EDqlvJiGjY8vnUoFe
GEm3yQn3nOtxd3XHafeDdC0bt6CELs6x50zAhtvBogoeqDWQoCtAPcm4MxgZ8+wd
f2GKdAj6fBNuAVOi/ARGVnOGma4PYgBovFlue1xIZJ4iGpVVRKTBopWZpicOiBtm
5qRzKsk5hYoR2L8WFAOYJGmdwmUs15+K9T1uqQIDAQABAoIBAQCjsRQ6N1BWz4wx
cUqBOaB3SFJhB/mru30S4MwWS8VfIlBXY+2Hcteczf4C1uI/J4Fs4G5lAMJN7gCs
4anUoCTesaNmRZM+kpptSz5/bkypSYe66FQGYKFRXqWG08s7mPA3QJrwGHEaPaYA
GJYCJbCixXKENF3vZ4oBfpu1EOIkCgQp9Gsw3TzKXtieihynwf6PBVA4gRDCA8S/
p3cEDhFJUiI/n8WG6VRd59/+4lhFL6zpX8FRVtWFshaNg60I/+DrGxzDxG+1MbkA
BTkTpMq5evVsCDz/tJyyqBZTAv8pwluwn0bxoCEXQgE2FvpjJVl5qtfarWh3z7kB
1PVcIQjVAoGBAPNPRMqrtT7uUS8OvZf/bUHug+ENeJ/5mVJS/ZWPliLcNjAqJiek
0ye+T/XQxtOqJC2P4ds4+4dSkV+8jRsB47kC9r4Aa/6MhmfifQhXrUBwc54cQ8rj
grw2BSfd5gZNqrYvaYwZOJMkTx2ljTuCNrKECHwNQwMHWtG5OTyw6NB7AoGBAMLq
iRJPorQ1dXkzm795vuNrEayj8bEOUclpoyZctDflMEilj5p7/crslImSlOHXJHry
ING5CmOJIE2GMPZAmV4UNrQRAffTpMuhPgu6YLmoKPXvQk85ArnGFImxsETTY3aX
2pW09O2EAfFLSEZfO+KtDfvjNeLgPpVObTSk3B4rAoGBAL7vyAZcNYHLN758DOEJ
O85vxOKJ1c2E7IMkSYhjA+kbcxLdINAfku0vdkRrsHxOmtF+hjmpQAp0C01cBEfb
db+sycFVR2qdEKTZolE3rOhS1wiPGcxQOjpFEkq04lyz+nG6R1QAPtuJtOSJFIpM
p2v0HUxsg9gOn4DRoE82bZ2dAoGBAKLqF0F30F1hZVu1eBNVdehtYGt06Bl+B3wa
UGRLDdK+PFosD1gnFJycmxZVrx0IjpQ4dpf0WquRPK+vXpMksUvCB2r/4C489rvA
fLSexiPHWt0casb+trmBxz7DhrowGS1RhUCl7CXttRXyP2maRdqTnGGRqkOD/Ksc
zwg2V0jbAoGBAM8MWhHmA6elQbLD3x38Kkcn2YNOrOcgqV3ihDTX6/VWkJQ9MFhC
BnygVC/bA/0P+yhsivCfmS0YR1bfeTyfftlh7aprnfRNPsiAYwgWv2HM5we0qv7o
pocCUHuflpIAQxm/mxQObFty/ie4Wrme9OcCe0ksjaJNDpOwFzLWx9oh
-----END RSA PRIVATE KEY-----

  打开xshell客户端,身份验证选择Public key方式,输入用户名,刚才我们使用的是root用户,所以这里输入root,用户密钥选择浏览,找到key.txt文件导入,密码如果刚才我们在创建密钥的时候输入了密码,那此处密码填写刚才设置的密码,如果没有设置,则不用填写。

至此,便可以连接接使用啦,安全又升级了!

文章出处:http://www.cnblogs.com/anech/p/6888979.html

时间: 2024-10-28 01:05:26

CentOS 7 SSH远程证书登陆的相关文章

centos设置ssh免密码登陆

准备工作:    1.确认本机sshd的配置文件(需要root权限) $ gedit /etc/ssh/sshd_config 找到以下内容,并去掉注释符”#“ RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile      .ssh/authorized_keys  2.如果修改了配置文件需要重启sshd服务 (需要root权限) $ /sbin/service sshd restart 配置SSH无密码登录需要3步

CentOS中SSH远程连接配置

1.配置IP #setup 选择 NetWork configuration 选择 Device configuration 选择 eth0 Use DHCP [*] 改 为 [ ]   用空格键将*去除 Static IP 输入 192.168.1.112 Netmask 输入 255.255.255.0 Default  gateway IP 输入 192.168.1.1 Primary DNS Server 输入 192.168.1.1 2.改SSH端口 vim /etc/ssh/sshd

Mac客户端CentOS服务器 SSH免密码登陆

假定有2个服务器A(127.0.0.1)和B(192.168.0.1),A作为客户端来登录服务器B 1.在服务器A下使用 ssh-keygen -t ras -P ' 会在-/.ssh目录下'生成公钥(id_rsa.public)和私钥(id_rsa) 2.将生成的公钥copy到服务器B的~/.ssh/autorized_keys中, scp  ~/.ssh/id_rsa.public [email protected]:/root/.ssh 接下来是输入服务器B的登录密码 3.登录服务器B,此

centos 配置ssh远程登录

参考博客: http://blog.csdn.net/sangjian1006/article/details/51603236 1.修改SSH配置文件/etc/ssh/sshd_config 2.在配置文件中找到 #Port 22,修改默认的端口,范围可以从1025到65536Port 9726 3.#禁止root用户登录PermitRootLogin no 4.在配置文件的末尾添加一行用来指定可以登录的用户AllowUsers ltbcdrm yuntu 5.重启SSHDsudo servi

centos局域网能够ssh登陆,远程不能登陆的解决办法?

问题现象:使用ssh登陆centos,在局域网内可以登陆,但是远程不能登陆. 做了第2步就好了. 通过添加 -v 参数(ssh -v [email protected] | scp -v file [email protected]:/tmp/)发现到SSH2_MSG_SERVICE_ACCEPT一行时会停留很久,不少于20s 网上给的解决方法大致有三种: 1)由于GSSAPI认证导致的,修改/etc/ssh/sshd_config,将对应行修改成(没有的自己添加): GSSAPIAuthent

模拟PIX804外网访问内网DMZ服务器以及ssh远程登陆

实验环境: 一台centos搭建 lnmp,做为DMZ内网服务器 swtich三层交换机连接linux web 与 pix804 router是路由连接pix与win7 ip规划 switch      vlanif 100       192.168.1.1/24     vlanif100 to DMZ linux web      eth0       192.168.1.3/24     eth0 to vlanif100 pix      Ethernet1       192.168

ssh远程连接centos

1.通过ssh协议登陆 ssh ip_address -p port------------------远程登陆指定端口号. 在xshell下新建会话,远程的登陆centOS,默认端口22. 2.远程上传和下载 scp  zou.txt  192.168.16.191:/root---------------copy当前目录下的zou.txt至远程服务器的/root下 3.生成密钥 ssh-keygen--------------------生成密钥 系统在root目录下生成.ssh隐藏文件夹,

SSH 远程登陆

2019-03-10 20:41:39 一.什么是SSH 简单说,SSH是一种网络协议,用于计算机之间的加密登录. 如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露. 最早的时候,互联网通信都是明文通信,一旦被截获,内容就暴露无疑.1995年,芬兰学者Tatu Ylonen设计了SSH协议,将登录信息全部加密,成为互联网安全的一个基本解决方案,迅速在全世界获得推广,目前已经成为Linux系统的标准配置. 需要指出的是,

mac 通过 终端 ssh 远程连接 centos 服务器

mac 通过 终端 ssh 远程连接 centos 服务器 在终端下输入 ssh -l root 204.74.*.*      就可以连接了,这是端口没变的情况,还是原来的22 ssh -p 448(你改变的端口) -l root(连接用户名) 204.74.*.*      这个是端口改变后的连接 ssh 连接的时候 Host key verification failed. ssh ssh 连接的时候 Host key verification failed. 解决方法:vi ~/.ssh