解-维护Linux服务器的7个过程

【IT168 谈论】本文将向您介绍根本的Linux服务器安全维护措施,侧重于Debian/Ubuntu,可是您能够将本文介绍的一切内容运用于其他Linux发行版。

1. 更新你的服务器

要维护服务器,您应该做的榜首件事是更新本地存储库,并经过运用最新的补丁来晋级操作体系和已装置的运用程序。

关于Ubuntu和Debian:

$ sudo apt update && sudo apt upgrade -y

在Fedora,CentOS或RHEL上:

$ sudo dnf upgrade

2. 创立一个新的特权用户帐户

接下来,创立一个新的用户帐户。永久不要以root用户身份登录服务器。相反,创立您自己的帐户,赋予它sudo权限,并运用它登录到您的服务器。

首要创立一个新用户:

$ adduser

经过将(-a)sudo组(-G)附加到用户的组成员身份,颁发新用户帐户sudo权限:

$ usermod -a -G sudo

3.上传您的SSH密钥

运用SSH密钥登录到新服务器。您能够运用ssh-copy-id指令将预先生成的SSH密钥上传到新服务器:

$ ssh-copy-id

@ip_address

现在,您无需输入暗码即可登录新服务器。

4. 安全的SSH

接下来,进大北农行以下三个更改:

禁用SSH暗码认证

约束root长途登录

约束对IPv4或IPv6的拜访

运用您挑选的文本编辑器翻开/ etc / ssh / sshd_config并保证以下行:

PasswordAuthentication yes

PermitRootLogin yes

像这样:

PasswordAuthentication no

PermitRootLogin no

接下来,经过修正AddressFamily选项将SSH服务约束为IPv4或IPv6 。要将其更改为仅运用IPv4(对大多数人来说应该没问题),请进行以解-维护Linux服务器的7个过程下更改:

AddressFamily inet

重新启动SSH服务以启用您的更改。请注意,在重新启动SSH服务器之前,与服务器树立两个活动衔接。有了额定的衔接,您能够在重新启动犯错的情况下修正一切问题。

在Ubuntu上:

$ sudo service sshd restart

在Fedora或CentOS或任何运用Systemd的体系上:

$ sudo systemctl restart sshd

5. 启用防火墙

装置防火墙,启用防火墙并对其进行装备,以仅答应您指定的网络流量。简易防火墙(UFW)是iptables的易于运用的界面,可大大简化防火墙的装备进程。

您能够经过以下办法装置UFW:

$ sudo apt install ufw

默许情况下,UFW回绝一切传入衔接,并答应一切传出衔接。这意味着服务器上的任何运用程序都能够拜访互联网,可是任何测验拜访服务器的内容都无法衔接。

首要,保证您能够经过启用对SSH、HTTP和HTTPS的拜访来登录:

$ sudo ufw allow ssh

$ sudo ufw allow http

$ sudo ufw allow https

然后启用UFW:

$ sudo ufw enable

您能够经过以下办法检查答应和回绝哪些服务:

$ sudo ufw status

假如您想禁用UFW,能够经过键入以下内容来禁用:

$ sudo ufw disable

您也能够运用firewall-cmd,它现已装置并集成到某些发行版中。

6. 装置Fail2ban

Fail2ban是一个用于检查服务器日志以查找重复或主动进犯的运用程序。假如找到任何内容,它将更改防火墙以永久地或在指定的时间内阻挠进犯者的IP地址。

您能够经过键入以下内容来装置Fail2ban:

$ sudo apt install fail2ban -y

然后仿制随附的装备文件:

$ sudo cp /etc/fail2b解-维护Linux服务器的7个过程an/jail.conf /etc/fail2ban/jail.local

并重新启动Fail2ban:

$ sudo service fail2ban restart

该软件将不断检查日志文件以查找进犯。一段解-维护Linux服务器的7个过程时间后,该运用程序将树立许多的制止IP地址列表。您能够经过以下办法恳求SSH解-维护Linux服务器的7个过程服务的当时状况来检查此列表:

$ sudo fail2ban-client status ssh

7.删去未运用的面向网络的服务

简直一切Linux服务器操作体系都启用了一些面向网络的服务。或许您期望保存其间大多数,可是,需求删去一些内容。您能够运用ss指令检查一切正在运转的网络服务:

$ sudo ss -atpu

ss的输出将取决于您的操作体系。这是您或许看到的示例。它显现SSH(sshd)和Ngnix(nginx)服务正在侦听并预备衔接:

tcp LISTEN 0 128 *:http *:* users:(("nginx",pid=22563,fd=7))

tcp LISTEN 0 128 *:ssh *:* users:(("sshd",pid=685,fd=3))

删去未运用的服务("")的办法将因您的操作体系及其运用的程序包管理器而异。

要删去Debian / Ubuntu上未运用的服务:

$ sudo apt purge

要在Red Hat / CentOS上删去未运用的服务:

$ sudo yum remove

再次运转ss -atup以承认不再装置和运转未运用的服务。

本文介绍了维护Linux服务器的一些根本过程。您还能够依据运用服务器的办法,启用其他安全办法,包含单个运用程序装备、侵略检测软件以及启用拜访操控(例如,两层身份验证)等功能。