Linux Hardenining:保护发行版并使其更安全的提示

加固Linux的两个燕尾服,一个没有防御,一个装甲

许多文章发表在 Linux发行版 更加安全,例如TAILS(可确保您在网络上的隐私和匿名性),Whonix(针对安全性偏执的Linux)和其他旨在确保安全的发行版。 但是,当然,并非所有用户都希望使用这些发行版。 因此,在本文中,我们将针对“Linux强化«,也就是说,使您的发行版(无论哪种发行版)都更安全。

Red Hat,SUSE,CentOS,openSUSE,Ubuntu,Debian,Arch Linux,Linux Mint等……有什么不同。 任何分发都是安全的 如果您深入了解它,并且知道如何保护自己免受威胁您的危险,那么它是最安全的。 为此,您不仅可以在软件级别,而且可以在硬件级别,都可以在多个级别上采取行动。

通用安全兔:

硬件安全挂锁电路

在本节中,我会给你一些 非常简单的技巧 不需要计算机知识来理解它们,它们只是常识,但有时由于粗心或粗心而导致我们不进行操作:

  • 不要将个人或敏感数据上传到云。 无论云是免费还是免费,无论它是否安全,云都是一个无论何时何地都可以处理数据的好工具。 但是,请不要上传您不想与旁观者“共享”的数据。 这种更敏感的数据类型必须存储在更个人的介质中,例如SD卡或Pendrive。
  • 例如,如果您使用计算机访问Internet并处理重要数据,请想象您已加入BYOD狂潮并将一些商业数据带回家。 好吧,在这种情况下, 不在网上工作,请尝试断开连接(例如,为什么要连接才能使用LibreOffice编辑文本?)。 断开连接的计算机是最安全的,请记住这一点。
  • 与上述相关, 在线工作时,不要在本地硬盘上保留重要数据。 我建议您有一个外部硬盘驱动器或另一种类型的内存(内存卡,笔式驱动器等),其中包含此信息。 因此,我们将在连接的设备和重要数据所在的“未连接”内存之间设置一个障碍。
  • 制作备份副本 您认为有趣或不想丢失的数据。 当他们使用漏洞进入您的计算机并提升特权时,攻击者将能够无障碍地擦除或操作任何数据。 这就是为什么最好有一个备份。
  • 不要将有关您的弱点的数据留在论坛中 或在网上发表评论。 例如,如果您的计算机存在安全问题,并且您有要关闭的开放端口,请不要将您的问题留在论坛中寻求帮助,因为它可能会对您造成伤害。 怀有恶意的人可以使用该信息来寻找自己的理想受害者。 最好找到值得信赖的技术人员来帮助您解决问题。 公司通常在Internet上放置广告,例如“我正在寻找IT安全专家”或“安全部门需要人员”。 这可能表明该公司可能存在漏洞,网络罪犯可以使用这些类型的页面来寻找容易的受害者...对您而言,留下有关您所使用的系统和版本的信息也不是一件好事,有人可以利用漏洞利用来利用该版本的漏洞。 简而言之,攻击者越不了解您,攻击他就越困难。 请记住,攻击者通常在攻击之前执行一个称为“信息收集”的过程,该过程包括收集有关受害者的信息,这些信息可以用来对付他们。
  • 保持设备更新 使用最新的更新和补丁程序时,请记住,在许多情况下,这些方法不仅可以改善功能,还可以纠正错误和漏洞,以免被利用。
  • 使用强密码。 切勿放置字典中的名称或密码(如12345),因为使用字典攻击可以将其快速删除。 另外,默认情况下也不要保留密码,因为它们很容易被检测到。 也不要使用出生日期,亲戚,宠物的名字或关于您的口味的信息。 社交工程很容易猜出这类密码。 最好使用带有数字,大写和小写字母以及符号的长密码。 不要对所有内容都使用主密码,也就是说,如果您有电子邮件帐户和操作系统会话,请不要对两者都使用主密码。 由于登录密码与您的Hotmail / Outlook帐户相同,因此在Windows 8中,它们已被弄得一团糟。 安全密码的类型为:“ auite3YUQK && w-”。 通过蛮力可以实现,但是花费时间却不值得...
  • 不要安装来自未知来源的软件包 如果可能的话。 使用要安装的程序的官方网站上的源代码包。 如果软件包存在问题,建议您使用Glimpse之类的沙盒环境。 您将实现的是,您在Glimpse中安装的所有应用程序都可以正常运行,但是当尝试读取或写入数据时,它仅反映在沙盒环境中,从而使系统与问题隔离。
  • 使用 尽可能少的系统特权。 并且,当您需要任务特权时,建议您最好在“ su”之前使用“ sudo”。

其他稍微更技术性的技巧:

