Ubuntu(通用)—网络加固—ufw+防DNS污染+ARP绑定

1. ufw

sudo ufw default deny incoming
sudo ufw deny in from any to any
# sudo ufw allow from any to any port 5353 protocol udp
sudo ufw enable		# 启动+开机自启
# sudo ufw reload 更改后的操作

2. 防ARP欺骗

华为云教程

  1. arp -d删除dns记录
  2. arp -a显示arp表
    在这里插入图片描述
  3. ipconfig/ifconfig寻找无线局域网本机ip
    在这里插入图片描述
  4. arp -s ip_addr ethr_addr绑定arp服务器(网关)物理地址,
    但win11验证失效
    在这里插入图片描述
  • 与ipconfig对比,第一个是无限局域网,后两个是以太网,224.0.0.22是多播IP地址,用于多播组管理信息协议(IGMP)的查询报文发送。它被用于IPv4网络中的一种特殊地址,用于在多播组中发送管理和控制信息。
  • 224.0.0.22是多播IP地址,用于多播组管理信息协议(IGMP)的查询报文发送。它被用于IPv4网络中的一种特殊地址,用于在多播组中发送管理和控制信息。
  • 224.0.0.251是多播IP地址,用于mDNS(Multicast DNS)协议的组播通信。mDNS是一种用于在局域网中实现主机名解析和服务发现的协议,常用于实现Zeroconf(Zero Configuration Networking)功能。通过发送和接收mDNS报文,设备可以通过局域网中的主机名进行互相通信和发现。
  • 224.0.0.252是多播IP地址,用于Link-local Multicast Name Resolution(LLMNR)协议的组播通信。LLMNR是一种用于在局域网内实现主机名解析的协议。它允许设备通过发送和接收LLMNR报文来解析其他设备的主机名,而无需使用DNS服务器。LLMNR主要用于在没有DNS服务器的环境中进行主机名解析。
  • 239.255.255.250是多播IP地址,用于Simple Service Discovery Protocol(SSDP)的广播通信。SSDP是用于在局域网中发现设备和服务的协议,常用于发现网络中的UPnP设备和服务。

ubuntu执行

