在Linux下安全的工作第一步就是应该要清楚地知道在系统中有哪类服务在运行。
管理员的重要责任应包括:检查服务是否被授权,并应该鉴别那些虽非正在使用的但却是活动的服务。
存在于各种版本Linux中的Netstat作为一个网络实用程序可以帮助解决这个问题。这个小巧的工具可以告诉管理员哪些程序正在哪些端口监听,甚至可以告诉管理员程序是否正在监听Unix域套接口,要大体看一下运行在系统上的所有服务,使用如下命令:
# netstat -l
因为域套接口不是可以远程访问的,所以可以从列表中忽略,而且为了得到更有价值的信息,可以使用如下命令:
# netstat -l -p -tcp -udp
此命令不但显示了所有的正在监听的TCP和UDP套接口,而且也显示了是什么程序正在监听,以及进程的ID(即PID)。
如果想要得到一个活动的TCP和UDP连接列表,就要加上-a开关:
# netstat -a -p --tcp --udp
-a开关显示了每一个活动的连接,包含那些正在监听以及已经存在的连接。这对于决定到底有哪些程序正在监听连接是很有用的信息,它还允许管理员查看当前在系统中那些已建立的进行输出和输入的连接。