检测linux网络服务是否开启的shell脚本(图文)

发布时间:2019-11-02编辑:脚本学堂
本文介绍下,用于检测linux主机中的网络服务是否开启的一段shell脚本,有需要的朋友参考下。

概述:
linux下,一个网络服务开启以后,会有一个服务名和端口号。
只要查看服务名,根据服务名来判断服务,可以判断服务是否开启。
另外每个服务的端口都是特定的,也可以利用端口来查看服务是否开启。

本文分享的这个shell/ target=_blank class=infotextkey>shell脚本,使用端口号来查询某一服务的开启状态。

查询主机启动的端口,使用命令:
 

复制代码 代码示例:
netstat -tuln

如下图:
 

查看主机启动的端口

其中:127.0.0.1是针对本机开放,0.0.0.0是针对整个internet开放

常用端口:
80    www
22    ssh
21    ftp
25    mail
111   RPC远程过程调用
631   CUPS打印服务

Shell脚本的代码如下:
 

复制代码 代码示例:

#!/bin/bash
#filename chk_services.sh
#检测网络服务的开启状态
#edit by www.jb200.com

PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin

export PATH

testing=$(netstat  -tuln|grep”:80”)    #侦测80端口是否开启

if[”testing”!=””];then

echo “WWW is running in your system.”

fi

testing =$(netstat -tuln|grep”:22”)    #检测22端口是否开启

if[”testing”!=””];then

echo”SSH is running in you system”

fi

testing=$(netstat -tuln|grep”:21”)    #检测21端口是否开启

if[”testing”!=””];then

echo”FTP is running in your system”