当前位置:首页 » 操作系统 » linux程序端口

linux程序端口

发布时间: 2022-12-12 10:27:17

linux开启80端口3306端口的方法是什么

防火墙借由监测所有的封包并找出不符规则的内容,可以防范电脑蠕虫或是木马程序的快速蔓延。Linux下在防火墙中开启80端口、3306端口的方法,需要的朋友可以参考下

具体介绍

vi /etc/sysconfig/iptables

-A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT(允许80端口通过防火墙)

-A INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT(允许3306端口通过防火墙)

特别提示:很多网友把这两条规则添加到防火墙配置的最后一行,导致防火墙启动失败,正确的应该是添加到默认的22端口这条规则的下面

添加好之后防火墙规则如下所示:

复制代码代码如下:

# Firewall configuration written by system-config-firewall

# Manual customization of this file is not recommended.

*filter

:INPUT ACCEPT [0:0]

:FORWARD ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

-A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT

-A INPUT -p icmp -j ACCEPT

-A INPUT -i lo -j ACCEPT

-A INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT

-A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT

-A INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT

-A INPUT -j REJECT –reject-with icmp-host-prohibited

-A FORWARD -j REJECT –reject-with icmp-host-prohibited

COMMIT

/etc/init.d/iptables restart

#最后重启防火墙使配置生效

补充阅读:防火墙主要使用技巧

一、所有的防火墙文件规则必须更改。

尽管这种方法听起来很容易,但是由于防火墙没有内置的变动管理流程,因此文件更改对于许多企业来说都不是最佳的实践方法。如果防火墙管理员因为突发情况或者一些其他形式的业务中断做出更改,那么他撞到枪口上的可能性就会比较大。但是如果这种更改抵消了之前的协议更改,会导致宕机吗?这是一个相当高发的状况。

防火墙管理产品的中央控制台能全面可视所有的防火墙规则基础,因此团队的所有成员都必须达成共识,观察谁进行了何种更改。这样就能及时发现并修理故障,让整个协议管理更加简单和高效。

二、以最小的权限安装所有的访问规则。

另一个常见的安全问题是权限过度的规则设置。防火墙规则是由三个域构成的:即源(IP地址),目的地(网络/子网络)和服务(应用软件或者其他目的地)。为了确保每个用户都有足够的端口来访问他们所需的系统,常用方法是在一个或者更多域内指定打来那个的目标对象。当你出于业务持续性的需要允许大范围的IP地址来访问大型企业的网络,这些规则就会变得权限过度释放,因此就会增加不安全因素。服务域的规则是开放65535个TCP端口的ANY。防火墙管理员真的就意味着为黑客开放了65535个攻击矢量?

三、根据法规协议和更改需求来校验每项防火墙的更改。

在防火墙操作中,日常工作都是以寻找问题,修正问题和安装新系统为中心的。在安装最新防火墙规则来解决问题,应用新产品和业务部门的过程中,我们经常会遗忘防火墙也是企业安全协议的物理执行者。每项规则都应该重新审核来确保它能符合安全协议和任何法规协议的内容和精神,而不仅是一篇法律条文。

四、当服务过期后从防火墙规则中删除无用的规则。

② Linux下端口如何分配

我们知道建立一个socket连接进行网络通讯时需要四个元素client_ip:client_port<----->server_ip:server_port,socket绑定一个端口号用于标识进程。我一直好奇在linux平台上运行时进程的端口如何分配的?如何才能避免端口占用冲突?

要想了解这些答案需要先了解Linux下端口范围多少?如何修改端口范围?一个进程的端口如何分配的?最后了解linux系统下端口如何分配的?

1)查看端口范围:sysctl -a | grep range

2)修改端口范围:sysctl.conf

vi /etc/sysctl.conf

net.ipv4.ip_local_port_range=32788 60000

配置立即生效:sysctl -p

另外,端口范围不要超过1024  65535,1024以下系统使用,65535以上设置会提示失败。

