基于密钥的认证机制(ssh)

网络中的两台服务器需要经常进行通信,而频繁的输入账号和密码既繁琐又不安全,所以需要使用基于密钥的认证,这种使用在服务器集群配置中非常的常用。下面以CentOS服务器系统为例简单介绍下配置方法(服务器必须安装SSH)。

1、客户端首先生成一对密钥,包括公钥和私钥

    ssh-keygen -t rsa

生成的一对密钥存放在当前用户目录下隐藏目录.ssh中,私钥叫id_rsa,公钥为id_rsa.pub

2、将生成的公钥上传到远程服务器那个需要登陆的用户家目录下隐藏目录.ssh中

    ssh-copy-id -i .ssh/id_rsa.pub [email protected]

上传成功后,远程服务器对应用户家目录下的隐藏目录.ssh中就会出现authorized_keys这个文件

3、测试

本地端就可以不使用密码而直接登陆远程服务器。

原文地址:http://blog.51cto.com/haizhibin/2090952

时间: 2024-10-08 09:26:06

基于密钥的认证机制(ssh)的相关文章

openssh远程登录服务器端和基于密钥的认证机制

ssh服务的最佳实践方案:1.更换服务端口,不要使用默认的22号端口:2.禁止使用sshv1:3.合理的设置登录用户的黑名单和白名单:4.设置空闲会话的超时时间,将其改的短一些:5.需要利用防火墙来配合设置ssh的安全访问规则:6.监听固定的IP地址而不是0.0.0.0:7.如果必须使用口令认证机制,则需要使用足够复杂的密码:~]# tr -dc A-Za-z0-9 < /dev/urandom | head -c 30 | xargs~]# openssl rand -base64 30 |

使用密钥登录CentOS系统(基于密钥的认证)

在Window客户端有多种软件可以登陆ssh,比如putty,xshelll,secureCRT,我就以xshell为例设置使用公钥和私钥验证登陆服务器. 使用Xshell密钥认证机制远程登录Linux 1.使用xshell生成公钥 Key Type 选择RSA (SSH1只支持RSA,SSH2支持请确认自己的版本)点击Next就生成公私钥了. 设置密钥名称,可以为随意,也可保持默认. Passphrase为密钥密码,如果不设置,只要拥有密钥就可以登录服务器,设置密码的话必须拥有密钥和密钥密码才

nginx 实现基于basic用户认证机制

实现基于用户的访问控制,使用basic机制进行用户认证 1,在配置文件添加如下几行配置 相关模块ngx_http_access_module server { listen 80; root /nginx/html/; location /admin/ { auth_basic "admin Area"; auth_basic_user_file /etc/nginx/.ngxpasswd; allow 192.168.68.7; deny all; } } "注意:在/ng

基于本地公钥认证实现ssh免密码登录

1.涉及到的两个命令: (1) 在客户端生成密钥对儿 ssh -t rsa [-P ''] [-f "~/.ssh/id_rsa"] (2) 把公钥传输至远程服务器对应用户的家目录 ssh-copy-id [-i [identity_file]] [[email protected]]machine 2.实验过程: [[email protected] /]#ssh-keygen -t rsa [[email protected] /]#ssh-copy-id /root/.ssh/i

ssh &nbsp; sshd &nbsp; scp &nbsp; 基于密钥认证登陆 双机互信

telnet :远程登陆 TCP/23 远程认证是明文的 :数据传输是明文的:不实用 ssh:Secure SHell TCP/22    协议 v1 v2  v1基本不使用的 实现了将认证过程加密 Openssh:是ssh的开源版 ssh不仅是一个软件,也是一种协议 ssh加密认证的机制 基于口令:默认为口令 基于密钥:事先在服务器端的用户里放入客户端的公钥,然后链接过来的时候对暗号 netstat -tnl  查看服务器端打开了等待别人访问的服务 LISTEN监听 ssh 和sshd的配置文

基于Token的WEB后台认证机制

几种常用的认证机制 HTTP Basic Auth HTTP Basic Auth简单点说明就是每次请求API时都提供用户的username和password,简言之,Basic Auth是配合RESTful API 使用的最简单的认证方式,只需提供用户名密码即可,但由于有把用户名密码暴露给第三方客户端的风险,在生产环境下被使用的越来越少.因此,在开发对外开放的RESTful API时,尽量避免采用HTTP Basic Auth OAuth OAuth(开放授权)是一个开放的授权标准,允许用户让

ssh协议及密钥的认证

ssh协议: 通过SSH连接可以远程管理Linux等设备,默认linuxssh端口是22端口.与telnet不同是,ssh是进行安全保证的. ssh的使用方式,ssh[[email protected]]host[COMMAND] ssh [-l user] host [COMMAND] exit退出. 例如 A主机的用户A1 远程登陆到B主机的用户A2 第一次连接会让你确认是否是这个服务器的公钥,yes确认后,会将其保存在A1的家目录./ssh/known_hosts 但是以后每次登陆总会让你

几种常用的服务器认证机制

OAuth 概括:OAuth是一个开放授权标准,服务器端允许用户在不给第三方软件密码和账户的前提下,让第三方软件访问一定的服务器端资源. 具体实现:OAuth允许第三方软件提供一个令牌,而不是用户名和密码来访问用户在服务器端的某些特定资源.某一个令牌授权只针对一个特定的第三方系统(例如,视频编辑软件在某一特定时间内,例如2小时,只能访问服务器端用户的某些特定资源(例如某一相册中的视频). 以下为OAuth2.0的流程: 这种基于OAuth的认证机制适用于个人消费类的互联网产品,如社交类APP等应

如何在 Linux 中配置基于密钥认证的 SSH

什么是基于 SSH 密钥的认证? 众所周知,Secure Shell,又称 SSH,是允许你通过无安全网络(例如 Internet)和远程系统之间安全访问/通信的加密网络协议.无论何时使用 SSH 在无安全网络上发送数据,它都会在源系统上自动地被加密,并且在目的系统上解密.SSH 提供了四种加密方式,基于密码认证,基于密钥认证,基于主机认证和键盘认证.最常用的认证方式是基于密码认证和基于密钥认证. 在基于密码认证中,你需要的仅仅是远程系统上用户的密码.如果你知道远程用户的密码,你可以使用 ssh