第五节 远程SSH连接服务与基本排错

标签(空格分隔):Linux实战教学笔记-陈思齐


第1章 远程连接LInux系统管理

1.1 为什么要远程连接Linux系统



在实际的工作场景中,虚拟机界面或物理服务器本地的窗口都是很少能够接触到的,因为服务器装完系统后,都要拉到IDC机房托管,如果是购买了云主机,更碰不到服务器本地显示器了,此时,只能通过远程连接的方式管理Linux系统。因此,在装好linux系统后,学习Linux运维的第一步应该是配置好客户端软件远程(通过ssh软件进行连接)连接Linux系统进行管理。

第2章 连接前的小知识

2.1 IP地址

互联网上的计算机都会有一个唯一的32位的地址,我们访问服务器,就必须通过这个IP地址。局域网里也有预留的IP地址192.10.172开头,局域网的IP地址也是唯一。NAT模式,电脑宿主机的ip在局域网是唯一的,选择了NAT模式创建虚拟机,虚拟机就是一个新的局域网(私有网络)

2.2 端口的简单概念

老师的机器ip 192.168.11.211

192.168.11.211代表一台主机,但是主机上可能会有很多服务。一台主机上的不同服务功能,就是通过端口区分,然后让外部人员访问。

2.3 协议的简单概念

汉语,英语,法语,不同的服务提供了不同的端口,对应了不同的功能,通信方式可能也是不同的,这种通信的方式我们就可以理解为协议。

一台主机上的不同服务功能,就是通过端口区分,不同的服务端口,客户端和服务器之间通信,就可以使用不同的协议

第3章 SSH远程连接故障排查示例

  • telnet连接服务器是明文的,非加密的
  • SSH连接服务器是加密的连接

(由于我是用mac来写文档,没法实际截图xsehll这个windows工具的使用,但这个工具真的是非常简单,请同学们自行脑补)

3.1 ssh连接示意

  • 服务器端===>通过ssh协议提供===>sshd服务====>监听22端口(不断的监听是否有人需要服务)
  • 客户端(客户):ssh协议,ip地址,端口号(需要什么服务),用户名,密码

3.2 远程连接五要素

  1. 协议:SSH(加密),telnet(未加密)
  2. IP:对方的IP地址
  3. 端口:默认22端口
  4. 用户名:
  5. 密码:

3.3 如何查看IP地址

  • ifconfig(ip a)

可以通过这两个命令来查看IP地址

ip地址/24:代表子网掩码255.255.255.0

lo:回环网卡:用于检测设备自测

eth0:你的第一块网卡

eth1:你的第二块网卡

注意

假如你发现你的虚拟机没有IP地址的话,那么也许你的网卡设备处于关闭状态



通过命令:ifup + 网卡名(ethx) 可以开启设备

通过命令:ifconfig +网卡名(ethx)+ up 也可以开启设备

讨论

既然这两个命令都能开启成功,那么它们到底有没有区别呢?请跟随我来做个实验。

  • 第一步:我们删掉eth1网卡的配置文件

/etc/sysconfig/network-scripts/:这个路径是网卡配置文件的路径,作为运维人员我们是必须熟记得

  • 第二步,我们关闭eth1这个网卡设备

  • 第三步,我们尝试开启这个设备

继续讨论

为什么我们的试验结果是这样的呢?当我删除了eth1这个网卡的配置文件,ifup这个命令就失灵了?

  • 这是因为,ifup/ifdown这个命令控制的实际上并不是物理网卡的开启和关闭,而实际上他控制的仅仅是网卡的配置文件而已,它是通过网卡配置文件间接的操作网卡设备。
  • 而ifconfig xxxx up/down:则是控制物理网卡设备的开启和关闭,因此并不受配置文件的干扰。