程序的端口分配分为固定分配和自动分配两种。一套系统中固定端口是要进行规划的,比如ftp的端口为10021(控制连接时服务端的),控制连接时客户端的端口就可以随机分配。ftp数据连接如果在被动模式下服务端和客户端的端口都可以随机分配,如果在主动模式下,服务端的端口可以固定分配,客户端的端口随机分配。

固定分配,一般在服务端的进程启动时分配端口,用于创建socket进行监听客户端,如ftp配置文件中的listen_port=10021,http默认的是80,snmp管理的 trap端口是162和snmp agent端口是161。

自动分配,创建进程即建立socket用于通讯,比如ftp服务端的数据连接进程,会从linux sysctl.conf定义的端口范围,自动来分配端口,调用bind进行端口绑定。但有时候不进行绑定端口也能正常工作,这是因为协议栈对没有端口绑定的socket进行了自动绑定。每次调用第4层协议的sendmsg成员函数时,会进行端口号的检查,如果没有绑定就调用协议的成员函数get_port进行自动绑定。

③ linux查看端口占用的方法 linux查看哪个端口占用

使用lsof命令:lsof -i :port_number |grep (LISTEN);-i是用来查找和网络相关的文件,:号是必须的,它是标志你查找的是一个端口。port_number就是你要查找的端口号,譬如你要查找是否有程序占用了oracle的监听端口1521,就可以使用lsof -i :1521 |grep (LISTEN)。如果有程序已经占用了,那么下面打印的第二个字段就是该程序的进程id,第一个字段是进程的名字。

④ linux常用端口号(1)

1.FTP:文件传输协议

        协议名:FTP

        软件名:vsftpd

        FTP端口:控制端口  21/TCP        数据端口:20/TCP

        FTP默认端口号为21/tcp

        TFTP        默认端口号为69/UDP

2.SSH (安全登录),SCP(文件传输),端口号重定向,默认的端口号为22/TCP

        SSH是少数被许可穿越防火墙的协议之一。通常的做法是不限制出站的SSH连接,而入站的SSH连接通常会限制到一台或者少数几台服务器上。

3.Telnet使用23端口:Telnet是一种远程登录的端口,用户可以以自己的身份远程连接到计算机上,通过这种端口可以提供一种基于DOS模式下的通信服务。

4.NFS(网络文件系统):让网络上的不同Linux/UNIX系统及其实现文件共享

        NFS本身只是一种文件系统,没有提供文件传输的功能,但却能让我们文件共享,原因在于NFS使用RPC服务,用到NFS的地方需要启动RPC服务,无论是NFS客户端还是服务端。

        NFS和RPC的关系:NFS是一个文件系统,负责管理分享的目录,RPC负责文件的传递。

        NFS启动时至少有RPC.NFSD和RPC.mountd,2个daemon

        rpc.nfsd主要管理客户机登录NFS服务器时,判断客户机是否能登录,和客户机ID信息。

        rpc.mountd主要管理nfs的文件系统,当客户机顺利登录NFS服务器时,会去读/etc/exports文件中的配置,然后去对比客户机的权限。

        协议使用端口:

            RPC:  111  TCP/UDP    

            NFSD:  2049  TCP/UDP

            mountd:  RPC服务在NFS服务启动时默认会为mountd动态选取一个随机端口(32768--65535)来进行通讯,可以在/etc/nfsmount.conf文件中指定mount的端口。

5.NTP (网络时间协议)

        他的目的是国际互联网上传递统一,标准的时间。

        NTP同时同步指的是通过网络的NTP协议和时间源进行时间校准,前提条件,事件源输出必须通过网络接口,数据输出格式必须符合NTP协议。

        区域网内所有的PC,服务器和其他设备通过网络与时间服务器保持同步,NTP协议自动判断网络延时,并给得到的数据进行时间补偿,从而使区域网内设备时间保持统一标准。

        端口: 123/UDP

