linux下怎样设置ssh无密码登录

作者&投稿:宿袁 (若有异议请与网页底部的电邮联系)
linux下怎样设置ssh无密码登录~

用SSL加密Key实现自动登录
需要材料:
1 被管理的SSH服务器一台。
2 管理端电脑一台。

环境:
管理服务器: ip:192.168.0.1 机器名:server
被管理服务器:ip:192.168.0.2 机器名:client

生成密钥对:
生成公钥密钥对是在管理服务器上生成的:


[root@server ~]# ssh-keygen -b 1024 -t rsa
Generating public/private rsa key pair. #提示正在生成rsa密钥对
Enter file in which to save the key (/home/usrname/.ssh/id_dsa): #询问公钥和私钥存放的位置,回车用默认位置即可
Enter passphrase (empty for no passphrase): #询问输入私钥密语,输入密语
Enter same passphrase again: #再次提示输入密语确认
Your identification has been saved in /home/usrname/.ssh/id_dsa. #提示公钥和私钥已经存放在/root/.ssh/目录下
Your public key has been saved in /home/usrname/.ssh/id_dsa.pub.
The key fingerprint is:
x6:68:xx:93:98:8x:87:95:7x:2x:4x:x9:81:xx:56:94 root@server #提示key的指纹


拷贝你的公钥到被管理的服务器上
在你的管理服务器上把你的公钥拷贝到被管理服务器上要进行自动登陆的用户目录下。

[root@server ~]# scp .ssh/id_dsa.pub remote_usrname@192.168.0.2: #比如你想使用用户peter登陆,则remote_usrname请以peter代替


改名和进行权限设置
登陆被管理的服务器,进入需要远程登陆的用户目录,把公钥放到用户目录的 .ssh 这个目录下(如果目录不存在,需要创建~/.ssh目录,并把目录权限设置为700),把公钥改名为authorized_keys2,并且把它的用户权限设成600。

[peter@client ~]$ ls
id_rsa.pub
[peter@client ~]$ mkdir ~/.ssh #如果当前用户目录下没有 .ssh 目录,请先创建目录
[peter@client ~]$ chmod 700 ~/.ssh
[peter@client ~]$ mv id_rsa.pub ~/.ssh
[peter@client ~]$ cd ~/.ssh
[peter@client ~]$ cat id_rsa.pub >> authorized_keys2
[peter@client ~]$ rm -f id_rsa.pub
[peter@client ~]$ chmod 600 authorized_keys2
[peter@client ~]$ ls -l
total 4
-rw------- 1 peter peter 225 Oct 10 11:28 authorized_keys2


测试使用密钥对进行远程登陆

[root@server ~]# ssh peter@192.168.0.2
Enter passphrase for key '/root/.ssh/id_rsa': #提示输入密码短语,请输入刚才设置的密码短语
Last login: Sun Oct 10 11:32:14 2010 from 192.168.0.1
[peter@client ~]$


如果你不能用正确的登录,应该重新检查一下你的authorized_keys2的权限。也可能要检查.ssh目录的权限。
使用 ssh-agent(ssh代理)自动输入密码短语
牢记你的“密码短句”,现在你可以用你的密钥而不是密码来登录你的服务器了,但是这样仍然没有省什么事,你还是要输入密钥的“密码短语”。有更简便的方法吗?答案就是采用SSH代理(ssh-agent),一个用来帮你记住“密码短语”的程序。 ssh-agent是OpenSSH中默认包括的ssh代理程序。
登陆管理服务器

[root@server ~]# ssh-agent
SSH_AUTH_SOCK=/tmp/ssh-vEGjCM2147/agent.2147; export SSH_AUTH_SOCK;
SSH_AGENT_PID=2148; export SSH_AGENT_PID;
echo Agent pid 2148;


当你运行ssh-agent,它会打印出来它使用的 ssh 的环境和变量。要使用这些变量,有两种方法,一种是手动进行声明环境变量,另一种是运行eval命令自动声明环境变量。
方法一:手动声明环境变量