计算机安全,键盘上的挂锁

除了在上一节中看到的建议之外,还强烈建议您按照以下步骤操作,以使发行版更加安全。 请记住,您的分布可以是 您想要的安全我的意思是,花在配置和保护上的时间越多越好。

Linux和防火墙/ UTM中的安全套件:

使用 SELinux或AppArmor 强化您的Linux。 这些系统有些复杂,但是您可以看到对您有很大帮助的手册。 AppArmor甚至可以限制对漏洞利用和其他有害流程操作敏感的应用程序。 从2.6.36版开始,AppArmor已包含在Linux内核中。 其配置文件存储在/etc/apparmor.d中

关闭所有不使用的端口 频繁地。 即使您拥有物理防火墙,这也将是有趣的,这是最好的。 另一个选择是专用于旧设备或未使用的设备来为您的家庭网络实现UTM或防火墙(您可以使用IPCop,m0n0wall等发行版)。 您还可以配置iptables来过滤掉不需要的内容。 要关闭它们,您可以使用集成了Linux内核本身的“ iptables / netfilter”。 我建议您查阅有关netfilter和iptables的手册,因为它们非常复杂并且无法在文章中进行解释。 您可以通过在终端中输入以下内容来查看已打开的端口:

netstat -nap

我们设备的实物保护:

如果您不信任周围的人,或者必须将计算机放置在其他人可以接触到的地方,则还可以保护计算机。 为此,您可以通过除硬盘驱动器之外的其他方式禁用引导。 BIOS / UEFI 和密码可以保护BIOS / UEFI,因此如果没有它,他们将无法对其进行修改。 这样可以防止某人使用可引导的USB或安装了操作系统的外部硬盘驱动器,并能够从中访问您的数据,而无需登录发行版。 要保护它,请访问BIOS / UEFI,在“安全性”部分中可以添加密码。

您可以使用 GRUB,用密码保护:

grub-mkpasswd-pbkdf2

输入 GRUB的密码 所需,它将以SHA512编码。 然后复制加密的密码(出现在“您的PBKDF2是”中的密码)以供以后使用:

sudo nano /boot/grub/grub.cfg

在开始时创建一个用户,然后将 加密密码。 例如,如果先前复制的密码是“ grub.pbkdf2.sha512.10000.58AA8513IEH723”:

set superusers=”isaac”
password_pbkdf2 isaac grub.pbkdf2.sha512.10000.58AA8513IEH723

并保存更改...

更少的软件=更高的安全性:

减少已安装软件包的数量。 仅安装所需的组件,如果要停止使用,则最好将其卸载。 您拥有的软件越少,漏洞就越少。 记住它。 对于系统启动时运行的某些程序的服务或守护程序,我也建议您这样做。 如果不使用它们,请将它们置于“关闭”模式。

安全删除信息:

删除信息时 安全地操作磁盘,存储卡或分区,或者只是文件或目录。 即使您认为已删除它,也可以轻松地将其恢复。 物理上来说,将包含个人数据的文档丢到垃圾箱中是没有用的,因为有人可以将其从容器中取出并看到它,所以您必须销毁纸张,在计算中也会发生同样的事情。 例如,您可以用随机或空数据填充内存,以覆盖您不想公开的数据。 为此,您可以使用它(要使其正常运行,必须以特权运行它,并用要在您的情况下操作的设备或分区替换/ dev / sdax ...):

dd if=/dev/zeo of=/dev/sdax bs=1M
dd if=/dev/unrandom of=/dev/sdax bs=1M

如果你想要的是 永久删除特定文件,您可以使用“切细”。 例如,假设您要删除一个名为passwords.txt的文件,该文件中记录了系统密码。 我们可以使用shred和overwrite例如上述26次,以确保删除后无法恢复它:

shred -u -z -n 26 contraseñas.txt

您可以安装诸如HardWipe,橡皮擦或安全删除之类的工具 “擦除”(永久删除)记忆,SWAP分区,RAM等。

用户帐号和密码:

完善密码系统 使用S / KEY或SecurID之类的工具来创建动态密码方案。 确保/ etc / passwd目录中没有加密的密码。 我们必须更好地使用/ etc / shadow。 为此,您可以使用“ pwconv”和“ grpconv”来创建新用户和组,但是要使用隐藏密码。 另一个有趣的事情是编辑/ etc / default / passwd文件以使您的密码过期,并强制您定期更新它们。 因此,如果他们获得了密码,它将不会永远持续下去,因为您会经常更改它。 使用/etc/login.defs文件,您还可以加强密码系统。 编辑它,查找PASS_MAX_DAYS和PASS_MIN_DAYS条目,以指定密码在到期前可以保留的最短和最长时间。 PASS_WARN_AGE显示一条消息,通知您密码将在X天后过期。 我建议您查看有关此文件的手册,因为条目很多。

