首页 > 系统相关 >Linux端口

Linux端口

时间:2023-06-19 11:23:08浏览次数:40  
标签:显示 扫描 netstat TCP 端口 Linux ping

端口

端口是计算机和外部交互的出入口,可以分为物理端口和虚拟端口。

  • 物理端口:USB、HDMI、DP、VGA、RJ45等。
  • 虚拟端口:操作系统和外部交互的出入口。

端口的分类

Linux系统是一个超大号小区,可以支持0到65535个端口,这6万多个端口分为3类进行使用。

  • 公认端口:1~1023,通常用于一些系统内置或知名程序的预留使用,如SSH服务的22端口,HTTPS服务的443端口,非特殊需要,不要占用这个范围的端口。
  • 注册端口:1024~49151,通常可以随意使用,用于松散的绑定一些程序、服务。
  • 动态端口:49152~65535,通常不会固定绑定程序,而是当程序对外进行网络链接时,用于临时使用。

IP与端口的关系

IP地址和端口号一起用于标识和寻址网络中的设备和应用程序。

在网络通信中,每个设备都有一个唯一的IP地址,用于在网络中定位设备。

而每个应用程序都可以通过不同的端口号与网络进行通信。

总之,IP只能确定计算机,通过端口才能锁定要交互的程序



扫描端口命令

nmap命令

是一款开源的网络探测和安全审核的工具,它的设计目标是快速地扫描大型网络。

  • 安装nmap:yum install nmap -y
语法:nmaap [选项] 目标

扫描选项

  • 常用参数

    • -v:显示扫描过程。

    • -p:指定端口。

    • -A:全面系统检测,启用脚本检测,扫描等。

    • -sT:基本 TCP 扫描方式。这方式会在目标主机的日志中会记录大批的连接请求以及错误信息。

    • -sS:半开扫描 (half-open)。很少有系统能够把这记入系统日志。需要 root 权限。

    • -sF,-sX,-sN:秘密 FIN 数据包扫描、圣诞树 (Xmas Tree)、空 (Null) 扫描模式。

    • -O:启用远程操作系统检测,存在误报(-osscan-guess猜测最接近目标匹配操作系统类型)。

    • -iL:读取主机列表。

    • -sU:UDP 扫描,想知道在某台主机上提供哪些 UDP(用户数据报协议,RFC768) 服务,可用此选项。

    • -sA:ACK 扫描,这项高级的扫描方法通常可以用来穿过防火墙规则集。

    • -Pn:扫描之前不需要用ping命令,有些防火墙禁止ping命令,可以使用此选项。

    • -oN,-oX,-oG:将报告写入文件,分别是正常,XML,grepable三种格式。

  • Ping扫描

    • -sP:ping 扫描,用 ping 方式检查网络上哪些主机正在运行。

    • -PB:这是默认的 ping 扫描选项。它使用 ACK(-PT) 和 ICMP(-PI) 两种扫描类型并行扫描。如果防火墙能够过滤其中一种包,使用这种方法,你就能够穿过防火墙。

    • -P0:在扫描之前,不 ping 主机。

    • -PT:扫描之前,使用 TCP ping 确定哪些主机正在运行。

示例

  • 简单扫描(只能扫描工具规定的一些常见端口)

    image-20230616164006163

netstat命令

用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。

  • 安装netstat:yum install net-tools -y
语法:netstat [-rgsM...] 

命令选项

  • -r:显示路由表信息。
  • -g:显示多重广播功能群组组员名单。
  • -s:按照每个协议来分类进行统计。默认的显示IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP和UDPv6 的统计信息。
  • -M:显示网络内存的集群池统计信息。
  • -v:命令显示每个运行中的基于公共数据链路接口的设备驱动程序的统计信息。
  • -W:不截断IP地址。
  • -n:进制使用域名解析功能。链接以数字形式展示(IP地址),而不是通过主机名或域名形式展示。
  • -N:解析硬件名称。
  • -e:显示额外信息。
  • -p:与链接相关程序名和进程的PID。
  • -t:所有的 tcp 协议的端口。
  • -x:所有的 unix 协议的端口。
  • -u:所有的 udp 协议的端口。
  • -o:显示计时器。
  • -c:每隔一个固定时间,执行netstat命令。
  • -l:显示所有监听的端口。
  • -a:显示所有链接和监听端口。
  • -F:显示转发信息库(默认)。
  • -C:显示路由缓存而不是FIB。
  • -Z:显示套接字的SELinux安全上下文。

