SSH远程连接原理及故障排除详解
1.SSH远程连接介绍
当前,在几乎所有互联网的企业环境中,最常用的Linux提供远程连接服务的工具就是SSH软件,SSH分为SSH客户端和SSH服务端两部分。其中,SSH服务端包含的软件程序主要有openssh和spenssl,在Linux系统中可以按如下方法查询SSH服务端工具的安装情况。
[root@Markin ~]# rpm -qa openssh openssl
openssl-1.0.1e-30.el6.x86_64
openssh-5.3p1-104.el6.x86_64[root@Markin ~]#
注:在Windows 上的crt能够连接到Linux,也就是靠Linux上 SSH服务端的软件。
openssh是提供SSH连接服务的程序,
openssl 是SSH提供连接加密的程序。
因特网 IP地址是唯一标识一台计算机的 , iPv4 32bit ipv6
网络服务,一般会有一个端口 (port) 端口是一个数字,0-65535
192.168.36.129 22
SSH服务的端口规定是22
2.SSH服务端介绍
启动Linux系统时,默认情况下,SSH服务端程序就会随系统一起启动,SSH服务是一个守护进程(demon),他在系统的后台永久运行并时刻响。SSH服务端的进程名为sshd,负责实时监听远程所有SSH客户端的连接请求并进行处理,这些请求一般包括公共密钥认证,密钥交换,对称密钥加密和非安全连接等。SSH服务是优化系统时需要保留开机自启的服务之一。
3.SSH客户端介绍
SSH客户端最常用的工具就是Windous平台的SecureCRT了,还有xshell,putty等常用软件,以及Linux下的ssh客户端。
4.SSH协议介绍
SSH服务端和SSH客户端之间的交流是通过SSH协议来实现的。SSH协议是Secure Shell Protocol的简写,由IETF网络小组制定。在进行数据传输之前,SSH先通过加密技术对联机数据包进行加密处理,然后在进行数据传输,这样就可确保传递的数据安全。
SSH是专门为远程登录会话和其他网络服务提供的安全性协议。利用SSH协议可以有效的防止远程管理过程中的信息被泄露,在当前的生产环境中,绝大多数企业普遍采用SSH协议来代表传统的不安全的远程联机服务软件,如telnet(23端口,非加密的)等。
SSH协议有两个不兼容的版本,分别是SSHv1和SSHv2。 v1有漏洞。
- 查看进程:netsta -lntup
[root@Markin ~]# netstat -lntup|grep ssh
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1112/sshd 0.0.0.0 代表监听的ip
tcp 0 0 :::22 :::* LISTEN 1112/sshd
[root@Markin ~]#
- 查看进程: ps –ef
[root@Markin ~]# ps -ef|grep ssh
root 1112 1 0 04:35 ? 00:00:00 /usr/sbin/sshd sshd从Linux就一直运行到系统关闭
root 26994 1112 0 09:57 ? 00:00:01 sshd: root@pts/1
root 27901 1112 0 16:19 ? 00:00:00 sshd: root@pts/0
root 27963 27908 0 16:30 pts/0 00:00:00 grep ssh
[root@Markin ~]#
- 查看配置好的ip:
ifconfig
ip add
CRT连不上Linux的故障排查:
1.查看物理连线是否连同
主机上ping Linux的ip地址, 看是否能ping通,ping是用ICMP协议,发默认64字节的包。
不通则检查物理线路,跟Linux防火墙,客户端和服务器是不是一个网段。
2.查看服务是否正常
telnet ip port telnet可能默认没装,需自行安装
不通则排查Linux防火墙,和ssh服务是否开启
SSH客户端实现和Linux共享文件
有以下可以使用:ftp,winscp,rz –sz
rz命令是需要lrzsz包的,安装如下:
[root@Markin ~]# yum install lrzsz -y
在CRT的会话选项里的X/Y/Zmodem可以查看上传和下载的目录, 建议改为同个目录
- 上传 rz –y -y表示覆盖已有文件 不能是目录,若要上传目录则打包成压缩包
注意:不要使用ASCII方式上传
- 下载 sz –y 文件 -y表示覆盖已有文件

浙公网安备 33010602011771号