ssh是什么

ssh是一种通信协议,用于与另一台计算机通信,有多个实现版本,openssh属于开源实现

usage: ssh [-B bind_interface]
[-b bind_address]
[-c cipher_spec]
[-D [bind_address:]port]
[-E log_file]
[-e escape_char]
[-F configfile]
[-I pkcs11]
[-i identity_file]
[-J [user@]host[:port]]
[-L address]
[-l login_name]
[-m mac_spec]
[-O ctl_cmd]
[-o option]
[-p port]
[-Q query_option]
[-R address]
[-S ctl_path]
[-W host:port]
[-w local_tun[:remote_tun]] destination [command] //root账户登录
ssh xxx.xxx.xxx //指定用户 -l
ssh -l root xxx.xxx.xxx
ssh root@xxx.xxx.xxx //指定端口 -p
ssh -p 123 xxx.xxx.xxx or
ssh -l root -p 123 xxx.xxx.xxx or
ssh -p 123 root@xxx.xxx.xxx

中间人攻击

假设有中间人冒充用户主机的情况

口令登录

$ ssh user@host
  The authenticity of host 'host (xxx.xxx.xxx.xxx)' can't be established.
  RSA key fingerprint is 98:2e:d7:e0:de:9f:ac:67:28:c2:42:2d:37:16:58:4d.
  Are you sure you want to continue connecting (yes/no)?
  
//基于中间人攻击问题,所以第一次登录无法确认主机安全性,可以根据RSA加密提供的key与远程主机的公钥进行对比

登录成功后

$ cat ~/.ssh/known_hosts

//用户系统会自动把当前公钥存起来
//下次连接这台主机时就知道这台主机的身份了,跳过警告部分

登录失败的情况

//因为密码输错了,所以登录不了
root@xxx.xxx.xx password:
Permission denied, please try again.

公/私钥对

公钥和私钥是成对的,它们互相解密。

公钥加密,私钥解密。

私钥数字签名,公钥验证。

公钥登录

$ ssh-keygen
//一路回车在~/.ssh/下生成2把钥匙 $ ssh-copy-id user@host
//将公钥传到主机 //公钥被放在 ~/.ssh/authorized_keys

失败解决

// ubuntu系统 ssh进程重启命令
service ssh restart
// debian系统 ssh进程重启命令
/etc/init.d/ssh restart

ssh命令使用的更多相关文章

  1. 【转】25个必须记住的SSH命令

    1.复制SSH密钥到目标主机,开启无密码SSH登录 ssh-copy-id user@host 如果还没有密钥,请使用ssh-keygen命令生成. 2.从某主机的80端口开启到本地主机2001端口的 ...

  2. ssh 命令

    常用的ssh命令 cd 切换目录 1.查看日志:举例: tail -f tomcat/apache-tomcat-6.0.26/logs/catalina.2010-11-10.out 2.pwd   ...

  3. 使用Cygwin通过ssh命令行来访问Windows8

    安装Cygwin可以参考<如何在Windows中通过Cygwin来使用Linux命令>. 在Win8下貌似有个bug,需要将cygwin\bin\mintty 修改为cygwin\bin\ ...

  4. ssh命令

    使用ssh命令登陆远程系统 ssh [ip/address] -l [登陆用户名] 如: ssh www.xyz.cn -l root

  5. linux 学习之七-部分ssh命令

    ssh命令 /etc/init.d/sshd restart|start|stop   重启|开始|关闭SSH的服务 ssh IP地址 连接SSH Linux scp命令用于Linux之间复制文件和目 ...

  6. man ssh翻译(ssh命令中文手册)

    本文为命令ssh的man文档翻译,翻译了90%的内容,剩余是一些没必要翻译的东西,请见谅. 如此文有所疑惑,希望我的另一篇文章能解惑: SSH(1)                    BSD Ge ...

  7. 解Linux SSH命令大全,新手必看SSH命令

    下面介绍一些基本的常用的Linux SSH命令,都是一些很简单的Linux SSH命令,新手掌握了这几个,一般管理一般的vps或者linux主机就可以了!     我们的教程介绍了putty的使用方法 ...

  8. Teamviewer远程ssh命令行更改密码启动

    Teamviewer远程ssh命令行更改密码启动 设置密码 $ sudo teamviewer passwd [NewPasswd ] 查看teamviewer信息 $ teamviewer info ...

  9. ssh命令详解

    1.简介: Secure Shell(缩写为SSH),由IETF的网络工作小组(Network Working Group)所制定:SSH为一项创建在应用层和传输层基础上的安全协议,为计算机上的She ...

  10. 第1章 ssh命令和SSH服务详解

    基础服务类系列文章:http://www.cnblogs.com/f-ck-need-u/p/7048359.html 本文对SSH连接验证机制进行了非常详细的分析,还详细介绍了ssh客户端工具的各种 ...

随机推荐

  1. CF165D Beard Graph

    $ \color{#0066ff}{ 题目描述 }$ 给定一棵树,有m次操作. 1 x 把第x条边染成黑色 2 x 把第x条边染成白色 3 x y 查询x~y之间的黑边数,存在白边输出-1 \(\co ...

  2. 7、C++枚举类型

    7.枚举类型 C++的enum工具提供了另一种创建符号常量的方式,这种方式可以代替const.它还允许定义新类型,但必须按严格的限制进行.使用enum的语法与使用结构的相似. enum spectru ...

  3. ajax返回数据成功 却进入error方法

    应该是dataType的原因,dataType为json,但是返回的data不是json格式 于是将dataType:"json"去掉就ok了

  4. chmod变更文件或目录的权限

    chmod命令用来变更文件或目录的权限.在UNIX系统家族里,文件或目录权限的控制分别以读取.写入.执行3种一般权限来区分,另有3种特殊权限可供运用.用户可以使用chmod指令去变更文件与目录的权限, ...

  5. django基础知识之Response对象

    HttpResponse对象 在django.http模块中定义了HttpResponse对象的API HttpRequest对象由Django自动创建,HttpResponse对象由程序员创建 不调 ...

  6. Android 应用资源及R文件的位置

    1.介绍 (1)常识 (2)在res目录下新建资源文件(例如数字资源) app--->res,选择res,右击new--->value resource file 2.字符资源(strin ...

  7. C++_函数3-引用变量与函数的默认参数

    引用变量 C++新增了一种复合类型——引用变量. 引用是已定义的变量的别名.例如将twain作为clement变量的引用,则可以交替使用twain和clement来表示该变量. 引用变量的主要用途:用 ...

  8. [转] Java 使用Try-with-resources自动关闭资源

    [From] https://blog.csdn.net/wtopps/article/details/71108342 Try-with-resources Try-with-resources是J ...

  9. 处女座和他的小姐姐(三)----数位DP

    链接:https://ac.nowcoder.com/acm/contest/329/G来源:牛客网 经过了选号和漫长的等待,处女座终于拿到了给小姐姐定制的手环,小姐姐看到以后直呼666! 处女座其实 ...

  10. follow Up — 20181101

    406. Minimum Size Subarray Sum public class Solution { /** * @param nums: an array of integers * @pa ...