ssh远程链接的原理及方法

telnet  :远程登录       23/tcp端口,默认
         C/S架构类型
              S:Telnet服务器    C/telnet 客户端
         命令都是明文发送,不安全,现在已经很少使用
    ssh:secure SHell  ,  应用层协议,22/tcp
   通信的过程中都是通过加密的:服务器会发送主机秘钥
                                           服务器有私钥:secret key

                                           客户端有公钥:public key

                    秘钥交换
  
 用户认证过程中加密,数据传输过程加密
  ssh v1  v2
   认证过程:基于口令认证
             基于秘钥认证
              
协议:一种规范
实现:服务器端、客户端
        linux :openssh
            C/S   
          服务器端:sshd:配置文件/etc/ssh/sshd_config
           客户端:ssh,配置文件/etc/ssh/ssh_config
          ssh_keygen :秘钥生成器
          ssh_copy-id :将公钥传输至远程服务器
           scp:跨主机安全复制工具包

       ssh:
       shh username@host
        ssh  -l usrename host
      ssh username@host 'command' 只执行服务器的命令,但是没有登录服务器
  
     scp :
          scp src DEST
               scp username@host:/path/to/file   /path/file    从服务器到本地数据的复制
                                     
                scp /path/to/file  username@host:/path/to/file
        
   
   ssh-keygen 生成秘钥    
           -t rsa 加密方式是rsa
                     私钥的的路径./.ssh/id_rsa
                      公钥的路径   /.ssh/id_rsa.pub

    公钥追加保存到远程主机某用户端家目录下 的.ssh/authorized_keys文件或.ssh/authorized_keys2文件中
   
          ssh-copy-id -i  file    username@host可以直接将公钥复制到服务器
           
          
     dropbear:嵌入式系统专用的ssh服务器端和客户端工具
  
      服务器端:dropbear
              drop
        客户端:dbclient

本文转自:程序员鼓励师

posted @ 2015-10-23 11:18  jinshiyill  阅读(326)  评论(0编辑  收藏  举报