如何关闭631端口

如何关闭631端口,第1张

查看端口运行的什么服务lsof -i :123 这个123代表你想要查看的端口号关闭linux不常用端口关闭111端口/etc/init.d/portmap stop关闭25端口/etc/init.d/sendmail srop关闭631端口/etc/init.d/cups stop关闭958端口/etc/init.d/nfslock stop关闭37540端口

常常看到有些人想要知道自己的Linux主机到底开放了多少Port?要如何来检测呢。通常我们知道的Port有下面这几个:

* ftp:21

* telnet:23

* smtp:25

* http:80

* pop-3:110

* netbios-ssn:139

* squid:3128

* mysql:3306

端口当然不只这些个,如何知道Port是否被开启呢?

检测你开启的服务有哪些?使用功能强大的 netstat 指令。

在做为服务器的Linux系统中,服务项目是越少越好!这样可以减少避免不必要的入侵通道。要了解自己的系统当中的服务项目,最简便的方法就是使用nestat 了!这个命令不但简单(是每一个Linux系统都会安装的套件!),而且功能也是很不错的,例如我们在检查WWW使用者的人数时,就很需要这个命令!好了,我们来看一下netstat 的使用方法:

复制内容到剪贴板

代码:

[root@localhost ~]# netstat

Active Internet connections (w/o servers)

Proto Recv-Q Send-Q Local Address Foreign Address Stat e

tcp0 0 ::ffff:192.168.1.178:ssh::ffff:192.168.1.175:4235 ESTA BLISHED

Active UNIX domain sockets (w/o servers)

Proto RefCnt Flags Type State I-Node Path

unix 10 [ ] DGRAM4701 /dev/log

unix 2 [ ] DGRAM5846 @/var/run/hal/hotplug_s ocket

unix 2 [ ] DGRAM2901 @udevd

unix 3 [ ] STREAM CONNECTED 5845 /var/run/dbus/system_bu s_socket

unix 3 [ ] STREAM CONNECTED 5844

unix 3 [ ] STREAM CONNECTED 5792 /var/run/dbus/system_bu s_socket

unix 3 [ ] STREAM CONNECTED 5791

unix 3 [ ] STREAM CONNECTED 5724

unix 3 [ ] STREAM CONNECTED 5723

如上所示,单纯使用 netstat 的时候,仅 列出目前已经连通的服务与服务名称。所以你可以看到,由于目前仅有一个ssh连接成功,所有就只显示出一个 ESTABLISHED(连接中的意思)。 上面的 :

复制内容到剪贴板

代码:

tcp0 0 ::ffff:192.168.1.178:ssh::ffff:192.168.1.175:4235

这一行表示有一个SSH的服务开放,是由远端的 192.168.1.175这个IP连接到 192.168.1.178 的。而连接的端口是4235。那如果我需要将所有的项目列出来呢?

复制内容到剪贴板

代码:

[root@localhost ~]# netstat -a

Active Internet connections (servers and established)

Proto Recv-Q Send-Q Local Address Foreign Address Stat e

tcp0 0 *:32768 *:* LIST EN

tcp0 0 *:sunrpc*:* LIST EN

tcp0 0 *:auth *:* LIST EN

tcp0 0 localhost.localdomain:ipp *:* LIST EN

tcp0 0 localhost.localdomain:smtp *:* LIST EN

tcp0 0 *:ssh *:* LIST EN

tcp0 0 ::ffff:192.168.1.178:ssh::ffff:192.168.1.175:1237 ESTA BLISHED

udp0 0 *:32768 *:*

udp0 0 *:955 *:*

udp0 0 *:sunrpc*:*

udp0 0 *:ipp *:*

如上所示,加入 -a(all)就可以了。将所有在机器上 (监听 Listem)或者是(已建立连接的)的服务通通列出的意思。不过,服务的名称已经使用 /etc/services 里面的名称了,而不是使用 port 的数字!目前我主机上面的服务共开放了:sunrpc、auth、ssh、ipp、smtp.等服务(就是 Listen的那几个服务)至于已经建立的服务就只有 SSH 这一个!那如果我想知道开放了哪些端口号呢?呵呵,就使用下面的命令吧!

复制内容到剪贴板

代码:

[root@localhost ~]# netstat -an

Active Internet connections (servers and established)

Proto Recv-Q Send-Q Local Address Foreign Address State

tcp0 0 0.0.0.0:32768 0.0.0.0:* LISTEN

tcp0 0 0.0.0.0:111 0.0.0.0:* LISTEN

tcp0 0 0.0.0.0:113 0.0.0.0:* LISTEN

tcp0 0 127.0.0.1:631 0.0.0.0:* LISTEN

tcp0 0 127.0.0.1:250.0.0.0:* LISTEN

tcp0 0 :::22 :::*LISTEN

tcp0 52 ::ffff:192.168.1.178:22 ::ffff:192.168.1.175:1237 ESTABLISHED

udp0 0 0.0.0.0:32768 0.0.0.0:*

udp0 0 0.0.0.0:955 0.0.0.0:*

udp0 0 0.0.0.0:111 0.0.0.0:*

udp0 0 0.0.0.0:631 0.0.0.0:*

如上所示,我接通的服务只有22这一个,而其它的你可以参照上面的命令输出结果来对照,所以你就可以知道:smtp为25端口。因此,通过使用此命令,就可以轻易的子解目前主机的运作状况与服务状态了。当然了,netstat的用途不止于此,你可以使用 man netstat 来查阅一番喔!相信对你的主机会有更大的了解。