3.4 xshell 远程连接的基本原理

  • 我们在前几节中提到过,sshd这个服务,实际上是服务器的一个守护进程。
  • 正是因为存在这个守护进程,因此服务器的22端口才会持续不断的被监听(监视)
  • 当xshell通过ssh协议访问服务器的22端口的时候,服务器的sshd服务才会马上回应这个访问,因此才能进行远程连接
  • 故,当服务器不存在sshd(把进程kill掉)这个服务时,xshell是无法通过ssh协议进行远程访问的。

如果服务器端sshd服务被未运行,那么所有通过ssh协议的访问都将失败(包含xshell)



这是一个mac的控制台的连接图通过ssh访问失败,(xshell连接的请自行尝试。)

  • 当sshd这个服务监听的不再是22端口时(通过配置文件可以改),xshell必须切换到它监听的端口进行访问才能正确连接。

小结

  • ifconfig + 网卡名:可以查看开启状态的网卡的IP地址(看不到关闭状态的网卡设备)
  • ip a:可以查看所有网卡的IP地址(还能看到关闭状态的网卡)
  • ip link:可以查看所有网卡的物理状态
  • ifup/ifdown + 网卡名:通过网卡配置文件来开启和关闭网卡设备
  • ifconfig 网卡名 up/down:直接关闭和开启网卡设备。
  • 通过kill + Pid号 或者pkill + 服务名称 来杀掉进程



    sshd服务的配置文件路径:/etc/ssh/sshd_config

    网卡的配置文件路径:/etc/sysconfig/network-scripts/ifcfg-网卡名

    netstat -antup或ps -ef :可以用来查看当前服务器开启的所有服务

3.5 故障排查

1,两个机器之间物理网络是否通畅(网线网卡,IP是否正确)

ping -t 192.168.xx.xx ====>物理网络是否通畅



2,防火墙或selinux是否处于开启状态

