• 配置免密码登陆 1、在服务器上成成密钥对,文件默认保存在/home/角色名/.ssh文件夹下 ssh-keygen:代表生成秘钥 -t:表示指定省的秘钥类型 rsa:秘钥类型 -P:用于提供密语 [-f]:指定生成的秘钥文件,是可选的 ...

    配置免密码登陆

    1、在服务器上成成密钥对,文件默认保存在/home/角色名/.ssh文件夹下

    ssh-keygen:代表生成秘钥
    
    -t:表示指定省的秘钥类型
    
    rsa:秘钥类型
    
    -P:用于提供密语
    
    [-f]:指定生成的秘钥文件,是可选的
    

    在这里插入图片描述

    2、根据sshd_config中的配置,将公钥文件追加到授权的key里面去
    在这里插入图片描述

    3、查看/etc/ssh/sshd_config文件
    在这里插入图片描述
    去掉AuthorizedKeysFile的注释

    4、修改authorized_keys文件的权限,因为权限不对的话不可以使用RSA功能

    chmod 600 ~/.ssh/suthorized_keys
    

    在这里插入图片描述

    5、验证是否可以使用无密码登陆本机

    ssh bigdatas1
    

    在这里插入图片描述

    6、免密码登陆时报如下警告

    Warning: Permanently added ‘bigdatas1,172.17.107.239’ (ECDSA) to the list of known hosts.

    解决办法:vim /etc/ssh/ssh_config
    去掉StrictHostKeyChecking ask注释
    在这里插入图片描述

    7、集群已经配置了ssh免密钥登陆,然后出现“The authenticity of host xx can’t be established”,输入yes后可以正常操作。
    修改/etc/ssh/ssh_config:
    添加两行

    StrictHostKeyChecking no
    UserKnownHostsFile /dev/null
    

    在这里插入图片描述

    展开全文
  • 服务器操作系统:CentOS Linux 免密登陆的原理: 免密登陆其实就是使用密钥文件代替密钥进行身份验证。这里的密钥文件就是公钥和对应的私钥,将公钥部署在远程服务器上,私钥部署在客户机上。在服务器和客户机上...

    作者:荒原之梦
    原文链接:http://zhaokaifeng.com/?p=587

    操作环境:

    客户机操作系统:Ubuntu Linux
    服务器操作系统:CentOS Linux

    免密登陆的原理:

    免密登陆其实就是使用密钥文件代替密钥进行身份验证。这里的密钥文件就是公钥和对应的私钥,将公钥部署在远程服务器上,私钥部署在客户机上。在服务器和客户机上配置好密钥文件后,当客户机向服务器发起连接请求的时候,客户机会向服务器表达使用密钥文件进行身份验证的请求并向服务器发送公钥;随后,服务器会在客户机对应用户的主目录下找寻公钥文件并与收到的公钥文件进行对比;如果公钥文件的对比结果一致,服务器会使用公钥加密一个文件发送给客户机;客户机在收到公钥加密的文件后使用自己的私钥进行解密,然后将解密后的内容发送给服务器;如果服务器收到的解密内容与原内容一致则身份验证成功,两台计算机之间成功建立连接。

    实现方法:

    使用 ssh-keygen 生成公钥与私钥,将公钥部署在服务器上,私钥部署在客户机上。

    具体实现步骤:

    1.生成密钥文件

    命令:

    ssh-keygen -t rsa -P "password"

    之后弹出提示:

    Generating public/private rsa key pair.
    Enter file in which to save the key (/home/yourname/.ssh/id_rsa):

    此时如果不希望改变密钥文件的默认保存路径则直接回车即可。

    注0:上述命令中的password是用于加密私钥的密码。为了尽可能保证私钥不被非授权使用,我建议在创建密钥文件时务必设置加密私钥的密码,不可省略。

    这时,在 /home/yourname/.ssh/id_rsa 目录下就可以看到 id_rsa 、 id_rsa.pub 和 known_hosts 这三个文件。
    其中,
    id_rsa:私钥文件
    id_rsa.pub:公钥文件
    know_hosts:已知主机的公钥文件

    2.复制公钥至服务器

    命令:

    scp -p ~/.ssh/id_rsa.pub root@<server ip>:/root/.ssh/authorized_keys

    之后会要求输入远程服务器的登陆密码,输入密码后回车即可。

    3.登录服务器

    命令:

    ssh root@<server ip>

    回车后会要求输入 本地私钥的解密密码(即第一步中设置的“password”),解密私钥后就可以登录服务器了。

    注1:上文路径中出现的“yourname”是指你登陆客户机时使用的用户名。
    注2:在部署公钥的时候虽然使用了服务器相应登陆账户(如root账户)的密码,但是之前所生成的公钥与私钥和这个密码并没有联系,输入该密码仅仅是为了登陆远程服务器,将公钥文件部署到服务器上。

    展开全文
  • 目录 环境设置(root权限) 1.关闭防火墙和SELinux 2.设置主机名 ...假设有 A、 B 两台 Linux 服务器,我们希望能够从其中一台服务器通过 SSH 免密码登录到另一台服务器。 两台服务器的信息如...

    目录

    环境设置(root权限)

    1.关闭防火墙和SELinux

    2.设置主机名

    3.配置hosts

    4.配置sshd

    秘钥设置

    1.创建免密码登录账户

    2.生成秘钥

    3.将公钥导入到认证文件

    4.设置文件访问权限

    5.将认证文件复制到其他主机


    假设有 A、 B 两台 Linux 服务器,我们希望能够从其中一台服务器通过 SSH 免密码登录到另一台服务器。
    两台服务器的信息如下: 

    主机名 IP地址 免密码登录用户名
    server1 192.168.12.11 guest1
    server2 192.168.12.12 guest2

    环境设置(root权限)

    1.关闭防火墙和SELinux

    Redhat使用了SELinux来增强安全,关闭的办法为:
               a. 永久有效
               修改 /etc/selinux/config 文件中的 SELINUX=enforcing 修改为 SELINUX=disabled ,然后重启。
               b. 临时生效
               setenforce 0
               关闭防火墙的方法为:
               a. 永久有效
               开启:chkconfig iptables on
               关闭:chkconfig iptables off
               b. 临时生效
               开启:service iptables start
               关闭:service iptables stop
               需要对两台服务器分别进行设置,关闭防火墙和 SELinux 。  

    2.设置主机名

    编辑 /etc/sysconfig/network 文件,使用命令: vim /etc/sysconfig/network  ,设置格式:HOSTNAME=[主机名] 。
    将A服务器的主机名设置为 server1 。 

    将B服务器的主机名设置为 server2 。

    3.配置hosts

    编辑 /etc/hosts 文件,使用命令:vim /etc/hosts ,在两台服务器的 hosts 文件中分别增加如下配置:

    192.168.12.11 server1
    192.168.12.12 server2 

    4.配置sshd

    编辑两台服务器的 /etc/ssh/sshd_config 文件,使用命令:vim /etc/ssh/sshd_config 。
               去掉以下3行的 “#” 注释:

    RSAAuthentication yes
    PubkeyAuthentication yes
    AuthorizedKeysFile      .ssh/authorized_keys

    重启 sshd 服务,使用命令:/sbin/service sshd restart 。  

    秘钥设置

    1.创建免密码登录账户

    使用命令:

    useradd guest1 //创建新用户
    passwd guest1 //设置新用户登录密码 

     

    同样地,在 server2 中创建一个 guest2 账户 。

    2.生成秘钥

    从 root 用户切换到要免密码登录的账户,使用命令:su guest1 。
               执行命令:ssh-keygen -t rsa 

    无需指定口令密码,直接回车,命令执行完毕后会在 guest1 用户的家目录中(/home/guest1/.ssh)生成两个文件:

    id_rsa: 私钥
    id_rsa.pub:公钥

     

    按照同样的步骤,在 server2 中为 guest2 账户生成好秘钥文件。

    3.将公钥导入到认证文件

    使用命令:

    cat /home/guest1/.ssh/id_rsa.pub >> /home/guest1/.ssh/authorized_keys
    ssh guest2@server2 cat /home/guest2/.ssh/id_rsa.pub >> authorized_keys 

     

    使用命令 cat authorized_keys 查看 authorized_keys 文件内容如下:

    4.设置文件访问权限

    使用命令:

    chmod 700 /home/guest1/.ssh
    chmod 600 /home/guest1/.ssh/authorized_keys

    执行完以上设置之后 server1 就能够免密码登录本机了,使用命令:ssh guest1@server1 。 

    注意:当 known_hosts 文件中缺少主机名称信息时会提示如下信息,输入 yes 即可将主机名称写入 known_hosts 文件并登陆成功。

    至此,主机 server1 的 SSH 免密码登录就算配置完成了,接下来配置 server2 。

    5.将认证文件复制到其他主机

    执行以下命令将生成的 authorized_keys、known_hosts两个文件从 server1 复制到 server2 。

    # scp [要传输的本地文件] [远程主机用户名]@远程主机ip或主机名:[文件要传输到的目标位置]
    scp /home/guest1/.ssh/authorized_keys guest2@server2:/home/guest2/.ssh/authorized_keys
    scp /home/guest1/.ssh/known_hosts guest2@server2:/home/guest2/.ssh/known_hosts 

     

    待复制完成以后,先使用以下命令设置文件访问权限。

    chmod 700 /home/guest2/.ssh
    chmod 600 /home/guest2/.ssh/authorized_keys

    然后,执行 ssh guest1@server1 命令就能够使用server2的guest2账户免密码登录server1的guest1账户了。

    至此,两台服务器的SSH 免密码登录就全部设置完成,如果出错,请仔细检查以上各个步骤。

    展开全文
  • windows登录Linux服务器免密码:putty:http://jingyan.baidu.com/article/17bd8e5259dab585aa2bb853.html1、生成公钥和私钥先要下载一个叫puttygen的软件,在Windows端生成公钥和私钥。...
    windows登录Linux服务器免密码:
    putty:http://jingyan.baidu.com/article/17bd8e5259dab585aa2bb853.html
    1、生成公钥和私钥
    先要下载一个叫puttygen的软件,在Windows端生成公钥和私钥。https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
    点击Generate开始生成:
    2.在生成过程中用鼠标在进度条下面的空白处乱晃几下,产生随机性:
    3.生成完毕,将私钥保存起来:Save private key
    4.将公钥全选复制
    5.服务器添加公钥
    vim ~/.ssh/authorized_keys
    复制


    putty端设置:
    Connection-->Data: 在Auto-login username中填写登录用户名:ikse
    Connection-->SSH-->Auth:  底部Browse选择生成的密钥
    Session:  Hostname(服务器IP)
    成功


    展开全文
  • Linux ssh下实现免密码登录 在日常的工作中我们不免要在各种个linux服务器之前来回切换,即使现在的shell工具支持多选项卡控制多个shell那来回切换也是很麻烦的一件事,现在我来弄一个服务器间的相互免密操作 1....

    Linux ssh下实现免密码登录

    在日常的工作中我们不免要在各种个linux服务器之前来回切换,即使现在的shell工具支持多选项卡控制多个shell那来回切换也是很麻烦的一件事,现在我来弄一个服务器间的相互免密操作

    1.Linux下生成密钥
    生成linux下的密钥要用到 ssh-keygen 命令,一般执行完这个命令公钥和私钥会生成到 .ssh 的隐藏目录。在执行这个命令之前我们先检查一下这个目录是否存在,因为有些linux如果没有这个目录的话是不会生成key的。
    .ssh 目录
    然后我们再执行 ssh-keygen -t rsa
    key生成命令

    进入“.ssh”会生成以下几个文件
    id_rsa : 生成的私钥文件 id_rsa.pub : 生成的公钥文件
    key文件列表

    2.远程免密登录
    现在我们就需要把key文件复制到其它几台服务器了,而复制的方式主要有两种

    1 通过ssh-copy-id的方式
     命令: ssh-copy-id 服务器IP
     ssh-copy-id执行这程和结果
     这样我们就把生成的key放到了指定的服务器上了
    2手工复制
    这个不多说了,把那几个文件/.ssh/id_rsa.put通过U盘或其它的存储介质复制到其它服务器上

    上面这些步骤做完之后我们就可以高兴的用 命令 ssh 服务器IP 来免密码访问其它服务器了

    结果

    怎么样很简单吧,有什么不对的地方希望大家指证啊

    展开全文
  • MAC 免密码登录 linux

    2018-12-26 14:51:11
    1 在Mac客户端命令行生成公钥和私钥cd ~/.sshssh-keygen -t rsa之后回车两次,注:(Enter passphrase (empty for no passphrase): 可以设置密码),免密做好后首次登录要求输入一次密码,就输入这里的密
  • 1.验证ssh远程登录,未作免密处理的两台机器,登录时,是需要输入密码的 2.本地系统执行 ssh-keygen -t rsa 命令,生成密钥文件 一直按回车键,会出现如上图,也会有你的公私钥文件的路径,比如我的:/home/lx...
  • Xshell5配置ssh免密码登录-公钥与私钥登录linux服务器(xshell如何登陆上阿里云服务器) ssh登录提供两种认证方式:口令(密码)认证方式和密钥认证方式。其中口令(密码)认证方式是我们最常用的一种,这里介绍密钥认证...
  • 是不是可以免密码登录Linux呢? 第一步:生成秘钥 把公共秘钥考到远程Linux上 远程Linux,把windows公共密钥追加到.ssh/authorized_keys文件中 退出ssh登录,测试免密码登录 免密码失败,查看免密码...
  • Linux两台服务器之间复制文件及免密码登录的方法有时候搭建集群机器是,需要在多台机器中间相互拷贝文件,一种方式是同事sftp拷贝到本机,再分别拷贝到其他服务器上。这里介绍一种直接在两台服务器之间拷贝文件且...
  • SSH实现各个服务器间的文件相互备份,如运行scp命令,可以实现免密码登录,从而可以使用SHELL脚本实现一些自动化的处理。 假如A机要免密码登录B机,具体方法如下: 1、在A机运行:"ssh-keygen -t rsa" 命令,...
  • 总的来说,有三个办法来解决问题:1)使用远程登录工具2)建立主机间的ssh信任关系3)用脚本模拟scp命令的密码输入过程,避免每次手工输密码今天主要来介绍一下第一种方法——使用远程登录工具。那么一般常用...
  • 设置多台linux服务器之间以非root账号的身份免密码ssh登录
  • Linux SSH 免密码登录

    2015-07-24 21:11:56
    工作中经常要登录Linux主机太多,每次输密码太麻烦,配过几次免密码登录,每次都记不住,这次记下来备忘。首先在自己机器上使用 ssh-keygen 工具来创建密钥,如下ssh-keygen -t rsa使用 ssh-copy-id 命令自动在...
  • 1.原理和secureCRT免密码登陆Linux是类似的,只是这里的客户端不是crt而是Linux。 2.具体过程:
  • Linux中的ssh命令可以远程...但是连接远程服务器的时候需要输入该用户的密码,如果搭建一些服务集群,如:hadoop等集群服务,就需要用到ssh免密码登录。下面将讲解ssh免密码登录的原理以及如何设置免密码登录。 ...
  • Linux免密码登录

    2016-06-06 12:11:31
    1 将你~/.ssh目录中的id_rsa.pub(公钥)这个文件的内容拷贝到你要登录服务器的相应用户的/.ssh/authorized_keys文件中, 即:cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys 2 将服务器的~/.ssh权限设置为700 ...
  • 在我们处理集群或分布式系统时,经常会涉及到多个linux系统服务器。而在多个服务器间通信或资源共享时,如scp命令文件拷贝,需要录入密码校验,使操作过于繁琐,当密码精度过高时,整个操作也方便。 那如何处理多...
  • 原文链接:...工作中如果要频繁登录服务器和拷贝文件的情况下,经常输入密码难免会觉得麻烦,且效率低下。而且在持续集成的场景下,自动部署应用时是没有人工干预的,这种情况如果要输入密码才能拷贝文
  • 1.简介 ... 不知道各位是什么感受,我是很崩溃的...服务器之间免密码登陆的需求了,官方一点,叫做ssh互信配置。  ssh互信配置的原理简单来说,就是各自服务器存放了目标主机的证书,当执行登陆时,自动完成认证,从而
1 2 3 4 5 ... 20
收藏数 50,334
精华内容 20,133