相信有不少的朋友都会有这个困扰,就是要怎样删除已经建立的联机呢?因为总有些不速之客会连到您的主机来进行一些破坏的工作!或者是您根本不想让对方联机过来!呵呵!还记得 鸟哥的 Linux 私房菜--基础学习篇内的资源管理 里面提到的几个常用的指令吧!?那就是找出那个联机程序的 PID ,然后给他 kill 掉就是了!简单呀!不过,大问题是『我要怎样找出联机的 PID 呀!?』呵呵!由于 PID 的管理与整体的系统资源有关,这个时候,虽然可以使用 netstat 来观察 PID ,不过只有 root 可以观察到联机状态的 PID 号码呦!( 注:还记得资源管理提及的 PID 概念吗?就是说,在 Linux 系统之内,每个『程序』系统都会给予一个号码来管理!这个就是 PID 啰!)

复制内容到剪贴板

代码:

[root@test root]# netstat -ap

Active Internet connections (servers and established)

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

tcp0 0 *:ssh *:* LISTEN 32149/sshd

tcp0284 140.116.141.19:ssh 192.168.1.11:1391 ESTABLISHED 24751/sshd

Active UNIX domain sockets (servers and established)

Proto RefCnt Flags Type State I-Node PID/Program namePath

unix 7 [ ] DGRAM944509/syslogd /dev/log

unix 2 [ ] DGRAM3035915 16648/xinetd

unix 2 [ ] DGRAM739227 5951/pppoe

unix 2 [ ] DGRAM739189 5949/pppd

unix 2 [ ] DGRAM1070 628/crond

unix 2 [ ] DGRAM953514/klogd

unix 2 [ ] STREAM CONNECTED 6901/init [3]

看到上面那个斜体字的联机建立的网络状态了吗?嘿嘿!最后面一栏就是显示那个 PID/Program name ,那个 PID ( 上面是 24751 )也就是我们要来砍掉的啦!这个时候,如果要将该联机砍掉时,就直接以 kill 来做吧!

复制内容到剪贴板

代码:

[root@test root]# kill -9 24751

这样就能将该联机给他『踢出去』您的主机啦!! ^_^""

Linux如何查看端口

1、lsof -i:端口号 用于查看某一端口的占用情况,比如查看8000端口使用情况,lsof -i:8000

# lsof -i:8000

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME

lwfs22065 root6u IPv4 4395053 0t0 TCP *:irdmi (LISTEN)

可以看到8000端口已经被轻量级文件系统转发服务lwfs占用

2、netstat -tunlp |grep 端口号,用于查看指定的端口号的进程情况,如查看8000端口的情况,netstat -tunlp |grep 8000

# netstat -tunlp

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

tcp0 0 0.0.0.0:111 0.0.0.0:* LISTEN 4814/rpcbind

tcp0 0 0.0.0.0:59080.0.0.0:* LISTEN 25492/qemu-kvm

tcp0 0 0.0.0.0:69960.0.0.0:* LISTEN 22065/lwfs

tcp0 0 192.168.122.1:530.0.0.0:* LISTEN 38296/dnsmasq

tcp0 0 0.0.0.0:22 0.0.0.0:* LISTEN 5278/sshd

tcp0 0 127.0.0.1:631 0.0.0.0:* LISTEN 5013/cupsd

tcp0 0 127.0.0.1:250.0.0.0:* LISTEN 5962/master

tcp0 0 0.0.0.0:86660.0.0.0:* LISTEN 44868/lwfs

tcp0 0 0.0.0.0:80000.0.0.0:* LISTEN 22065/lwfs

# netstat -tunlp | grep 8000

tcp0 0 0.0.0.0:80000.0.0.0:* LISTEN 22065/lwfs

说明一下几个参数的含义:

-t (tcp) 仅显示tcp相关选项

-u (udp)仅显示udp相关选项

-n 拒绝显示别名,能显示数字的全部转化为数字

-l 仅列出在Listen(监听)的服务状态

-p 显示建立相关链接的程序名

附加一个python端口占用监测的程序,该程序可以监测指定IP的端口是否被占用。

1 #!/usr/bin/env python

2 # -*- coding:utf-8 -*-

3

4 import socket, time, thread

5 socket.setdefaulttimeout(3) #设置默认超时时间

6

7 def socket_port(ip, port):

8 """

9 输入IP和端口号,扫描判断端口是否占用

10 """

11 try:

12 if port >=65535:

13 print u'端口扫描结束'

14 s=socket.socket(socket.AF_INET, socket.SOCK_STREAM)

15 result=s.connect_ex((ip, port))

16 if result==0:

17 lock.acquire()

18 print ip,u':',port,u'端口已占用'

19 lock.release()

20 except:

21 print u'端口扫描异常'

22

23 def ip_scan(ip):

24 """

25 输入IP,扫描IP的0-65534端口情况

26 """

27 try:

28 print u'开始扫描 %s' % ip

29 start_time=time.time()

30 for i in range(0,65534):

31 thread.start_new_thread(socket_port,(ip, int(i)))

32 print u'扫描端口完成,总共用时:%.2f' %(time.time()-start_time)

33 # raw_input("Press Enter to Exit")

34 except:

35 print u'扫描ip出错'

36

37 if __name__=='__main__':

38 url=raw_input('Input the ip you want to scan: ')

39 lock=thread.allocate_lock()

40 ip_scan(url)

该程序执行结果如下:

# python scan_port.py

Input the ip you want to scan: 20.0.208.112

开始扫描 20.0.208.112

20.0.208.112 : 111 端口已占用

20.0.208.112 : 22 端口已占用

20.0.208.112 : 8000 端口已占用

20.0.208.112 : 15996 端口已占用

20.0.208.112 : 41734 端口已占用

扫描端口完成,总共用时:9.38


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/7604950.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-07
下一篇2023-04-07

发表评论

登录后才能评论

评论列表(0条)

    保存