未被使用的帐户 并且它们存在于/ etc / passwd中,它们必须具有Shell变量/ bin / false。 如果是另一个,请将其更改为此。 这样就不能将它们用于获取外壳。 在我们的终端中修改PATH变量也很有趣,这样就不会出现当前目录“。”。 也就是说,它必须从“ ./user/local/sbin/:/usr/local/bin:/usr/bin:/bin”更改为“ / user / local / sbin /:/ usr / local / bin: / usr / bin:/ bin”。

建议您使用 Kerberos作为网络身份验证方法.

PAM(可插入身份验证模块) 它类似于Microsoft Active Directory。 它提供了具有明显优势的通用,灵活的身份验证方案。 您可以查看/etc/pam.d/目录并在Web上搜索信息。 这里有很多解释...

留意特权 不同的目录。 例如,/ root应该由具有“ drwx-------”权限的root用户和root用户组拥有。 您可以在Web上搜索有关Linux目录树中每个目录应具有的权限的信息。 不同的配置可能很危险。

加密您的数据:

加密目录或分区的内容 您有相关信息的地方。 为此,您可以使用LUKS或eCryptFS。 例如,假设我们要加密名为isaac的用户的home:

sudo apt-get install ecryptfs-utils
ecryptfs-setup-private
ecryptfs-migrate-home -u isaac

在上述内容之后,在询问时提示密码或密码...

创建一个 私人目录例如,称为“私有”的我们也可以使用eCryptFS。 在该目录中,我们可以放入要加密的内容,以将其从其他人的视图中删除:

mkdir /home/isaac/privado
chmod 700 /home/isaac/privado
mount -t ecryptfs /home/isaa/privado

它将向我们询问有关不同参数的问题。 首先,它将允许我们在密码,OpenSSL和...之间进行选择,并且我们必须选择1,即“ passphrase”。 然后,我们输入要两次验证的密码。 之后,我们选择所需的加密类型(AES,Blowfish,DES3,CAST等)。 我选择第一个,AES,然后介绍密钥的字节类型(16、32或64)。 最后,我们用“是”回答最后一个问题。 现在,您可以装载和卸载此目录以使用它。

如果你只想 加密特定文件,您可以使用scrypt或PGP。 例如,一个名为passwords.txt的文件,您可以使用以下命令分别进行加密和解密(在两种情况下,它都会要求您输入密码):

scrypt <contraseñas.txt>contraseñas.crypt
scrypt <contraseñas.crypt>contraseñas.txt

使用Google Authenticator进行两步验证:

Ubutnu终端机中的Google AUthenticator

增加 两步验证 在您的系统中。 因此,即使您的密码被盗,他们也将无法访问您的系统。 例如,对于Ubuntu及其Unity环境,我们可以使用LightDM,但原理可以导出到其他发行版。 为此,您将需要平板电脑或智能手机,并且必须在Play商店中安装Google Authenticator。 然后在PC上,首先要做的是安装Google Authenticator PAM并启动它:

sudo apt-get install libpam-google-authenticator
google-authenticator

当您问我们验证码是否基于时间时,我们会以和肯定地回答。 现在,它向我们显示了要识别的QR码 谷歌身份验证 在您的智能手机上,另一种选择是直接从应用程序中输入密钥(这是在PC上显示为“您的新秘密是:”的密钥)。 如果我们不随身携带智能手机,它将为我们提供一系列代码,因此最好在飞行时牢记这些代码。 并且,我们将继续根据自己的喜好用yon答复。

现在,我们打开(使用nano,gedit或您喜欢的文本编辑器) 配置文件 搭配:

sudo gedit /etc/pam.d/lightdm

然后添加以下行:

auth required pam_google_authenticator.so nullok

我们保存,下次您登录时,它将要求我们提供 验证码 手机会为我们带来的收益。

如果有一天 您是否要删除两步验证,您只需从文件/etc/pam.d/lightdm中删除“ auth required pam_google_authenticator.so nullok”行。
请记住,常识和谨慎是最好的盟友。 GNU / Linux环境是安全的,但是无论您使用的操作系统多么好,连接到网络的任何计算机都不再安全。 如果您有任何疑问,问题或建议,可以离开 评论。 希望对您有帮助...


发表评论,留下您的评论

发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责资料:AB Internet Networks 2008 SL
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。

  1.   艳女

    您好,我发表评论; 我已经在Raspbian上安装了google-authenticator,没有任何问题,移动应用程序注册良好并为我提供了代码,但是在重新启动raspberry并重新启动系统时,它不会要求我输入双重身份验证代码输入用户名和密码。

    非常感谢。 一声问候。