示例

  • 输入 netstat 命令后

    image-20230619095542624

    状态分为

    • LISTENING:FTP服务启动后首先处于监听状态。
    • ESTABLISHED:建立连接,表示两台机器正在通信。
    • CLOSE_WAIT:对方主动关闭连接或者网络异常导致连接中断,此时我方要调用close()来使得连接正确关闭。
    • TIME_WAIT:我方主动调用close()断开连接。
    • SYN_SENT:请求连接,此时状态为SYN_SENT,如果连接成功了就变为ESTABLISHED。
  • netstat -anp:显示系统端口使用情况

    image-20230619095015779
  • netstat -nupl:UDP类型的端口

    image-20230619100931341
  • netstat -ntpl:TCP类型的端口

    image-20230619101003067
  • netstat -l:只显示所有监听端口

    image-20230619101100724
  • netstat -lt:只显示所有监听tcp端口

    image-20230619101148099

标签:显示,扫描,netstat,TCP,端口,Linux,ping
From: https://www.cnblogs.com/KeFeng/p/17490664.html

相关文章

  • Linux操作系统加固建议
    1.1.1口令锁定策略1、执行备份(1)、redhat执行备份:#cp-p/etc/pam.d/system-auth/etc/pam.d/system-auth_bak(2)、SUSE9:#cp-p/etc/pam.d/passwd/etc/pam.d/passwd.bak(3)、SUSE10:#cp-p/etc/pam.d/common-password/etc/pam.d/comm......
  • linux免密登录 .ssh 密钥
    1、密钥对制作yum-yinstallsshpass免交互创建密钥对ssh-keygen-tdsa-f~/.ssh/id_dsa-P""ll.ssh/2、密钥分发ssh-copy-id-i~/.ssh/[email protected].$ip免交互方式批量分发公钥##!/bin/bash## createkeyp......
  • linux2.6内核中如何添加新的文件系统
    《边干边学-linux内核指导》中教授了如何在2.4内核中添加myext2文件系统的方法。2.6内核中文件组织稍有变化,通过试验,方法如下:1.将fs/ext2拷贝一份为fs/myext22.cdfs/myext23.sed-i"s/ext2/myext2/g"*     //将fs/myext2目录下出现的所有ext2替换为myext24.sed-i"......
  • Linux系统调用的数量变化
     从2.4的190个到2.6的300多个,越来越多的系统调用数一方面大大增强了Linux对应用的支持,另外一方面也给应用的移植带来了很大的挑战。 source:http://www.cs.unm.edu/~fastos/07meeting/2007.06.18._ColonyPImtg2.ppt More:2.2内核中的syscall列表,http://bluemaster.iu.hio.no/edu......
  • Linux ELF文件装入与执行概述
    ELF是linux中使用最广泛的一种应用程序格式,为了弄清楚Linux内核是如何讲ELF文件精确映射到指定内存空间,上周末把内核sys_execve部分好好看了一遍,小结如下:1.ELF格式ELF指定了进程中text段、bss段、data段等应该放置到进程虚拟内存空间的什么位置,以及记录了进程需要用到的各种动......
  • Linux主机间建立信任关系
    目标:源->目ssh无需输入密码方法:拷贝源 ~/.ssh/id_rsa.pub中的文本内容到目的机器的~/.ssh/authorized_keys最后具体命令步骤:1.【源主机】cat ~/.ssh/id_rsa.pub ,复制其中内容2.【目主机】vi ~/.ssh/authorized_keys,将剪贴板里面的内容黏贴到最后附:1.如果添加信任关系失败......
  • 【Linux交换分区】 交换分区格式浅析
    完成本文,使用了两个工具 1.strace 2.googlecodesearch. ----swap分区有一个大小为PAGE_SIZE的页面,称为signature页,上面记录swap分区的基本信息。staticstructswap_header_v1{charbootbits[1024];/*Spacefordisklabeletc.*/unsig......
  • shell 登录linux服务器并执行命令
    注意里边(eeooff区域)不能定义变量#!/bin/bashscpdist.zipm-p:/data/wwwroot/medical-shop-websshm-p>/dev/null2>&1<<eeooffcd/data/wwwrootrm-rfdist_bakmvdistdist_bakunzipdist.zipexiteeooffechodone!进入容器操作不能用次方法,应该用docker......
  • 一分钟学一个 Linux 命令 - ps
    前言大家好,我是god23bin。欢迎来到《一分钟学一个Linux命令》系列,每天只需一分钟,记住一个Linux命令不成问题。今天要说的是ps命令。什么是ps命令?ps的英文全称是processstatus,意思是进程状态。ps命令是一个常用的Linux命令,用于查看当前系统中运行的进程信息。它......
  • Linux网络编程
    查看端口占用情况netstat-tunlp-t(tcp)仅显示tcp相关选项-u(udp)仅显示udp相关选项-n拒绝显示列名,能显示数字的全部转化为数字-l仅显示出在listen(监听)的服务状态-p显示潜力相关链接的程序名linux查看端口被哪个进程占用的方法本机地址127.0.0.1:这个地......