`
hikin
  • 浏览: 262148 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

linux下实现ssh自动登录远程服务器,不用再输密码了

阅读更多

前言:开发工作中,由于有时需要通过ssh登录远程服务器上去,每次都要输入密码,密码很难记,感觉很麻烦,于是上网搜了通过

ssh自动登录远程服务器上去,从而免去了每次都要输入密码的困扰。

系统说明:
   本地机器:Debian
   远程机器:Redhat

步骤:
A.本地机器需要做的修改工作

  1.通过ssh-keygen产生RSA公私密钥对
    #ssh-keygen

    一路敲回车下去,最后在~/.ssh文件夹下生成id_rsa和id_rsa.pub两个文件

  2.在~/.ssh文件夹下创建config文件
    具体如下:
   
    Host abc //服务器别名
   
    HostName xxx.xxx.xxx.xxx //服务器的ip地址

    User root  //

    Port 22  //ssh服务端口

   注:如果需要对远程多台机子配置,则config文本文件里面再添加一条记录,格式和上面的一样。
 
  3.将id_rsa.pub文件通过gftp上传到远程服务器上中~/.ssh文件夹下


B.远程机器需要做的修改工作
    
  1.用vi打开/etc/ssh/sshd_config这个文件
    将下面几行前面“#”注释取掉
    RSAAuthentication yes
    PubkeyAuthentication yes
    AuthorizedKeysFile .ssh/authorized_keys

  2.在用户根目录下创建.ssh文件夹,如果已经有了就不用创建了.具体路径为(~/.ssh)
    # cd ~/.ssh
    在.ssh文件夹下建立authorized_keys文件,记住authorized_keys是文件,不是文件夹。
    将先前客户端上传id_rsa.pub文件中的内容拷贝粘贴到authorized_keys中去,
    然后保存authorized_keys。
 
  3.重启ssh服务命令

    #service sshd restart

C.回到本机机器linux客户端进行测试

   在终端中敲入命令
 
   # ssh abc //注abc 是config文件中配置的服务器别名
  
   就直接进入远程服务器了,是不是很方便,呵呵。

   备注:这一步如果出现bad owers啥错误时 需要改名.ssh文件夹和里面文件权限才行
   具体命令如下:
   #chmod 700 ~/.ssh
   #chmod go+rwx ~/.ssh/* 

1
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics