如何使用 Linux 防火墙隔离本地欺骗地址
For Linux

如何使用 Linux 防火墙隔离本地欺骗地址

如何使用 iptables 防火墙保护你的网络免遭黑客攻击。 即便是被入侵检测和隔离系统所保护的远程网络,黑客们也在寻找各种精巧的方法入侵。IDS/IPS 不能停止或者减少那些想要接管你的网络控制权的黑客攻击。不恰当的配置允许攻击者绕过所有部署的安全措施。 在这篇文章中,我将会解释安全工程师或者系统管理员该怎样避免这些攻击。 几乎所有的 Linux 发行版都带着一个内建的防火墙来保护运行在 Linux 主机上的进程和应用程序。大多数防火墙都按照 IDS/IPS 解决方案设计,这样的设计的主要目的是检测和避免恶意包获取网络的进入权。 Linux 防火墙通常有两种接口:iptables 和 ipchains 程序(LCTT 译注:在支持 systemd 的系统上,采用的是更新的接口 firewalld)。大多数人将这些接口称作 iptables 防火墙或者 ipchains 防火墙。这两个接口都被设计成包过滤器。iptables 是有状态防火墙,其基于先前的包做出决定。ipchains 不会基于先前的包做出决定,它被设计为无状态防火墙。 在这篇文章中,我们将会专注于内核 2.4 之后出现的 iptables 防火墙。 有了 iptables 防火墙,你可以创建策略或者有序的规则集,规则集可以告诉内核该如何对待特定的数据包。在内核中的是Netfilter 框架。Netfilter 既是框架也是 iptables 防火墙的项目名称。作为一个框架,Netfilter 允许 iptables 勾连被设计来操作数据包的功能。概括地说,iptables 依靠 Netfilter 框架构筑诸如过滤数据包数据的功能。 每个 iptables 规则都被应用到一个表中的链上。一个 iptables 链就是一个比较包中相似特征的规则集合。而表(例如 nat 或者 mangle)则描述不同的功能目录。例如, mangle 表用于修改包数据。因此,特定的修改包数据的规则被应用到这里;而过滤规则被应用到 filter 表,因为 filter 表过滤包数据。 iptables 规则有一个匹配集,以及一个诸如 Drop 或者 Deny 的目标,这可以告诉 iptables 对一个包做什么以符合规则。因此,没有目标和匹配集,iptables 就不能有效地处理包。如果一个包匹配了一条规则,目标会指向一个将要采取的特定措施。另一方面,为了让 iptables 处理,每个数据包必须匹配才能被处理。 现在我们已经知道 iptables 防火墙如何工作,让我们着眼于如何使用 iptables 防火墙检测并拒绝或丢弃欺骗地址吧。 作为一个安全工程师,在处理远程的欺骗地址的时候,我采取的第一步是在内核打开源地址验证。 源地址验证是一种内核层级的特性,这种特性丢弃那些伪装成来自你的网络的包。这种特性使用反向路径过滤器方法来检查收到的包的源地址是否可以通过包到达的接口可以到达。(LCTT 译注:到达的包的源地址应该可以从它到达的网络接口反向到达,只需反转源地址和目的地址就可以达到这样的效果) 利用下面简单的脚本可以打开源地址验证而不用手工操作: #!/bin/sh #作者: Michael K Aboagye #程序目标: 打开反向路径过滤 #日期: 7/02/18 #在屏幕上显示 “enabling source address verification” echo -n "Enabling source address verification…" #将值0覆盖为1来打开源地址验证 echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter echo "completed" 上面的脚本在执行的时候只显示了 Enabling source address verification 这条信息而不会换行。默认的反向路径过滤的值是 0,0 表示没有源验证。因此,第二行简单地将默认值 0 覆盖为 1。1 表示内核将会通过确认反向路径来验证源地址。 最后,你可以使用下面的命令通过选择 DROP 或者 REJECT 目标之一来丢弃或者拒绝来自远端主机的欺骗地址。但是,处于安全原因的考虑,我建议使用 DROP 目标。 像下面这样,用你自己的 IP 地址代替 IP-address 占位符。另外,你必须选择使用 REJECT 或者 DROP中的一个,这两个目标不能同时使用。 iptables -A INPUT -i internal_interface -s IP_address -j…

Linux 新用户?来试试这八款软件
For Linux

Linux 新用户?来试试这八款软件

即便您不是计算机的新手,刚接触 Linux 时,通常都会面临选择使用应用软件的问题。在数百万 Linux 应用程序中,做起选择来并不轻松。本文中,您将能发现八个重要的 Linux 应用,帮助您快速选择应用程序。 下面这些应用程序大多不是 Linux 独有的。如果有过使用 Windows/Mac 的经验,您很可能会熟悉其中一些软件。根据兴趣和需求,下面的程序可能不全符合您的要求,但是在我看来,清单里大多数甚至全部的软件,对于新用户开启 Linux 之旅都是有帮助的。 相关链接 : 每一个 Linux 用户都应该使用的 11 个可移植软件

如何在终端输入密码时显示星号
For Linux

如何在终端输入密码时显示星号

当你在 Web 浏览器或任何 GUI 登录中输入密码时,密码会被标记成星号  或圆点符号  。这是内置的安全机制,以防止你附近的用户看到你的密码。但是当你在终端输入密码来执行任何  或  的管理任务时,你不会在输入密码的时候看见星号或者圆点符号。它不会有任何输入密码的视觉指示,也不会有任何光标移动,什么也没有。你不知道你是否输入了所有的字符。你只会看到一个空白的屏幕!

在 Linux 上简单模拟系统负载的方法
For Linux

在 Linux 上简单模拟系统负载的方法

系统管理员通常需要探索在不同负载对应用性能的影响。这意味着必须要重复地人为创造负载。当然,你可以通过专门的工具来实现,但有时你可能不想也无法安装新工具。 每个 Linux 发行版中都自带有创建负载的工具。他们不如专门的工具那么灵活,但它们是现成的,而且无需专门学习。 下面命令会创建 CPU 负荷,方法是通过压缩随机数据并将结果发送到  : cat /dev/urandom | gzip -9 > /dev/null 如果你想要更大的负荷,或者系统有多个核,那么只需要对数据进行压缩和解压就行了,像这样: cat /dev/urandom | gzip -9 | gzip -d | gzip -9 | gzip -d > /dev/null 按下  来终止进程。

关于 linuxmint 系统 用户密码“短”处理方法
For Linux

关于 linuxmint 系统 用户密码“短”处理方法

在安装 linuxmint 的时候建立的帐户 faonecze,想把密码改成两个字母aa,方便输入。 faonecze@xmomx:~$ passwd faonecze 更改 sai 的密码。 (当前)UNIX 密码: xx 输入新的 UNIX 密码: aa 重新输入新的 UNIX 密码:aa 必须选择更长的密码  输入新的 UNIX 密码: 1234567 重新输入新的 UNIX 密码: 1234567 Bad: new password is too simple  输入新的 UNIX 密码:

recordmydesktop如何录制桌面视频附加
For Linux

recordmydesktop如何录制桌面视频附加"声音"完美解决

Linux下也需要录制各种教程或者分享视频,这时一款完美的桌面录制软件可以很好的帮助到我们。 今天我向大家推荐的是“recordmydesktop”相信它的功能一定会让您意想不到。 软件安装这个我想linux下的你一定可以通过各种方式解决,毕竟用linux这点都做不到我想是不可能的例如: sudo apt install recordmydesktop 就像他界面中显示的那样简洁易上手,我都想不出补充什么~ 这才是写这篇记录文的重点,更重点是标题提到的“声音”默认录制视频的时候是使用麦克风的“声音”没有任何问题,但是如何录制电脑中的“声音”呢? 我们需要用到“pavucontrol”这款软件,安装方式我想也不必细说,例如 sudo apt install pavucontrol 安装后如下视频,打开后选择“录音”更改即可   下放视频为ogv格式,请使用谷歌(含谷歌内核)或火狐浏览器观看   如有其他疑问或者问题,可以到recordmydesktop官网寻找答案。   相关链接 http://recordmydesktop.sourceforge.net/documentation.php https://www.youtube.com/watch?v=cMW4UKF_3o8

Mojo qq&weixin客户端,基于Mojolicious
For Linux

Mojo qq&weixin客户端,基于Mojolicious

使用Perl语言编写的Smartqq客户端框架,基于Mojolicious,要求Perl版本5.10+,可通过插件提供基于HTTP协议的api接口供其他语言或系统调用 本项目完全遵循QQ官方提供的原始功能,不包含任何破坏、盗号等行为,本项目完全开源,目的是为了促进技术交流学习,禁止任何对国家、企业、个人等构成危害的非法用途,否则后果自负 支持 群组踢人、禁言、设置/取消管理员、修改群成员名片、邀请好友入群、群签到 支持 获取好友、群组、群成员的真实QQ号码 支持 新增/失去好友、新增/退出群组、新增/失去群成员 等事件提醒(非实时) 支持 Windows/Linux/Mac 多平台,支持docker镜像,易安装部署,不懂Perl也能用 提供 基于HTTP协议的API接口 ,简洁丰富,方便和其他编程语言集成 一个产品狗的倾情之作,代码由内而外都更加注重“用户体验”,外加主人人品极好,你懂的

Sublime text 3在linuxmint下无法输入中文的解决办法
For Linux

Sublime text 3在linuxmint下无法输入中文的解决办法

解决依赖: sudo apt-get install build-essential libgtk2.0-dev 一:编译「所需文件传送阵」 1.将sublime_imfix.c 复制到 ~目录下 2.编译文件: gcc -shared -o libsublime-imfix.so sublime_imfix.c `pkg-config --libs --cflags gtk+-2.0` -fPIC 3.将libsublime-imfix.so拷贝到sublime_text所在文件夹 sudo mv libsublime-imfix.so /opt/sublime_text/