直接通过sed -i 操作文件永久关闭selinux(下图的enable应该是enabled

3,查看服务器的服务进程是否处于开启状态(sshd)

小结

  • 第一步:看看路是不是通的:

    ping 服务器:

排查客户端到服务器端线路问题,ping是常用的网络连通性检查工具(路通否)

tracert -d 服务器IP:跟踪路由器

路由跟踪命令,也可以检查路由是否通畅,-d 是不对域名进行解析

  • 第二步:去服务器端查看

    service iptables status

    /etc/init.d/iptalbes status

这两个命令都可以查看,等效。

linux防火墙iptables,可能好心办坏事,阻挡了远程连接,关掉防火墙,让道路畅通无阻

  • 第三步:SSH服务问题

    telnet + IP地址:查看SSH 22 端口是否打开了(客户端执行)

    nmap + IP地址 + -p 22 :扫描服务器是否开启了22端口

Linux实战教学笔记05:远程SSH连接服务与基本排错(新手扫盲篇)的更多相关文章

  1. Linux实战教学笔记05:远程SSH连接服务与基本排错

    第1章 远程连接LInux系统管理 1.1 为什么要远程连接Linux系统 在实际的工作场景中,虚拟机界面或物理服务器本地的窗口都是很少能够接触到的,因为服务器装完系统后,都要拉到IDC机房托管,如果 ...

  2. (转)远程SSH连接服务与基本排错

    远程SSH连接服务与基本排错 原文:https://www.cnblogs.com/chensiqiqi/p/6224474.html#top 1.1 为什么要远程连接Linux系统 在实际的工作场景 ...

  3. 远程SSH连接服务与基本排错

    为什么要远程连接Linux系统?? 在实际的工作场景中,虚拟机界面或物理服务器本地的窗口都是很少能够接触到的,因为服务器装完系统后,都要拉到IDC机房托管,如果是购买了云主机,更碰不到服务器本地显示器 ...

  4. Linux实战教学笔记32:企业级Memcached服务应用实践

    一, Memcached介绍 1.1 Memcached与常见同类软件对比 (1)Memcached是什么? Memcached是一个开源的,支持高性能,高并发的分布式内存缓存系统,由C语言编写,总共 ...

  5. Linux实战教学笔记

    Linux实战教学笔记01:计算机硬件组成与基本原理 Linux实战教学笔记02:计算机系统硬件核心知识 Linux实战教学笔记03:操作系统发展历程及系统版本选择 Linux实战教学笔记04:Lin ...

  6. Linux实战教学笔记24:SSH连接原理及ssh-key

    目录 第二十四节 SSH连接原理及ssh-key讲解 第1章 SSH服务 1.1 ssh介绍 1.2 知识小结 第2章 ssh结构 2.1 SSH加密技术 第3章 ssh服务认证类型 3.1 基于口令 ...

  7. Linux实战教学笔记25:自动化运维工具之ansible (一)

    第二十五节 ansible之文件的批量分发 标签(空格分隔): Linux实战教学笔记-陈思齐 ---本教学笔记是本人学习和工作生涯中的摘记整理而成,此为初稿(尚有诸多不完善之处),为原创作品,允许转 ...

  8. Linux实战教学笔记06:Linux系统基础优化

    第六节 Linux系统基础优化 标签(空格分隔):Linux实战教学笔记-陈思齐 第1章 基础环境 第2章 使用网易163镜像做yum源 默认国外的yum源速度很慢,所以换成国内的. 第一步:先备份 ...

  9. Linux实战教学笔记02:计算机系统硬件核心知识

    标签(空格分隔):Linux实战教学笔记-陈思齐 第1章 互联网企业常见服务器介绍 1.1 互联网公司服务器品牌 - DELL(大多数公司,常用) - HP - IBM(百度在用) 浪潮 联想 航天联 ...

随机推荐

  1. 理解CSS视觉格式化

    前面的话   CSS视觉格式化这个词可能比较陌生,但说起盒模型可能就恍然大悟了.实际上,盒模型只是CSS视觉格式化的一部分.视觉格式化分为块级和行内两种处理方式.理解视觉格式化,可以确定得到的效果是应 ...

  2. 移动先行之谁主沉浮? 带着你的Net飞奔吧!

    移动系源码:https://github.com/dunitian/Windows10 移动系文档:https://github.com/dunitian/LoTDotNet/tree/master/ ...

  3. div实现自适应高度的textarea,实现angular双向绑定

    相信不少同学模拟过腾讯的QQ做一个聊天应用,至少我是其中一个. 过程中我遇到的一个问题就是QQ输入框,自适应高度,最高高度为3row. 如果你也像我一样打算使用textarea,那么很抱歉,你一开始就 ...

  4. Eclipse中启动tomcat报错java.lang.OutOfMemoryError: PermGen space的解决方法

    有的项目引用了太多的jar包,或者反射生成了太多的类,异或有太多的常量池,就有可能会报java.lang.OutOfMemoryError: PermGen space的错误, 我们知道可以通过jvm ...

  5. Android 5.0 到 Android 6.0 + 的深坑之一 之 .so 动态库的适配

    (原创:http://www.cnblogs.com/linguanh) 目录: 前序 一,问题描述 二,为何会如此"无情"? 三,目前存在该问题的知名SDK 四,解决方案,1 对 ...

  6. 小兔JS教程(三)-- 彻底攻略JS回调函数

    这一讲来谈谈回调函数. 其实一句话就能概括这个东西: 回调函数就是把一个函数当做参数,传入另一个函数中.传进去的目的仅仅是为了在某个时刻去执行它. 如果不执行,那么你传一个函数进去干嘛呢? 就比如说对 ...

  7. Html.DropDownLis绑定数据库

    效果: 方法一: View: <div class="col-md-md-4"> <div class="input-group"> & ...

  8. javascript排序

    利用array中的sort()排序 w3cfunction sortNumber(a,b) { return a - b } var arr = new Array(6) arr[0] = " ...

  9. Android Studio 编译单个module

    前期自己要把gradle环境变量配置好 在Terminal中gradle命令行编译apk 输入gradle assembleRelease 会编译全部module编译单个modulecd ./xiru ...

  10. webform:图片水印、验证码制作

    一.图片水印 1:引命名空间System.Drawing; 前端代码 <div> <asp:FileUpload ID="FileUpload1" runat=& ...