ssh 学习笔记

1.ssh简单介绍

  SSH(Secure SHell), 是一种建立在应用层和传输层上的安全协议,  专为远程登录会话和其他网络服务提供安全性.可以有效防止远程管理过程中信息泄露问题, 比如 (Man-In-The-Middle 中间人), 是一个开源协议, 起源于Unix.

  和 ftp,pop,Telnet比较:

  ftp,pop和Telnet使用明文传输口令和数据, 而ssh使用加密传输,并且能防止DNS和IP哄骗, ssh的传输数据经过了压缩,可以提高传输速度. ssh还有其他很多功能, 比如: 利用PPP通道建立VPN;  使用ssh可以替代ftp,pop和Telnet.

 

2. SSH 的两种客户端安全验证级别

  (1) 基于口令

    加密账号和口令,登陆到远程主机, 但不能保证你正在连接的服务器就是你想连接的服务器. 所以服务器可能会被假冒造成中间人攻击.

  (2) 基于密匙

    在Client和Server上都要有你的密匙, 连接的建立通过比对密匙, 不需要传送口令, 可以防止中间人攻击, 但是登陆时间长.

 

3.SSH的3部分组成

  (1) 传输层协议[SSH-TRANS]

  (2) 用户认证层协议[SSH-USERAUTH]

  (3) 连接协议[SSH-CONNECT]

 

4.SSH1 和SSH2

  SSH分为1.x和2.x不兼容的两个版本. 但OpenSS同时支持这两个版本.

  ssh-server 是一个daemon, 一般是sshd进程;  ssh-client 包含ssh程序以及像scp(远程拷贝), slogin(远程登录),sftp(安全文件传输)等应用程序

 

5.SSH的常用命令和选项

  使用方法: ssh [-l login_name] [hostname | user@hostname] [command] ssh [-afgknqtvxCPX246] [-c blowfish | 3des] [-e escape_char] [-i identity_file] [-l login_name] [-o option] [-p port] [-L port:host:hostport] [-R port:host:hostport] [hostname | user@hostname] [command] 

  (1) 无参数登录ssh, 会自动使用当前系统登录用户名来登录,比如 loger9567   ssh 192.168.1.1 

  (2) 指定用户名登录  ssh -l roger 192.168.1.1  或者  ssh roger@192.168.1.1 

  (3) 指定端口(default: 22)  ssh 192.168.1.2 -p 1234 

  (4) 对所有数据请求压缩  ssh -C 192.168.1.2  适合网速慢的时候,高速网络中反而不好, 在ssh1 中好像不起作用

  (5) 指定加密算法(default: 3des)  需要修改配置文件, 在 /etc/ssh/ssh_config or ~/.ssh/config 中加入一行 Cipher blowfish #假如使用blowfish算法 

  (6) 打开调试模式, 追踪ssh的连接情况:  ssh -v 192.168.0.102 

  (7) 绑定源地址(因为一个客户端可能不止一个IP)  ssh -b 192.168.0.200 -l roger 192.168.1.1 

  (8) 显示版本 :  ssh -V 192.168.1.1 

  (9) 指定认证文件:  ssh -i identify_file 192.168.1.1 

  (8) 其他如 ssh x11 forwarding 和指定配置文件等, 用到了再查   ...... 

 

posted @ 2015-07-11 15:42  roger9567  阅读(200)  评论(0编辑  收藏  举报