远程SSH连接服务与基本排错
为什么要远程连接Linux系统??
在实际的工作场景中,虚拟机界面或物理服务器本地的窗口都是很少能够接触到的,因为服务器装完系统后,都要拉到IDC机房托管,如果是购买了云主机,更碰不到服务器本地显示器了,此时,只能通过远程连接的方式管理Linux系统。因此,在装好linux系统后,学习Linux运维的第一步应该是配置好客户端软件远程(通过ssh软件进行连接)连接Linux系统进行管理
telnet连接服务器是明文的,非加密的; 默认为23端口
SSH连接服务器是加密的连接; 默认为22端口
ssh连接示意
- 服务器端===>通过ssh协议提供===>守护进程sshd监听22端口(不断的监听是否有人需要服务)
- 客户端(客户):ssh协议,ip地址,端口号(需要什么服务),用户名,密码
如何查看Linux系统的IP地址??
如图所示,我的Linux系统IP为192.168.179.133。
可以通过这两个命令来查看IP地址
ip地址/24:代表子网掩码255.255.255.0
lo:回环网卡:用于检测设备自测
eth0:你的第一块网卡
eth1:你的第二块网卡
ifup 网卡名与ifconfig 网络名 up的区别
假如你发现你的虚拟机没有IP地址的话,那么也许你的网卡设备处于关闭状态
方法一:ifup + 网卡名(ethx) 可以开启设备
方法二:ifconfig +网卡名(ethx)+ up 也可以开启设备
讨论
既然这两个命令都能开启成功,那么它们到底有没有区别呢?请跟随我来做个实验。
- 第一步:我们删掉eth1网卡的配置文件
/etc/sysconfig/network-scripts/:这个路径是网卡配置文件的路径,作为运维人员我们是必须熟记得
- 第二步,我们关闭eth1这个网卡设备
- 第三步,我们尝试开启这个设备
继续讨论
为什么我们的试验结果是这样的呢?当我删除了eth1这个网卡的配置文件,ifup这个命令就失灵了?
- 这是因为,ifup/ifdown这个命令控制的实际上并不是物理网卡的开启和关闭,而实际上他控制的仅仅是网卡的配置文件而已,它是通过网卡配置文件间接的操作网卡设备。
- 而ifconfig xxxx up/down:则是控制物理网卡设备的开启和关闭,因此并不受配置文件的干扰。
CRT远程连接的基本原理
- 我们在前几节中提到过,sshd这个服务,实际上是服务器的一个守护进程。
- 正是因为存在这个守护进程,因此服务器的22端口才会持续不断的被监听(监视)
- 当CRT通过ssh协议访问服务器的22端口的时候,服务器的sshd服务才会马上回应这个访问,因此才能进行远程连接
- 故,当服务器不存在sshd(把进程kill掉)这个服务时,xshell是无法通过ssh协议进行远程访问的。
当我远程用CRT执行命令kill 1486进程后,只剩下当前CRT连接Linux的sshd进程(Pid=19130)。即 我若想在CRT再开一个会话连接Linux,是绝对连不上的。
如果服务器端sshd服务被未运行,那么所有通过ssh协议的访问都将失败(包含xshell,CRT)
当sshd这个服务监听的不再是22端口时(通过配置文件可以改),CRT必须切换到它监听的端口进行访问才能正确连接。
总结:
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 :可以用来查看当前服务器开启的所有服务
故障排查(通过ssh工具无法连接Linux主机)
1、两个机器之间物理网络是否通畅(网线网卡,IP是否正确)
ping 192.168.xx.xx ====>在当前的CRT或xshell下ping Linux系统,看物理网络是否通畅
2、防火墙或selinux是否处于开启状态
SELinux(Security-Enhanced Linux)是美国国家安全局(NSA)对于强制访问控制的实现,这个功能让系统管理员又爱又恨,这里我们还是把它关闭了吧,至于安全问题,后面通过其他手段来解决,这也是大多数生产环境的做法,如果非要开启也是可以的。关闭方式如下:
命令说明
- setenforce:用于命令行管理SELinux的级别,后面的数字表示设置对应的级别
- getenforce:查看SElinux当前的级别状态
提示:修改配置SElinux后,要想使生效,必须要重启系统。因此,可配合使用setenforce 0 这个临时关闭的命令,这样在重启前后都可以使得SElinux关闭生效了,也就是说无需立刻重启服务器了,在生产环境下Linux机器是不能随意重启。
3、查看服务器的服务进程是否处于开启状态(sshd)
- netstat -antup或ps -ef :可以用来查看当前服务器开启的所有服务
4、查看服务器的ssh端口是否改变
- sshd服务的配置文件路径:/etc/ssh/sshd_config
http://www.cnblogs.com/0zcl/p/6783681.html
远程SSH连接服务与基本排错相关推荐
- linux服务器开启远程连接不上,远程SSH连接服务与基本排错经验总结
为什么要远程连接Linux系统?? 在实际的工作场景中,虚拟机界面或物理服务器本地的窗口都是很少能够接触到的,因为服务器装完系统后,都要拉到IDC机房托管,如果是购买了云主机,更碰不到服务器本地显示器 ...
- Ubuntu远程SSH连接与远程桌面连接
目录 一.查看网络信息 1.图形程序查看网络信息 2.命令查看网络信息 二.远程桌面连接 三.远程SSH连接 1.安装客户端 2.安装服务端 3.SSH客户端和服务端的区别 一.查看网络信息 1.图形 ...
- 使用nat123远程ssh连接WSL Ubuntu系统
使用nat123远程ssh连接WSL Ubuntu系统 更新 Multivation 给WSL开启ssh服务 编辑WSL的ssh_config Windows防火墙设置: 测试一下SSH能不能连接 外 ...
- 基于4G LTE模块的树莓派远程SSH连接方案(内网穿透)
关键词: 树莓派 Raspberry 4G LTE 华为 Huawei ME909 移远 EC20 公网服务器 远程连接 远程SSH MobaXterm 内网穿透 概述:树莓 ...
- ubuntu 允许ssh访问_Ubuntu开启远程SSH连接
前言 今天突然想到反正我实验室的主机一般都不会关,这样的话我不在实验室时也可以通过远程连接来控制我的机器跑代码或者做别的事情.于是我马上查找Ubuntu远程SSH连接的教程,实现了在宿舍远程登录我的实 ...
- 远程ssh连接Linux服务器,隔一段时间就断了
远程ssh连接Linux服务器,隔一段时间就断了 http://zhidao.baidu.com/link?url=DGP85x4WlVwYbdzg3HbkViPHmJo_TFkJRgUmh1 ...
- python远程ssh连接linux
python远程ssh连接linux 1.安装第三方库paramiko pip install paramiko 2.创建ssh客户端,并连接 ssh = paramiko.SSHClient()# ...
- 爱快软路由ADSL/PPPoE之“间隔时长重拨“参数设置不当导致远程ssh连接频繁断线
一台使用一年左右的软路由最近不能上线,导致通过阿里云域名访问内网设备无法实现.后台查看发现wan口拨号不成功. 网络是电信宽带.电信宽带可以4次拨号,本人网络环境共有4台路由器,以前一直正常运行,现在 ...
- 不能ssh连接ubuntu linux 服务器 secureCRT不能ssh连接服务器 不能远程ssh连接虚拟机的ubuntu linux...
我是用的是secureCRT,远程连接我的虚拟机里面的ubuntu 直接报错,连接不上 1,先分别在windows上ipconfig和ubuntu上ifconfig下 互ping一下,是可以ping通 ...
最新文章
- RISC-V的自定义CPU悖论
- python不包含某字符,查找不包含某些文本字符串的所有文本文件
- python字符集_Python任意字符集转换
- python3.6进度条_Python实现下载界面(带进度条,断点续传,多线程多任务下载等)...
- mysql数据库基本操作总结与归纳
- mysql还书过程_记一次安装 MySQL 的过程
- dotnetcore-officeaddin-toolbox : Office 365 Add-in开发人员的工具箱
- java 如何导出json文件_java导出json格式文件的示例代码
- 全国计算机一级msoffice考试内容,2015年全国计算机一级MSOffice考试大纲
- 移动开发-语音识别-调用讯飞平台提供的API
- python实现Longest Common Subsequence最长公共子序列算法
- 复制百度文库文字最简单的方法
- java爬虫 抓取国家统计局:统计用区划代码和城乡划分代码(抓取省市区镇县办事处村委会数据)生成json
- phpmyadmin mysql配置_phpmyadmin配置方式
- java.time.duration_java.time.Duration
- 大学计算机英语要求,2015级本科生大学英语、计算机分级考试要求.doc
- 学习二叉树必须知道的基本性质
- 社区综合管理系统springboot+vue
- 侍魂胧月服务器维护,侍魂胧月传说什么时候开新区 新区开服时间表
- C语言-图书管理系统
热门文章
- 优秀程序员应该做的几件事【转】
- [从菜鸟到高手演变]之智力题【史上最全】 (转)
- PTA(BasicLevel)-1007素数对猜想
- laravel 是怎么做到运行 composer dump-autoload 不清空 classmap 映射关系的呢?
- 使用opennlp进行文档分类
- 【译】Angular 5 新特性
- 从ORA-27300,ORA-27301到ORA-00064
- 怎样使用CSS3媒体查询(Media Queries)制作响应式网站
- 5.数据绑定和表单标签库
- Kinect For Windows V2开发日志一:开发环境的配置