[root@server ~]# SSH_AUTH_SOCK=/tmp/ssh-vEGjCM2147/agent.2147; export SSH_AUTH_SOCK;
[root@server ~]# SSH_AGENT_PID=2148; export SSH_AGENT_PID;
[root@server ~]# printenv | grep SSH #检查 ssh 环境变量是否已经加入当前会话的环境变量
SSH_AGENT_PID=2148
SSH_AUTH_SOCK=/tmp/ssh-vEGjCM2147/agent.2147


方法二:运行eval命令自动声明环境变量

[root@server ~]# eval `ssh-agent`
Agent pid 2157
[root@server ~]# printenv | grep SSH #检查 ssh 环境变量是否已经加入当前会话的环境变量
SSH_AGENT_PID=2148
SSH_AUTH_SOCK=/tmp/ssh-vEGjCM2147/agent.2147


现在 ssh-agent 已经在运行了,但是 ssh-agent 里面是空白的不会有解密的专用密钥。我们要告诉它我们有私钥和这个私钥在哪儿。这就需要使用 ssh-add 命令把我们的专用密钥添加到 ssh-agent 的高速缓存中。


[root@server ~]# ssh-add ~/.ssh/id_dsa
Enter passphrase for /home/user/.ssh/id_dsa: #输入你的密码短语
Identity added: /home/user/.ssh/id_dsa (/home/user/.ssh/id_dsa)
[root@server ~]# ssh-add -l #查看 ssh代理的缓存内容
1024 72:78:5e:6b:16:fd:f2:8c:81:b1:18:e6:9f:77:6e:be /root/.ssh/id_rsa (RSA)




输入了密码短句,现在好了,你可以登录你的远程服务器而不用输入你的密码短语了,而且你的私钥是密码保护的。

首先你要有一个无密码的用户。 修改ssh配置文件,步骤如下: 1) 修改 /etc/ssh/sshd_config 文件中 PermitEmptyPasswords 这个参数为yes(即允许空密码的用户登录,默认是no) 2) 重启 ssh服务,service ssh restart 3) 重新登录ssh,即可无密码登...

要使用SSH免密码登录,假设现在有两台机器hadoop@wang-PC(192.168.10.100),作为A机,hadoop@chen-PC(192.168.10.107),作为B机。现想hadoop@wang-PC通过ssh免密码登录到hadoop@chen-PC。 1.在A机下生成公钥/私钥对。 [hadoop@wang-PC ~]$ ssh-keygen -t rsa -P '' 敲击回车键即可, 它在/home/hadoop下生成.ssh目录,.ssh下有id_rsa和id_rsa.pub。 2.把A机器下的id_rsa.pub复制到B机器下的.ssh/authorized_keys文件里。 [hadoop@wang-PC ~]$ scp .ssh/id_rsa.pub hadoop@192.168.10.107:/home/hadoop/id_rsa.pub.hadoop_wang hadoop@192.168.10.107's password: 由于还没有免密码登录的,所以要输入密码。 3.B机把从A机复制的id_rsa.pub.hadoop_wang添加到.ssh/authorzied_keys文件里。 [hadoop@chen-PC ~]$ cat id_rsa.pub.hadoop_wang >> .ssh/authorized_keys [hadoop@chen-PC ~]$ chmod 600 .ssh/authorized_keys authorized_keys的权限要是600。 4.A机登录B机。 [hadoop@wang-PC ~]$ ssh 192.168.10.107 第一次登录是时要你输入yes。 现在A机可以无密码登录B机了。 小结:登录的机子可有私钥,被登录的机子要有登录机子的公钥。这个公钥/私钥对一般在私钥宿主机产生。上面是用rsa算法的公钥/私钥对,当然也可以用dsa(对应的文件是id_dsa,id_dsa.pub) 想让A,B机无密码互登录,那B机以上面同样的方式配置即可,把B的公钥复制过去添加到authorized_keys的末尾就行了。 至此完毕。


