Linux端口设置ip白名单

一、 Linux 22端口设置ip白名单

在Linux系统中,如果您想要限制只有特定的IP地址能够访问端口22(通常是SSH服务的端口),您可以使用iptables防火墙来实现。以下是一个基本的示例,展示了如何设置端口22的IP白名单:

  1. 首先,确保您已经安装了iptables。在大多数Linux发行版中,iptables通常会作为默认防火墙软件随系统一起安装。
  2. 打开终端,并使用sudo来运行iptables命令。
  3. 添加一个规则,允许特定的IP地址访问端口22。例如,如果您想要允许IP地址192.168.1.100访问端口22,您可以使用以下命令:
sudo iptables -A INPUT -s 192.168.10.76 -p tcp --dport 22 -j ACCEPT

这个命令的含义是:

  • sudo iptables:运行iptables命令,需要使用sudo以获得必要的权限。
  • -A INPUT:向INPUT链添加一个规则。
  • -s 192.168.1.100:指定源IP地址为192.168.1.100。
  • -p tcp:指定协议为TCP。
  • --dport 22:指定目标端口为22。
  • -j ACCEPT:匹配到规则时,执行的动作是接受这个连接。
  1. 如果您想要允许多个IP地址,只需重复上述命令,为每个IP地址添加一个规则。
  2. 保存iptables规则。在某些系统中,您可能需要运行iptables-save命令来保存规则,而在其他系统上,规则可能会在系统重启时自动保存。
  3. 重启iptables服务,以确保规则生效。这可以通过运行systemctl restart iptables(如果iptables是由systemd管理的)或重新启动计算机来实现。
    请注意,iptables是一个强大的工具,它可以进行复杂的网络配置。在实际应用中,您应该根据实际情况调整规则,并确保您理解每个命令的作用。此外,始终确保在允许任何连接之前,您已经考虑了安全性和可能的攻击风险。

二、ubuntu 22端口设置ip白名单

在Ubuntu系统中,您可以使用iptables来设置22端口的IP白名单。以下是设置步骤和示例代码:
首先,您需要安装iptables,如果尚未安装,可以使用以下命令安装:

sudo apt update
sudo apt install iptables

清除当前的iptables规则(可选,但建议在进行规则更改前这么做):

sudo iptables -F
sudo iptables -X
sudo iptables -t nat -F
sudo iptables -t nat -X
sudo iptables -t mangle -F
sudo iptables -t mangle -X
sudo iptables -P INPUT ACCEPT
sudo iptables -P FORWARD ACCEPT
sudo iptables -P OUTPUT ACCEPT

设置白名单规则,只允许指定IP访问22端口:

sudo iptables -A INPUT -p tcp --dport 22 -s YOUR_IP_ADDRESS -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 22 -j DROP   #将其他ip设置为黑名单

将YOUR_IP_ADDRESS替换为您希望允许访问22端口的IP地址。您可以添加多个IP地址,为每个IP地址重复执行第二条规则。

保存iptables规则,使其在重启后生效:

sudo netfilter-persistent save
sudo netfilter-persistent reload

请注意,这些命令需要以root权限或使用sudo执行。如果您不希望在系统重启后丢失规则,应确保iptables-persistent服务已安装并设置为在启动时运行。

三、Linux解除22端口黑名单操作

sudo iptables -A INPUT -p tcp --dport 22 -j DROP,如何解除这个操作?
如果您不小心添加了以下规则:

sudo iptables -A INPUT -p tcp --dport 22 -j DROP

这会阻止所有到端口22(SSH)的TCP连接。要解除这个操作,您需要删除这个规则。可以使用以下命令:

sudo iptables -D INPUT -p tcp --dport 22 -j DROP

这条命令会从INPUT链中删除之前添加的规则。记得在删除规则后检查iptables规则以确保您的设置正确。可以使用以下命令来检查iptables规则:

sudo iptables -L -n -v

确保DROP规则已经被移除,并且没有其他阻止端口22的规则。如果您的目标是允许SSH连接,您可能还需要添加一个接受到端口22的TCP连接的规则:

sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT

添加这个规则后,SSH连接应该会被允许。记得应用更改:

sudo iptables-save
sudo systemctl restart netfilter-persistent

这将保存更改并重启netfilter-persistent服务,以确保iptables规则生效。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/862925.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

kafka-Stream详解篇(附案例)

文章目录 Kafka Stream 概述Kafka Stream 概念Kafka Stream 数据结构入门案例一需求描述与分析配置KafkaStream定义处理流程声明Topic接收处理结果发送消息测试 入门案例二需求描述与分析定义处理流程接收处理结果声明Topic 更多相关内容可查看 Kafka Stream 概述 Kafka Strea…

探索Anaconda Cloud:Conda的云端宝库

探索Anaconda Cloud:Conda的云端宝库 引言 Anaconda Cloud是一个托管服务,由Anaconda, Inc.提供,用于分享和发现公共或私有的Conda包。它为数据科学和机器学习社区提供了一个集中的平台,使得用户可以轻松地上传和下载Conda环境、…

深入理解linux shell 中的exec内置命令ubuntu bash

概览 每当我们在Bash shell 中运行任何命令时,默认情况下都会创建一个子 shell,并生成(分叉)一个新的子进程来执行该命令。但是,当使用 exec时,exec 后面的命令将替换当前 shell。这意味着不会创建任何子 …

Graalvm配置文件与Feature和Substitute机制介绍

1. 配置文件 1.1 动态代码配置文件 对于动态代码,需要通过指定的json文件来描述其metadata,这样GraalVM才能正确的编译和优化代码。如下类型 反射,配置文件名:reflect-config.json动态代理, 配置文件名:…

【高中数学之基本不等式】已知:x,y皆为正实数且x+3y=5xy,求3x+4y的最小值?

解:此题若使用“化二为一”法,会发现分母中出现了5x-3或是5y-1这样的式子,它可能导致负数的出现,已经违反了基本不等式中a,b皆大于零的应用条件。 此时应该迷途知返,及时易辙改弦。 此题适用“乘一法”,这…

MyBatis(12)MyBatis 映射文件中的 resultMap

MyBatis 的 resultMap 是一种高级映射策略,用于处理复杂的SQL查询结果和Java对象之间的映射关系。resultMap 提供了比 auto-mapping 更为灵活的映射方式,它允许开发者显式指定数据库列和Java对象属性之间的映射关系,甚至可以处理复杂的数据结…

【C++11 之单例模式线程安全原理+案例】及旧版本互斥锁线程安全案例

在C11及之后的版本中,当函数返回局部静态变量时,该变量的初始化是线程安全的。 浅层原理 这是因为C11标准引入了“魔术静态局部变量”(Magic Static Locals)的概念,它确保了在多线程环境中,局部静态变量的…

第1章_搭建开发环境

文章目录 第1章 搭建开发环境1.1开发套件硬件接口资源介绍1.2资料下载1.3安装Keil MDK1.3.1**软件下载**1.3.2**软件安装**1.3.3 PACK 安装 1.4 安装 STM32CubeMX1.5 安装 STM32CubeProgrammer1.6 安装 ST-Link 驱动1.7 安装 CH340 驱动 第1章 搭建开发环境 1.1开发套件硬件接…

Dijkstra算法C代码

一个带权图n个点m条边,求起点到终点的最短距离 先定义一个邻接矩阵graph,graph[i][j]表示从i到j的距离,i到j没有路就表示为无穷 然后定义一个visit数组,visit[i]表示i结点是否被访问 然后定义一个dist数组,dist[i]表…

Redis基础教程(一):redis配置

💝💝💝首先,欢迎各位来到我的博客,很高兴能够在这里和您见面!希望您在这里不仅可以有所收获,同时也能感受到一份轻松欢乐的氛围,祝你生活愉快! 💝&#x1f49…

星光云720全景VR系统源码

