当前位置 主页 > 服务器问题 > Linux/apache问题 >

    远程SSH连接服务与基本排错经验总结(2)

    栏目:Linux/apache问题 时间:2019-11-02 09:17

    •故,当服务器不存在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