linux下如何配置DNS服务器,
linux DNS服务器配置 基本理论:DNS系统的作用是把域名和IP对应起来。正向解析:根据域名(主机名)查找对应的IP地址。反向解析:根据IP地址查询对应的域名(主机名)。查询 递归查询:大多数客户机向DNS服务器解析域名的方式。迭代查询:大多数DNS服务器向其它DNS服务器解析域名的方式。DNS服务器的类型 缓...

linuxweb服务linux下web服务器
8.查看Apache日志信息,日志信息存储在\/var\/log\/httpd\/目录下,可以查看http访问的日志及https的访问日志,可以查看错误的http日志及https的错误日志等信息,linux怎么用web服务器?安装好linux操作系统之后再安装web服务器,常见的WEB服务器有apache,nginx,lighttpd等。设置好WEB服务器之后,把你的网页文件...

Linux下如何进行SFTP用户权限设置
常见问题:如果你链接服务器的时候出现下面的提示:Write failed: Broken pipe Couldn't read packet: Connection reset by peer 这个问题的原因是ChrootDirectory的权限问题,你设定的目录必须是root用户所有,否则就会出现问题。所以请确保sftp用户根目录的所有人是root, 权限是 750 或者 755。

linux安全设置方法?怎样设置才能保证linux安全??
目前随着网络的逐渐普及,安全问题越来越引起了人们的注意。Linux作为免费的开放源代码操作系统,正在被越来越多地用作服务器平台,而且随着Linux下应用软件的多样化,很多人也喜欢使用Linux作为桌面。在这一系列文章中我们把主要精力放在用Linux搭建安全的服务器上面。我们通过系统设置和一些共享的安全软件固化...

修改系统时间linux
时间设定成2005年8月30日的命令如下:date-s08\/30\/2005 将系统时间设定成下午6点40分0秒的命令如下。date-s18:40:00 4)同步BIOS时钟,强制把系统时间写入CMOS,命令如下:clock-w 5)重启apache。二、本文档解释了如何从linux下设置计算机的时钟,如何设置您的时区和其它与linux如何保存时间相关的材料...

linux下文件夹权限设置
w(Write 写入):对文件有增加、删除、修改文件内容的权限;对目录有增加、删除、修改目录下内容的权限。w 是可以在目录下创建、修改、删除文件,不仅可以修改自己的文件也可以修改别人的文件,因此增加了一个t 权限对 x 权限进行了限制,表示只可以修改自己的文件。umask 命令可以设置系统的权限掩码,即...

linux下如何配置网络?
1、首先我们用root用户登录linux桌面系统。2、然后我们点击上方的【系统】, 点击【首选项】。3、然后我们点击列表里的【网络连接】。4、然后我们点击“编辑”。打开“IPV4 设置”页面,选择“方法”为“手动”。5、选择“添加”。填写自己分配的ip地址,子网掩码,网关,DNS服务器等信息,参照windows ...

linux下怎样设置ssh无密码登录
有两种方法,可以用证书实现无密码登录,或者sshpass命令可以指定ssh登陆密码。1、派出间谍 Step 1:执行ssh-keygen -t rsa,会在~\/.ssh下生成两个文件,id_isa和id_isa.pub On one of the local LINUX (not SGI) machines, generate an id_rsa and id_rsa.pub pair as follows (this machine ...

linux系统怎样设置命令别名
这篇文章主要介绍了linux系统设置命令别名的方法,需要的朋友可以参考下 最近搞一个Django站点,需要经常进入\/var\/www\/site\/mycitsm\/这个目录,每次都得重复的输入这一长串路径进入该目录,显得麻烦而费时,有没有一种好的方式可以将“cd \/var\/www\/site\/mycitsm”这样一个命令取一个别名,每次只需输入...

linux设置环境变量
Linux不像window界面那样可视化更明显、操作也便利;因此大多数人对Linux的设置都比较头疼,一般来说,配置交叉编译工具链的时候需要指定编译工具的路径,此时就需要设置环境变量。例如我的mips-linux-gcc编译器在“\/opt\/au1200_rm\/build_tools\/bin”目录下,build_tools就是我的编译工具,则有如下三种方法来设置环境变量。

张湾区17214755529: linux下怎样设置ssh无密码登录 -
店士爱德: 首先你要有一个无密码的用户. 修改ssh配置文件,步骤如下: 1) 修改 /etc/ssh/sshd_config 文件中 PermitEmptyPasswords 这个参数为yes(即允许空密码的用户登录,默认是no) 2) 重启 ssh服务,service ssh restart 3) 重新登录ssh,即可无密码登录.

