SSH定义:
SSH(Secure Shell 的缩写)是一种网络协议,用于加密两台计算机之间的通信,并且支持各种身份验证机制。
实务中,它主要用于保证远程登录和远程通信的安全,任何网络服务都可以用这个协议来加密。
SSH由来:
网络主机之间的通信是不加密的,属于明文通信。这使得通信很不安全,一个典型的例子就是服务器登录。登录远程服务器的时候,需要将用户输入的密码传给服务器,如果这个过程是明文通信,就意味着传递过程中,线路经过的中间计算机都能看到密码,这是很可怕的。
SSH 就是为了解决这个问题而诞生的,它能够加密计算机之间的通信,保证不被窃听或篡改。它还能对操作者进行认证(authentication)和授权(authorization)。明文的网络协议可以套用在它里面,从而实现加密。
SSH 架构
SSH 的软件架构是服务器-客户端模式(Server - Client)。在这个架构中,SSH 软件分成两个部分:
向服务器发出请求的部分,称为客户端(client),OpenSSH 的实现为 ssh;
接收客户端发出的请求的部分,称为服务器(server),OpenSSH 的实现为 sshd。
约定,大写的 SSH 表示协议,小写的 ssh 表示客户端软件。
基本命令
查看SSH版本
$ ssh -V
ssh 登录服务器的命令如下
$ ssh user@hostname
用户名也可以使用ssh的-l
$ ssh -l username host
-p可以指定端口
$ ssh -p 8821 host
第一次连接主机有以下的提示:
上面这段文字告诉用户,foo.com
这台服务器的指纹是陌生的,让用户选择是否要继续连接(输入 yes 或 no)
之后再登录就不会有这段提示了
设置root用户不可远程登录
输入命令:vi /etc/ssh/sshd_config
然后修改PermitRootLogin 的值为no即可,默认是yes
之后再登录就是如下提示:
设置在一段时间内无操作就断开连接:
将ClientAliveInterval 修改后面的值,单位是s
ClientAliveCountMax :最少有几次操作
如果就一台电脑就用一个远程连接工具Putty,这个可以下载window版本的,看我另一篇文章吧!,有详细解说