Linux.是众所周知的,是最安全的操作系统可用的。但这并不意味着你可以指望它尽可能安全地开箱即用。有一些快速,简单的步骤,以确保您的平台更安全。
以下是在新安装的Ubuntu Server 18.04平台上执行的五个安全增强任务。
安全共享内存
您应该做的第一件事是确保共享的安全记忆用于系统。如果您没有意识到,则共享内存可以用于对运行服务的攻击。因此,保护系统内存的那部分。通过修改此操作,您可以执行此操作挂载文件。方法如下:
-
通过发出命令打开要编辑的文件:
sudo nano / etc / fstab
-
将以下行添加到该文件的底部:
TMPFS /run/shm TMPFS defaults,noexec,nosuid 0 0
-
保存并关闭文件。
-
要使更改生效,请使用以下命令重新启动服务器:
sudo重新启动
只允许特定用户SSH登录
使用Secure Shell(SSH)工具登录远程Linux服务器。默认情况下,SSH相当安全,虽然默认情况下,您可以通过仅为特定用户启用SSH登录来使其更安全,例如,如果您只想允许用户的SSH条目杰克,从IP地址192.168.1.162.
以下是如何做到这一点:
-
打开终端窗口。
-
打开ssh配置文件以进行此命令编辑:
sudo nano /etc/ssh/sshd_config
-
在文件的底部,添加行:
AllowUsers jack@192.168.1.162
-
保存并关闭文件。
-
使用此命令重新启动sshd:
sudo systemctl重新启动sshd
安全shell现在只允许用户输入杰克来自IP地址192.168.1.162.如果用户不是杰克试图通过SSH进入服务器时,会提示输入密码,但密码不会被接受(无论是否正确),并且将拒绝进入。
您可以使用通配符,例如,从特定IP地址授予对所有用户的访问权限。如果您想允许所有用户通过SSH访问本地网络访问服务器,请添加以下行:
allowusers * @192.168.1.*
重启SSH服务器,就可以开始了。
包括安全登录横幅
尽管添加安全登录横幅似乎不是最有效的安全措施,但它有好处。例如,如果一个不想要的用户获得了对您服务器的访问权,并且如果他们看到您在登录横幅中包含了特定的信息(警告他们操作的后果),他们可能会三思而后行。下面是如何设置它:
-
打开一个终端窗口.
-
发出命令:
sudo nano /etc/issue.net
-
编辑文件以添加合适的警告。
-
保存并关闭文件。
-
禁用来自日期(MOTD)的消息中的横幅消息。打开终端并发出命令:
sudo nano /etc/pam.d/sshd.
-
打开该文件进行编辑后,注释掉以下两行(添加一个#到每行的开头):
会话可选pam_motd。因此公告= /运行/ motd.dynamic
会话可选pam_motd。所以noupdate -
接下来,开放/etc/ssh/sshd_config使用命令:
sudo nano /etc/ssh/sshd_config
-
取消注释行(删除#象征):
横幅/etc/issue.net.
-
保存并关闭该文件。
-
使用命令重新启动SSH服务器:
sudo systemctl重新启动sshd
-
当有人使用SSH登录您的服务器时,他们会看到您的新添加的横幅警告其进一步行动的任何后果。
限制SU访问
除非另有配置,否则Linux用户可以使用苏指挥更改为其他用户。当他们这样做时,他们会获得授予其他用户的特权。所以,如果是用户一种(对服务器的访问权限有限)使用苏更改为用户B.(对服务器的访问权限较少),用户一种现在用户B.并且可以对服务器做更多的事情。因此,请禁用对su命令的访问。方法如下:
-
使用此命令在服务器上创建一个新的管理组:
sudo groupadd admin.
-
例如,将用户添加到此组,以添加用户杰克对小组。这个命令是:
sudo usermod -a-g管理杰克
如果您以用户身份登录杰克,注销并重新登录以获取更改以生效。
-
使用命令授予对管理组的求解命令:
sudo dpkg-stamoverride - update --add根admin 4750 / bin / su
-
如果您以该用户登录到您的Ubuntu服务器杰克并尝试使用su命令切换到另一个用户,这是允许的,因为杰克是管理员的一员。其他用户被拒绝访问su命令。
安装fail2ban.
Fail2ban是一个入侵防御系统,它监视日志文件并搜索与失败登录尝试对应的特定模式。如果从特定的IP地址(在指定的时间内)检测到一定数量的失败登录,fail2ban将阻止对该IP地址的访问。
下面是如何安装fail2ban:
-
打开终端窗口并发出此命令:
sudo apt-get安装fail2ban
-
目录/etc/fail2ban包含主配置文件,jail.conf.同样在该目录中是子目录,jail.d..的jail.conf文件是主要配置文件和jail.d.包含辅助配置文件。请勿编辑jail.conf文件。相反,创建一种监视SSH登录的新配置。输入以下命令:
sudo nano /etc/fail2ban/jail.local
-
在这个新文件中增加如下内容:
[SSHD]
启用=真实
端口= 22
过滤= SSHD.
logpath = /var/log/auth.log.
maxretry = 3这个配置启用监牢,将要监视的SSH端口设置为22,使用sshd过滤器,并设置要监视的日志文件。
-
保存并关闭该文件。
-
使用命令重新启动fail2ban:
Sudo systemctl restart fail2ban
-
如果您尝试将shell安全到该服务器并失败三次(将作为Faile2Ban设置为默认值),则会阻止访问权限IP地址你正在工作。