张湾区17214755529: 如何在linux中如何配置ssh免密码登录 -
店士爱德: 首先需要在服务器端设置/etc/ssh/sshd_config # vim /etc/ssh/sshd_config 修改如下两行为yes.其实大多数情况下不用修改,默认就是yes. RSAAuthentication yes PubkeyAuthentication yes (1) 如果客户机和服务器都是Linux机器,那...

张湾区17214755529: linux 服务器之间怎样ssh 不需要密码 -
店士爱德: ssh-keygen可以用来生成private和public密钥.将生成的public密钥拷贝到远程机器后,可以使ssh到另外一台机器的登陆不用密码.具体方法如下.1) 在本地机器中的~/.ssh/目录下执行下命令,ssh-keygen -t dsa 将生成两个文件,id_dsa和id_dsa.pub.2) 将id_dsa.pub拷贝到远程机器,并且将id_dsa.pub的内容添加到~/.ssh/authorized_keys中.cat id_dsa.pub >>authorized_keys 注意:目录.ssh和文件authorized_keys的权限必须是600.完成这些工作后,用户从本地机器到远程机器的登录就不用密码了.

张湾区17214755529: 如何实现Linux主机远程登录ssh免密码 -
店士爱德: Linux ssh密钥自动登录在开发中,经常需要从一台主机ssh登陆到另一台主机去,每次都需要输一次login/Password,很繁琐.实现从主机A免密码登陆到主机B,需要以下几个步骤:1. 在主机A“~/.ssh/”目录下执行命令“ssh-keygen -t rsa”(生成过程中,...

张湾区17214755529: linux 怎么设置用户ssh不用输入密码 -
店士爱德: 配置信任连接 root下 输入 生成 公私钥 ssh-keygen -t rsa 然后将公钥copy到服务端改名 或者新建为 authorized_keys 在/root/.ssh下

张湾区17214755529: 如何通过linux ssh远程linux不用输入密码登入 -
店士爱德: 首先登入一台linux服务器,此台做为母机(即登入其他linux系统用这台做为入口);执行一行命令生成key文件:ssh-keygen -t rsa 在母机上,进入/roo/.ssh目录,找到id_rsa.pub该文件,这个文件就是刚才执行ssh-keygen所生成的公钥key文件....

张湾区17214755529: linux下面如何配置ssh无密码访问 -
店士爱德: ssh-keygen 生成密钥.然后~/.ssh下,就有pub文件.然后ssh-copy-id到对方,此次需要输入密码.以后就不要了.如果是对github网站,就复制粘贴pub过去.

张湾区17214755529: 如何通过linux ssh远程linux不用输入密码登入 -
店士爱德: 更改/etc/ssh/sshd_config 尝试下.另一种就是 用公钥

张湾区17214755529: 怎样在Ubuntu上安装与设置ssh,实现无密码登录 -
店士爱德: 方法/步骤 首先,打开终端(快捷键Ctrl+Alt+T)安装ssh软件,在这里直接输入sudo apt-get install ssh在线安装.安装过后,进行加密设置,输入ssh-keygen -t rsa(参数t后面跟的就是加密算法,一般常用的有两种RSA与DSA加密,我们这里用的...

张湾区17214755529: ssh 连接本机不需要密码的设置 -
店士爱德: 应该还是权限的问题,试试下面的方法.SSH doesn't like it if your home or ~/.ssh directories have group write permissions. Your home directory should be writable only by you, ~/.ssh should be 700, and authorized_keys should be 600 You can ...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网