centos免密码登录 centos怎么登录
Linux免密码远程登录
Linux无密码远程登录是一种通过密钥对实现的高效安全机制,适用于在同一网段内管理Linux系统。以下是具体操作步骤:
首先,确保两台运行CentOS 6的Linux虚拟机(NAT模式)在同一网络中,如192.168.100.100和192.168.100.101。
在客户端(192.168.100.100)上,使用ssh-keygen命令生成公钥和私钥对(ssh-keygen-t rsa)。接着,将公钥添加到服务端(192.168.100.101)的authorized_keys文件中,完成公钥认证。
登录时,客户端不需输入密码,而是发送公钥给服务端。服务端确认公钥后,生成随机数R并加密。客户端使用私钥解密并参与后续的MD5加密过程,生成的摘要用于验证。如果两端生成的摘要一致,认证成功,即可实现无密码登录。
在操作中,通过菜单选择“Ctrl+ D”运行终端,然后配置两台主机的网络连接,确保它们可以互相访问。接着,分别在两台机器上生成并复制公钥,验证远程主机接收到公钥后,即可无密码登录192.168.100.101。
如何在 CentOS / RHEL 上设置 SSH 免密码登录
本文会告诉你怎样在 CentOS/RHEL上设置 SSH免密码登录。自动登录配置好以后,你可以通过它使用 SSH(Secure Shell)和安全复制(SCP)来移动文件。
SSH是开源的,是用于远程登录的最为可靠的网络协议。系统管理员用它来执行命令,以及通过 SCP协议在网络上向另一台电脑传输文件。
通过配置 SSH免密码登录,你可以享受到如下的便利:
用脚本实现日常工作的自动化。
增强 Linux服务器的安全性。这是防范虚拟专用服务器(VPS)遭受暴力破解攻击的一个推荐的方法,SSH密钥单凭暴力破解是几乎不可攻破的。
什么是 ssh-keygen
ssh-keygen是一个用来生成、创建和管理 SSH认证用的公私钥的工具。通过 ssh-keygen命令,用户可以创建支持SSH1和 SSH2两个协议的密钥。ssh-keygen为 SSH1协议创建 RSA密钥,SSH2则可以是 RSA或 DSA。
什么是 ssh-copy-id
ssh-copy-id是用来将本地公钥拷贝到远程的 authorizedkeys文件的脚本命令,它还会将身份标识文件追加到远程机器的~/.ssh/authorizedkeys文件中,并给远程主机的用户主目录适当的的权限。
SSH密钥
SSH密钥为登录 Linux服务器提供了更好且安全的机制。运行 ssh-keygen后,将会生成公私密钥对。你可以将公钥放置到任意服务器,从持有私钥的客户端连接到服务器的时,会用它来解锁。两者匹配时,系统无需密码就能解除锁定。
在 CentOS和 RHEL上设置免密码登录 SSH
以下步骤在 CentOS 5/6/7、RHEL 5/6/7和 Oracle Linux 6/7上测试通过。
节点1: 192.168.0.9节点2: 192.168.l.10
步骤1:
测试节点1到节点2的连接和访问:
[root@node1~]#ssh root@192.168.0.10
The authenticity of host'192.168.0.10(192.168.0.10)' can't be established.
RSA key fingerprint is 6d:8f:63:9b:3b:63:e1:72:b3:06:a4:e4:f4:37:21:42.
Are you sure you want to continue connecting(yes/no)? yes
Warning: Permanently added'192.168.0.10'(RSA) to the list of known hosts.
root@192.168.0.10's password:
Lastlogin:ThuDec1022:04:552015from192.168.0.1
[root@node2~]#
步骤二:
使用 ssh-key-gen命令生成公钥和私钥,这里要注意的是可以对私钥进行加密保护以增强安全性。
[root@node1~]#ssh-keygen
Generatingpublic/private rsa key pair.
Enterfilein which to save the key(/root/.ssh/id_rsa):
Enter passphrase(emptyforno passphrase):
Enter same passphrase again:
Your identification has been saved in/root/.ssh/id_rsa.
Yourpublic key has been saved in/root/.ssh/id_rsa.pub.
The key fingerprint is:
b4:51:7e:1e:52:61:cd:fb:b2:98:4b:ad:a1:8b:31:6d root@node1.ehowstuff.local
The key's randomart image is:
+--[ RSA 2048]----+
|.++|
| o o o|
| o o o.|
|. o+..|
| S..|
|....|
| o E oo.o|
|= ooo.|
|. o.o.|
+-----------------+
步骤三:
用 ssh-copy-id命令将公钥复制或上传到远程主机,并将身份标识文件追加到节点2的~/.ssh/authorized_keys中:
[root@node1~]#ssh-copy-id-i~/.ssh/id_rsa.pub 192.168.0.10
root@192.168.0.10's password:
Now try logging into the machine, with"ssh'192.168.0.10'", and check in:
.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
步骤四:
验证免密码 SSH登录节点2:
[root@node1~]#ssh root@192.168.0.10
Lastlogin:SunDec1314:03:202015from www.ehowstuff.local
我希望这篇文章能帮助到你,为你提供 SSH免密码登录 CentOS/ RHEL的基本认知和快速指南。
centos怎么配置ssh免密码
#环境说明\x0d\x0a客户机:Mac OS X\x0d\x0a服务器:CentOS 6.5\x0d\x0a客户端:OpenSSH,OS X及大多数Linux都内置了OpenSSH.’ssh-v’命令可以查看版本.\x0d\x0a\x0d\x0a#大致流程\x0d\x0a1.在客户机创建一对密钥文件,包括公钥文件(~/.ssh/id_rsa.pub),私钥文件(~/.ssh/id_rsa).\x0d\x0a\x0d\x0a2.把公钥放到服务器上(~/.ssh/authorized_keys),在使用ssh登录时,ssh程序会发送私钥去和服务器上的公钥做匹配。如果匹配成功就可以自动登录了。\x0d\x0a\x0d\x0a#客户机配置\x0d\x0a1.查看~/.ssh文件夹,若已经存在有公钥文件(id_rsa.pub),私钥文件(id_rsa),则可以跳过客户端配置.\x0d\x0a\x0d\x0a2.生成密钥文件.\x0d\x0a$ ssh-keygen \x0d\x0a然后一路回车.\x0d\x0a然后~/.ssh下会生成id_rsa.pub和id_rsa,其中id_rsa文件起到唯一标识你的客户机的作用.\x0d\x0a注意:不要改这两个文件的文件名,ssh登陆时会读取id_rsa文件.\x0d\x0a\x0d\x0a#服务器配置\x0d\x0a1.修改sshd配置文件(/etc/ssh/sshd_config).\x0d\x0a找到以下内容,并去掉注释符”#“\x0d\x0a=========================\x0d\x0aRSAAuthentication yes\x0d\x0aPubkeyAuthentication yes\x0d\x0aAuthorizedKeysFile.ssh/authorized_keys\x0d\x0a=========================\x0d\x0a\x0d\x0a2.配置authorized_keys文件.\x0d\x0a若’~/.ssh/authorized_keys’不存在,则建立.ssh文件夹和authorized_keys文件.\x0d\x0a将上文中客户机id_rsa.pub的内容拷贝到authorized_keys中.\x0d\x0aPS:可以在客户机中执行命令来拷贝:\x0d\x0acat~/.ssh/id_rsa.pub| ssh user@host“cat->>~/.ssh/authorized_keys”\x0d\x0a\x0d\x0a注意:\x0d\x0a1).ssh目录的权限必须是700\x0d\x0a2).ssh/authorized_keys文件权限必须是600 \x0d\x0a\x0d\x0a3.重启sshd.\x0d\x0a$/etc/init.d/sshd restart\x0d\x0a\x0d\x0a#测试\x0d\x0a客户机执行:ssh-v user@host(-v调试模式)\x0d\x0a会显示一些登陆信息.\x0d\x0a若登陆失败,或者仍然要输入密码,可以在服务器查看日志文件:/var/log/secure.\x0d\x0a\x0d\x0a若登陆成功,则以后就可以用’ssh user@host’直接登陆了,不用输入密码.