在这里插入图片描述1. 查询当前arp 表
2. 删除IP对应的arp表项,用man获取其用法
在这里插入图片描述相关命令:
在这里插入图片描述3. 获取当前的arp表(如果arp攻击停止)
3. 绑定``arp -s ip_addr ether_addr```
4. 再次显示,可以看到局域网网关192.168.124.1的mac变为永久(permanent),
5. 但重启后仍然失效,需要加入开机启动项,

chmod 755 /etc/rc.d/rc.local

nano,添加命令
在这里插入图片描述

arp -i net_device -s ip_addr ether_addr
chmod 555 /etc/rc.d/rc.local

恢复权限

3. 防DNS污染

DNS协议,把域名解析成ip地址,udp,这个过程会暴露访问的域名,
对这一传输过程加密(传输层用tcp)即为DoH(DNS over HTTPS)。

Browser(firefox)加固

由于Cloudflare、Quad8的DoH服务器不能用(lack ladder),国内一般用aliyun。
在Firefox的设置tab,更改DoH服务商,
在这里插入图片描述
DoH API可以是如下两种:

https://dns.alidns.com/dns-query	
# 不建议使用,因为dns.alidn.com可能被污染
https://223.6.6.6/dns-query
https://alidns_ip/dns-query		
# 这里alidns_ip = 223.5.5.5 or 223.6.6.6 or 2400:3200::1 or 2400:3200:baba::1 
https://1.1.1.1/dns-query
https://9.9.9.9/dns-query

Wifi默认dns加固

aliyun公共DNS

  • IPv4地址:223.5.5.5, 223.6.6.6
  • IPv6地址:2400:3200::1, 2400:3200:baba::1
  • DoH/DoT地址: dns.alidns.com

实践见笔者文章

Global配置 :

nano /etc/systemd/resolved.conf
替换为如下文本:

[Resolve]
DNS=1.1.1.1 
FallbackDNS=9.9.9.9
#Domains=
DNSSEC=allow-downgrade
DNSOverTLS=opportunistic
#MulticastDNS=no
#LLMNR=no
Cache=no-negative
#CacheFromLocalhost=no
DNSStubListener=yes
#DNSStubListenerExtra=
ReadEtcHosts=yes
#ResolveUnicastSingleLabel=no

重载、开机自启

systemctl restart systemd-resolved #重置DNS服务
systemctl enable systemd-resolved 	#开机自启动

Current接口配置

nano /etc/resolv.conf
替换为如下文本:

nameserver 1.1.1.1
nameserver 223.5.5.5
nameserver 223.6.6.6
# Too many DNS servers configured, the following entries may be ignored.
nameserver 2400:3200::1
nameserver 2400:3200:baba::1
search .

但重启会失效,永久配置教程

  1. 修改 /etc/systemd/resolved.conf 文件
vi  /etc/systemd/resolved.conf

这里我们可以看到这些参数:

# 指定 DNS 服务器,以空白分隔,支持 IPv4 或 IPv6 位置
DNS=8.8.8.8 114.114.115.115
# 备用 DNS 服务器
FallbackDNS=8.8.8.8
# 设置搜索域名
Domains=domain.com
# 设置 LLMNR 是否激活,可用的选项有 yes、no、resolve
LLMNR=yes
# 设置 MulticastDNS 是否激活,可用的选项有 yes、no、resolve
MulticastDNS=yes
# 设置 DNSSEC 是否激活,可用的选项有 yes、no、allow-downgrade
DNSSEC=yes
# 设置缓存是否激活,可用的选项有 yes、no、no-negative
Cache=no-negative

根据需要修改 resolved.conf 文件中的DNS,然后保存。

  1. 重启 systemd-resolved 服务
systemctl restart systemd-resolved
  1. 设置开机启动 systemd-resolved 服务
systemctl enable systemd-resolved
  1. 备份 systemd-resolved 托管文件 resolv.conf
mv /etc/resolv.conf /etc/resolv.conf.bak
  1. 重新生成软链接。
ln -s /run/systemd/resolve/resolv.conf /etc/

4. 换USTC源

sudo nano /etc/apt/sources.list

贴入下述代码

# 默认注释了源码仓库,如有需要可自行取消注释
deb https://mirrors.ustc.edu.cn/ubuntu/ noble main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ noble main restricted universe multiversedeb https://mirrors.ustc.edu.cn/ubuntu/ noble-security main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ noble-security main restricted universe multiversedeb https://mirrors.ustc.edu.cn/ubuntu/ noble-updates main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ noble-updates main restricted universe multiversedeb https://mirrors.ustc.edu.cn/ubuntu/ noble-backports main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ noble-backports main restricted universe multiverse# 预发布软件源,不建议启用
# deb https://mirrors.ustc.edu.cn/ubuntu/ noble-proposed main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ noble-proposed main restricted universe multiverse

更新

sudo apt update

不得不吐槽,东大很多名校研究安全萌新~

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

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

相关文章

PTrade常见问题系列3

量化允许同时运行回测和交易的策略个数配置。 量化允许同时运行回测和交易的策略个数在哪里查看? 在量化服务器/home/fly/config/custom_config_conf文件中,其中运行回测的策略个数由backtest_switch(是否限制普通回测个数)及ba…

Qt 日志输出的选择方案有多少

Qt 日志输出的选择方案主要包括以下几种: 使用内置的日志函数: qDebug():用于输出调试信息。qInfo():用于输出一般信息。qWarning():用于输出警告信息。qCritical():用于输出关键错误信息,表明…

详细设计与概要设计区别-慧哥充电桩开源系统

概要设计更侧重于系统的整体构架和模块划分,而详细设计则关注具体模块的实现细节。在软件开发过程中,这两个阶段虽然紧密相关,但它们各自有着不同的目标和方法。以下是具体分析: 目标 概要设计:概要设计关注系统整体架…

matlab 绘制高等数学中的二维函数示例

matlab 绘制高等数学中的二维函数示例 绘制高等数学中的二维函数示例绘制结果 绘制高等数学中的二维函数示例 clc,clear,close all; % 定义方程 eqn (x, y) (x.^2 y.^2).^3 - y.^4;% 绘制方程曲线和坐标轴 ezplot(eqn, [-2, 2, -2, 2]) hold on % 在同一图形中保持绘图% 绘…

S7-1200PLC学习记录

文章目录 前言一、S7-12001.数字量输入模块2. PNP接法和NPN接法 二、博图软件1. 位逻辑运算Part1. 添加新设备(添加PLC)Part2. 添加信号模块Part3. 添加信号板中模块Part4. 添加新块Part5. Main编程文件案例1案例2 -( S )- 和 -( R )-完整操作过程&#…

昇思25天学习打卡营第8天|ResNet50迁移学习

一、迁移学习定义 迁移学习(Transfer Learning):在一个任务上训练得到的模型包含的知识可以部分或全部地转移到另一个任务上。允许模型将从一个任务中学到的知识应用到另一个相关的任务中。适用于数据稀缺的情况,可减少对大量标记…

掌握Linux网络:深入理解TC —— 你的流量控制利器

目录 简单概述: qdisc(队列): 举例: Bash 整形队列算法: FIFO (First-In-First-Out) PFIFO (Priority FIFO) SFQ (Stochastic Fair Queuing) RED (Random Early Detection) HTB (Hierarchical Token Bucket) TBF…

谷粒商城笔记-04-项目微服务架构图简介

文章目录 一,网络二,网关1,网关选型2,认证鉴权3,动态路由4,限流5,负载均衡6,熔断降级 三,微服务四,存储层五,服务治理六,日志系统七&a…

前端面试题3-浅谈http协议及常见的面试题

1、浅谈http协议 HTTP(Hypertext Transfer Protocol)超文本传输协议,是互联网上应用最为广泛的一种网络协议,所有的WWW文件都必须遵守这个标准。它是基于TCP/IP通信协议来传递数据(HTML文件、图片文件、查询结果等&am…

在Apache HTTP服务器上配置 TLS加密

安装mod_ssl软件包 [rootlocalhost conf.d]# dnf install mod_ssl -y此时查看监听端口多了一个443端口 自己构造证书 [rootlocalhost conf.d]# cd /etc/pki/tls/certs/ [rootlocalhost certs]# openssl genrsa > jiami.key [rootlocalhost certs]# openssl req -utf8 -n…

OLED示波器的实现

OLED示波器是一种使用有机发光二极管(OLED)显示屏来显示波形的仪器。它可以实时显示电压、电流、频率等信号的波形。 OLED显示屏具有高对比度、高亮度、广视角和快速响应时间等优点,使得OLED示波器在波形显示方面具有更好的表现。与传统的液…

鸿蒙开发设备管理:【@ohos.usb (USB管理)】

USB管理 本模块主要提供管理USB设备的相关功能,包括查询USB设备列表、批量数据传输、控制命令传输、权限控制等。 说明: 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 导入模块 import …

【JavaScript脚本宇宙】优化你的Web色彩:精选JavaScript颜色工具对比

万能色彩助手:详解最受欢迎的JavaScript颜色库 前言 在现代Web开发中,颜色处理和转换是一个不可忽视的环节。无论是网站设计、数据可视化还是用户界面开发,都离不开对颜色的精确控制和转换。为了满足这一需求,众多JavaScript库应…

Toocaa Studio已开发的功能

2024年07月01日 Toocaa Studio 一个激光切割雕刻机的上位机, 未来会对标Xtool的xTool Creative Space和LightBurn,同时它也是一款图形编辑器,矢量图形编辑器。 工具类 鼠标画矩形或正方形 鼠标画椭圆或画圆 鼠标画直线或轨迹路径 往画布中…

你的机器人购物新体验——安全、高效、无忧

如果你跟我一样,对找到那些“恰到好处”的商品充满渴望,那么,让我来告诉你为什么BFT会成为你的下一个购物“心头好”。 BFT的优势 高效安全的支付体系:BFT交易系统保障了交易的安全性和透明性,让你的每一笔消费都安全…

Build a Large Language Model (From Scratch)附录B(gpt-4o翻译版)

来源:https://github.com/rasbt/LLMs-from-scratch?tabreadme-ov-file https://www.manning.com/books/build-a-large-language-model-from-scratch

《More Effective C++》《杂项讨论——34、如何在同一个程序中结合C++和C》

文章目录 1、Terms34:如何在同一个程序中结合C和C1.1 名称重整1.2 statics的初始化1.3 动态内存的分配1.4 数据结构的兼容性 2、总结3、参考 1、Terms34:如何在同一个程序中结合C和C 在大型项目中一般都用C进行开发,但是不可避免会用一些C语言进行底层的调用。在确…

【宠粉赠书】UML 2.5基础、建模与设计实践

为了回馈粉丝们的厚爱,今天小智给大家送上一套系统建模学习的必备书籍——《UML 2.5基础、建模与设计实践》。下面我会详细给大家介绍这本书,文末留有领取方式。 图书介绍 《UML 2.5基础、建模与设计实践》以实战为主旨,结合draw.io免费软件…

匿名内部类

下面代码中,Person24 是一个抽象类,这意味着它不能被直接实例化,只能通过继承它的子类来实现其抽象方法。代码片段中展示了如何使用匿名内部类来实现一个抽象类的实例。 package chapter04;public class Java24_Object_匿名内部类 {public s…

verilog行为建模(三):块语句

目录 1.块语句2.延迟赋值语句 微信公众号获取更多FPGA相关源码: 1.块语句 块语句用来将多个语句组织在一起,使得他们在语法上如同一个语句。 块语句分为两类: 顺序块:语句置于关键字begin和end之间,块中的语句以顺…