千家信息网

如何实现Ubuntu Server安全设置

发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,这篇文章主要讲解了"如何实现Ubuntu Server安全设置",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"如何实现Ubuntu Server安全设置
千家信息网最后更新 2025年01月23日如何实现Ubuntu Server安全设置

这篇文章主要讲解了"如何实现Ubuntu Server安全设置",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"如何实现Ubuntu Server安全设置"吧!

一、用户概述

默认状况下,ubuntu server的root用户是不启用的,一般用户通过在命令前加前缀"sudo",来暂时获得管理员权限。随后会提示输入password,此password与一般用户的密码一样。也可以通过 sudo –i来将一般用户提升为超级用户。

启用root帐号仅需运行sudo passwd root,然后根据提示输入密码即可激活root.如果要关闭root用户,仅需运行 sudo passwd –l root即可。

Root帐号的密码和普通用户使用sudo的密码没有任何联系。root帐号和普通帐号的sudo不同之处在于,使用root帐号登陆后权限始终为管理员权限,而普通帐号的sudo,仅在执行某一命令时是管理员权限,当执行完命令后又会自动降为普通用户权限。

二、用户密码的设置与恢复

使用命令 sudo passwd user-name,然后根据提示输入sudo密码,如果验证通过,则会提示为user-name输入新密码。此命令同样可以为root设置和恢复密码。

三、GRUB的安全性

GRUB用于引导系统及进行系统恢复。可以通过对其进行添加操作密码的方式,来增加其安全性。主要是对"/boot/grub/menu.lst"进行修改。示例如下:

没有修改前:

代码如下:



default 0

timeout 10

title Ubuntu,kernel 2.6.15-26-server-LAMP

root (hd0,2)

kernel /boot/vmlinuz-2.6.15-server root=/dev/hda3 ro quiet splash

initrd /boot/initrd.img-2.6.15-server

savedefault

boot


修改后:


代码如下:


default 0

timeout 10

password=12345

title Ubuntu,kernel 2.6.15-26-server-LAMP

lock

root (hd0,2)

kernel /boot/vmlinuz-2.6.15-server root=/dev/hda3 ro quiet splash

initrd /boot/initrd.img-2.6.15-server

savedefault

boot


然后reboot系统,待出现GRUB画面时,将光标移到该选项处,按下‘p’,输入密码12345即可。通过这种方式,可以有效地防止通过recovery mode进行恶意破坏,如修改root密码等。

由于以上方式的密码是以明文的形式出现在menu.lst中,也具有危险性,因此可采取对其加密的方式。具体如下:

sudo grub-md5-crytp ,然后根据提示输入两遍 12345(请更改为任意字符),之后出现31个字符,记录下该字符串。将password=12345 修改为password --md5 31位字符串,reboot系统即可。

四、使用救援光碟恢复系统

当忘掉GRUB密码或因某种原因GRUB无法启动,此时即可使用救援光碟。将光碟放入CDROM,reboot系统,待出现启动条目时,移动光标至"Resuce broken system".随后会自动监测系统硬件,如语言种类、网路接口、硬盘等。最后将出现命令行选项:


代码如下:


Execute a Shell in /dev/discs/disc0/part1

Execute a Shell in the installer environment

Reinstall GRUB boot loader

Choose a different root file system

Reboot the system


选择第一项,随后进入bash shell。

注意:/dev/discs/disc0/part1 中的part1表示欲恢复的系统安装的分区,应根据实际情况选择。


五、Summary

处于安全考虑:

1 root帐户应该disable;

2 GRUB应设置MD5密码;

3 应设置BIOS,使禁止从CD-ROM启动系统。

六、确保SSH的安全性


SSH对于远程管理一台服务器来说是一个好方法。然而,SSH仍然存在着诸多问题。服务器和客户端的通信是安全的,不过这并不意味着涉及到的主机也是安全的。向外部世界打开一个SSH服务也就意味着允许强力攻击。
我们可以采取一些极为简单的方法来真正地强化经由SSH的远程访问,特别是我们不能将这种服务与源端口的一个有限数量相联系时。
先说一件重要的事情,sshd_config。在Ubuntu中,这通常在/etc/ssh中可以找到,它可以用于配置大量的特性。最简单的往往是最好的。限制可以通过SSH登录的用户是一个首要的原则。这可以用如下两种方法完成:根据用户或者根据组。AllowGroups允许一个组的任何经鉴定的用户通过SSH访问服务器。不过,一个更加精细的方法是使用AllowUsers选项。
另一个简单的方法是将监听端口从22号端口移到某个其它的随机指定的端口。这就减少了显示SSHD运行状态扫描的可能性。
我们还可以禁用对根的访问,并禁用口令验证而只使用密钥验证。
下一步就是使用一个称为Denyhosts的小工具,大家可以从http://denyhosts.sourceforge.net/下载它。我们一定要保证启用/etc/apt/source.list中的资源,然后键入下面的命令:

代码如下:


sudo apt-get update
sudo apt-get install denyhosts


DenyHosts意在由Linux系统管理员运行,以帮助其挫败对SSH服务器的攻击(也称为基于字典的攻击或强力攻击)的企图。
DenyHosts充当着一个对SSH和其它服务的动态阻击器,它依靠/etc/hosts.deny和 hosts.allow进行工作,并能够以动态方式构建重复地与我们的服务器连接的主机列表。默认情况下,这项服务会阻止来自那些不断地试图与我们的主机连接并实施访问的IP地址源。Denyhosts的处理在/etc/denyhosts.conf中进行配置。
我们还可以通过Iptables行连接速率的限制,而且我们还应该在服务器上部署防火墙。
一旦这些布置停当,我们就会确信自己在一台面向公众的主机上拥有了一个更加安全的SSH。

感谢各位的阅读,以上就是"如何实现Ubuntu Server安全设置"的内容了,经过本文的学习后,相信大家对如何实现Ubuntu Server安全设置这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

密码 用户 安全 系统 服务 命令 服务器 帐号 输入 方式 方法 权限 提示 管理 普通 主机 代码 可以通过 字符 端口 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络安全等保建设项目 筛选后无筛选数据库 我的世界的外置登录能玩服务器吗 如皋网络安全大队 河北健康智慧养老软件开发 360网络安全培训课程有哪些 字节跳动时序数据库查询内核 数据存储服务器和云存储服务器 linux高性能服务器 电力软件开发有前途吗 机算机网络技术介绍 开软件开发与销售软件有介定 2008r2数据库如何共享 u8服务器装win10 软件开发著作权免增值税 cf连接服务器失败怎么搞 泉州微信插件 软件开发 网络安全保密宣传教育的内容 6年软件开发经验多少钱 东莞app软件开发公司排名 上海标准软件开发费用 福建人工智能应用软件开发 网络技术公司经营模式 大数据云计算软件开发公司 服务器防火墙打开远程桌面 哪里培训软件开发好 蚂蚁金服杭州网络技术待遇 敏捷软件开发适用于 6年软件开发经验多少钱 安徽参考软件开发优势
0