6.DNS   域名系统

        该系统用于命名组织到域层次结构中的计算机和网络服务。

        在Internel上域名和IP地址是一一对应的,域名虽然便于人们记忆,但机器之间只能互相认识IP地址,他们之间的转换工作称为域名解析,域名解析需要专门的域名解析服务器来完成。

    DNS运行在UDP协议之上,使用端口号53.

    在传输层TCP提供端到端可靠的服务,在UDP端提供尽力而为的服务,其控制端口作用于UDP端口53.

    UDP53:        解析客户端的域名用UDP(速度快)

    TCP53        主从用(安全性较高)

7.PHP-FPM是一个PHPFastCGI

        默认端口:9000/TCP

8.SMTP: 是一种提供可靠且有效电子邮件传输协议。SMTP是建模在FTP文件传输服务上的一种邮件服务,主要用于传输系统之间的邮件信息并提供来信相关的通知

       SMTP:  端口号:25 /TCP  发邮件

        POP3:  端口号:TCP/25   收邮件

        IMAP4  端口号: TCP/143  用来提供发邮件支持附件用的。

9.Samba:

        137(UDP) ,  138(UDP) 

        139(TCP) ,   445(TCP) 提供文件共享功能

        137udp,138udp提供ip地址到主机名解析的功能

        901(TCP)

10.Mycat

        代替昂贵的Oracle的MySQL集群中间件

        默认端口8066连接Mycat

        9066管理端口

⑤ Linux查看进程占用端口号(linux查看进程占用端口情况)

1、Linux查看进程占用端口号。

2、linux查看进程占用端口grep。

3、linux查看进程占用的端口。

4、查看端口占用的进程。

1."linux查看进程占用端口,为您提供linux查看进程占用端口图文信息,打开linux系统,在linux的桌面的空白处右击。

2.在弹出的下拉选项里,点击打开终端。

3.在终端窗口中输入lsof-i+端口号,回车后即可查看端口的占用情况。

⑥ linux查看端口占用情况

一、常用命令:

1,lsof -i端口号

2,netstat -tunlp|grep 端口号

这两个命令都可以查看端口被什么进程占用。

二、lsof -i 需要 root 用户的权限来执行,如下图:


三、netstat命令

netstat -tunlp用于显示 tcp,udp 的端口和进程等相关情况。

netstat 查看端口占用语法格式:

netstat -tunlp | grep 端口号

(6)linux程序端口扩展阅读

一、更多 lsof 的命令扩展

1、lsof -i:8080:查看8080端口占用

2、lsof abc.txt:显示开启文件abc.txt的进程

3、lsof -c abc:显示abc进程现在打开的文件

4、lsof -c -p 1234:列出进程号为1234的进程所打开的文件

5、lsof -g gid:显示归属gid的进程情况

6、lsof +d /usr/local/:显示目录下被进程开启的文件

7、lsof +D /usr/local/:同上,但是会搜索目录下的目录,时间较长

8、lsof -d 4:显示使用fd为4的进程

9、lsof -i -U:显示所有打开的端口和UNIX domain文件

二、更多netstat命令

1、netstat -ntlp //查看当前所有tcp端口

2、netstat -ntulp | grep 80 //查看所有80端口使用情况

3、netstat -ntulp | grep 3306 //查看所有3306端口使用情况

三、关闭端口

1、在查到端口占用的进程后,如果你要杀掉对应的进程可以使用 kill 命令:

kill -9 PID

2、如上实例,我们看到 8000 端口对应的 PID 为 26993,使用以下命令杀死进程:

kill -9 26993