星光云720全景VR系统源码 系统体验地址项目介绍JDK版本后端主要依赖前端框架前端node 版本用户端框架介绍技术选型依赖全景内容简介系统图片部分功能截图系统体验地址 系统体验地址 VR全景系统体验地址 账号:18175760278 密码:12345678 项目介绍 JDK版…

AudioLM: 音频生成模型

AudioLM: 音频生成模型 音频生成模型是一种利用人工智能技术生成声音或音频内容的模型。它利用深度学习技术,尤其是生成对抗网络(GANs)或变分自编码器(VAEs),结合声音合成和信号处理技术,从输入的文本、图像或其他形式的数据中生成音频。这些模型广泛应用于语音助手、游…

图鸟模板-官网:基于Vue 3的前端技术探索与实践

摘要: 随着Web技术的不断发展,前端开发已经从简单的页面展示向功能丰富、交互体验优良的方向发展。Vue.js作为一款轻量级且功能强大的前端框架,自推出以来就受到了广泛的关注和应用。特别是Vue 3的发布,更是为前端开发带来了诸多新…

机器学习笔记 人脸识别技术全面回顾和小结(1)

一、简述 人脸识别是视觉模式识别的一个细分问题。人类一直在识别视觉模式,我们通过眼睛获得视觉信息。这些信息被大脑识别为有意义的概念。对于计算机来说,无论是图片还是视频,它都是许多像素的矩阵。机器应该找出数据的某一部分在数据中代表…

最近公共祖先(倍增,tarjan,树链剖分)

两个点的最近公共祖先&#xff0c;即两个点的所有公共祖先中&#xff0c;离根节点最远的一个节点。 倍增算法 1.dfs一遍&#xff0c;创建ST表 2.利用ST表求LCA 内容来源 D09 倍增算法 P3379【模板】最近公共祖先&#xff08;LCA&#xff09; #include<iostream> #in…

特斯拉下一代自动驾驶芯片的深度预测

引言 特斯拉一直以来都在自动驾驶技术上不断突破&#xff0c;随着AI大模型技术的爆发&#xff0c;其下一代自动驾驶芯片&#xff08;HW5.0&#xff09;也备受瞩目。本文将深入分析和预测特斯拉下一代自动驾驶芯片AI5的技术特点及其对行业的影响。 深入技术分析 现有自动驾驶…

MySQL8.0新特性~General tablespaces

通用表空间创建语法 InnoDB and NDB:[ADD DATAFILE file_name][AUTOEXTEND_SIZE [] value]InnoDB only:[FILE_BLOCK_SIZE value][ENCRYPTION [] {Y | N}]NDB only:USE LOGFILE GROUP logfile_group[EXTENT_SIZE [] extent_size][INITIAL_SIZE [] initial_size][MAX_SIZE [] ma…

React小记(五)_Hooks入门到进阶

React 16.8 版本 类组件 和 函数组件 两种组件共存&#xff0c;到目前 React 18 版本&#xff0c;官方已经不在推荐使用类组件&#xff0c;在函数组件中 hooks 是必不可少的&#xff0c;它允许我们函数组件像类组件一样可以使用组件的状态&#xff0c;并模拟组件的生命周期等一…

用Python写一个基于ai agent服务scrm,mes和erp系统的协同流程

要实现一个基于AI Agent的协同流程&#xff0c;我们需要首先了解SCRM、MES和ERP系统的基本功能和相互之间的关系。然后&#xff0c;我们可以用Python编写一个简单的示例&#xff0c;展示这些系统如何协同工作。以下是一个基本的协同流程示例&#xff1a; 1. 假设我们有一个SCRM…

高效数据采集监控平台 一体化平台 数据可视化!

提高工作效率&#xff0c;一直是各种厂家在寻找的方法。任何一种有效且实用的方法都值得去尝试。数据采集监控平台是一种能高效处理数据的方式&#xff0c;其主要工作内容是从各个产生数据的仪器设备传感器中采集数据、对数据进行集中整理整合、分析、显示、绘制图表、存储、传…