⑦ Linux查看端口号命令(查看进程命令(linux查看端口号的命令)

1、linux 端口查看命令。

2、Linux查看端口号。

3、怎么查看linux端口号。

4、如何查看linux端口号。

1."linux查看端口号命令,为您提供linux查看端口号命令图文信息,打开linux系统,在linux的桌面的空白处右击。

2.在弹出的下拉选项里,点击打开终端。

3.在终端窗口中输入cat/etc/services命令,回车后即可查看到服务器端口。

⑧ linux查看运行的端口命令

一、使用 netstat 检查端口
netstat 是一个命令行工具,可以提供有关网络连接的信息。
要列出正在侦听的所有 TCP 或 UDP 端口,包括使用端口和套接字状态的服务,请使用以下命令:
netstat -tunlp
此命令中使用的选项具有以下含义:
-t - 显示 TCP 端口。
-u - 显示 UDP 端口。
-n - 显示数字地址而不是主机名。
-l - 仅显示侦听端口。
-p - 显示进程的 PID 和名称。仅当您以 root 或 sudo 用户身份运行命令时,才会显示此信息。
查询指定端口通过grep过滤:
netstat -tnlp | grep :80
二、使用 ss 检查端口
ss 是新的 netstat,命令选项大致相同。它缺少一些 netstat 功能,但暴露了更多的 TCP 状态,而且速度稍快。《Linux就该这么学》 一起学习linux
使用示例:ss -tunlp
三、使用 lsof 检查端口
lsof 是一个功能强大的命令行实用程序,它提供有关进程打开的文件的信息。
在 Linux 中,一切都是文件,可以将套接字视为写入网络的文件。
要使用 lsof 获取所有侦听 TCP 端口的列表:
lsof -nP -iTCP -sTCP:LISTEN
使用的选项如下:
-n - 不要将端口号转换为端口名称。
-p - 不要解析主机名,显示数字地址。
-iTCP -sTCP:LISTEN - 仅显示 TCP 协议状态为 LISTEN 的网络文件。
要查找正在侦听特定端口(例如 3306)的进程,请使用以下命令:
sudo lsof -nP -iTCP:3306 -sTCP:LISTEN

⑨ linux下进程端口号查看

一、查看进程占用的端口号
1、查看程序对应的进程号:ps -ef | grep 进程名字
2、查看进程号所占用的端口号:netstat -nltp | grep 进程号
3、通过进程号查询进程信息:ps -ef | grep 进程号

二、查看端口号所使用的进程号
1、使用lsof命令:lsof -i:端口号
使用netstat -nltp 也是可以做的
2、查看所有的进程占用的端口号:lsof -i

⑩ linux怎么查看进程占用端口

1. ss命令简介

ss 是 Socket Statistics 的缩写。ss 命令可以用来获取 socket 统计信息,它显示的内容和 netstat 类似。但 ss 的优势在于它能够显示更多更详细的有关 TCP 和连接状态的信息,而且比 netstat 更快。当服务器的 socket 连接数量变得非常大时,无论是使用 netstat 命令还是直接 cat /proc/net/tcp,执行速度都会很慢。ss 命令利用到了 TCP 协议栈中 tcp_diag。tcp_diag 是一个用于分析统计的模块,可以获得 Linux 内核中第一手的信息,因此 ss 命令的性能会好很多。

ss命令简介

2. 常用选项

-h, --help 帮助

-V, --version 显示版本号

-t, --tcp 显示 TCP 协议的 sockets

-u, --udp 显示 UDP 协议的 sockets

-x, --unix 显示 unix domain sockets,与 -f 选项相同

-n, --numeric 不解析服务的名称,如 "22" 端口不会显示成 "ssh"

-l, --listening 只显示处于监听状态的端口

-p, --processes 显示监听端口的进程(Ubuntu 上需要 sudo)

-a, --all 对 TCP 协议来说,既包含监听的端口,也包含建立的连接

-r, --resolve 把 IP 解释为域名,把端口号解释为协议名称

3. 常见用法

如果不添加选项 ss 命令默认输出所有建立的连接(不包含监听的端口),包括 tcp, udp, and unix socket 三种类型的连接:

3.1 查看前5名的连接:

Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port

u_str ESTAB 0 0 * 20040 * 20041

u_str ESTAB 0 0 * 20030 * 20031

u_str ESTAB 0 0 * 20044 * 20043

u_str ESTAB 0 0 /run/dbus/system_bus_socket 18592 * 18591

3.2 查看主机的监听端口

State Recv-Q Send-Q Local Address:Port Peer Address:Port

LISTEN 0 128 127.0.0.1:9016 :

LISTEN 0 128 127.0.0.1:9017 :

LISTEN 0 100 127.0.0.1:25 :

LISTEN 0 128 127.0.0.1:9018 :

LISTEN 0 128 127.0.0.1:1723 :

LISTEN 0 128 127.0.0.1:9019 :

3.3 linux查看tcp连接

ESTAB 0 0 ::1:ssh ::1:53238

ESTAB 0 0 ::1:53278 ::1:ssh

ESTAB 0 0 ::1:ssh ::1:53280

ESTAB 0 0 ::1:53288 ::1:ssh

ESTAB 0 0 ::1:ssh ::1:53296

ESTAB 0 0 ::1:53294 ::1:ssh

ESTAB 0 0 ::1:48456 ::1:ssh

ESTAB 0 0 ::1:53286 ::1:ssh

ESTAB 0 0 ::1:53292 ::1:ssh

ESTAB 0 0 ::1:ssh ::1:53272

linux查看tcp连接

3.4 解析IP和端口号

使用-r选项

State Recv-Q Send-Q Local Address:Port Peer Address:Port

LISTEN 0 128 my_public_ip:9016 :

LISTEN 0 128 my_public_ip:9017 :

LISTEN 0 100 localhost:smtp :

LISTEN 0 128 my_public_ip:9018 :

LISTEN 0 128 my_public_ip:pptp :

LISTEN 0 128 my_public_ip:9019 :

linux查看监听端口

3.5 输出时带进程名称

使用-p选项

Total: 2340 (kernel 2365)

TCP: 2126 (estab 72, closed 23, orphaned 1, synrecv 0, timewait 2/0), ports 0

Transport Total IP IPv6

3.6 根据条件过滤输出结果

可以通过语法过滤输出结果,根据源IP、源端口、目标IP、目标端口

src源

dst目标

ss dst 172.16.26.33

ss dst 172.16.26.43:http

ss dst 172.16.26.43:443

3.7 根据源端口号范围输出:

根据目标端口号范围输出:

ss dport OP PORT

OP 可以代表以下任意一个:

<=le小于或等于某个端口号 >=ge大于或等于某个端口号==eq等于某个端口号!=ne不等于某个端口号>gt大于某个端口号<lt小于某个端口号

比如:

输出源端口号小于8080的连接状态

或者

3.8 根据TCP 的状态进行过滤

ss命令还可以根据TCP连接的状态进行过滤,支持的 TCP 协议中的状态有:

established

syn-sent

syn-recv

fin-wait-1

fin-wait-2

time-wait

closed

close-wait

last-ack

listening

closing

除了上面的 TCP 状态,还可以使用下面这些状态:

状态输出结果 all输出所有TCP状态。connected输出已经建立连接的TCP状态。synchronized输出同步状态的连接。bucket输出maintained的状态,如:time-wait 和 syn-recv。big输出与bucket相反的状态。

只输出ipv4状态:

只输出ipv6状态:

输出ipv4监听状态:

3.9 根据TCP状态和端口号进行过滤

输入出ipv4协议下的ssh监听状态:

或者

要么使用转义小括号,要么使用单引号

查看所有已经建立TCP三次握手的HTTP连接:

查看所有正在进程的ssh连接:

4. 总结

ss 命令功能丰富并且性能出色,完全可以替代 netsate 命令。已经成为我们日常查看 socket 相关信息的利器。未来netstat已经慢慢被ss取代。

https://www.linuxrumen.com/cyml/821.html

热点内容
我的世界电脑服务器需要正版吗 发布:2025-05-15 14:38:53 浏览:694
大华录像机哪里有安卓设备 发布:2025-05-15 14:25:06 浏览:808
录制脚本方案 发布:2025-05-15 14:25:04 浏览:165
奇石脚本业 发布:2025-05-15 14:23:44 浏览:680
android中的socket 发布:2025-05-15 14:22:15 浏览:409
apph5源码 发布:2025-05-15 14:19:51 浏览:666
2d游戏按键精灵脚本教程 发布:2025-05-15 14:10:15 浏览:279
服务器上的邮件如何销毁 发布:2025-05-15 14:02:49 浏览:138
饥荒安卓版如何解除手柄模式 发布:2025-05-15 14:02:05 浏览:113
算法强化班 发布:2025-05-15 14:02:04 浏览:346