系统加密
文章目录
一、前言
刚安装ubuntu系统时,都会创建第一个用户,该用户相当于管理员,拥有sudo权限。
为了不让学生对系统造成影响,新建一个普通用户,没有sudo权限就不能对其家目录以外的文件夹进行修改删除。
二、创建新用户
使用管理员登录,即系统安装时注册的那个用户。
- 使用useradd命令新建用户;-m表示创建家目录
- 设置密码
jw@ubuntu:~$ sudo useradd student -m
[sudo] password for jw:
jw@ubuntu:~$ ls /home/
jw student
jw@ubuntu:~$ sudo passwd student
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
三、隐藏本机的管理员用户jw
cd /var/lib/AccountsService/users/
sudo gedit jw
- 将
SystemAccount=false
改为true
- 如果没有找到对应用户的文件,则拷贝gdm并重命名为用户名,将将
SystemAccount=false
改为true
即可
重启,登录界面变成只有stduent
用户了,jw
用户被隐藏了。
若要登录root
或本机管理员,点击Not listed
输入对应用户名密码即可。
四、删除用户
需要以管理员登录才能执行删除命令:userdel
;-r表示删除家目录
jw@ubuntu:~$ sudo userdel -r student
[sudo] password for jw:
userdel: student mail spool (/var/mail/student) not found
jw@ubuntu:~$ ls /home/
jw
五、设置root密码
jw@ubuntu:~$ sudo passwd root
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
六、GRUL加密防止被重置root密码
6.1 未加密前
- 重启系统,在开机时按住shift键即可进入GRUB界面:
- 选择第二项,按下回车
- 选择第二项,按下
E
- 将页面拉到最下方,找到
ro recovery nomodeset
并删掉,在当前行末尾加上rw single init=/bin/bash
- 编辑好后按下Ctrl+X,出现以下界面:
- - 这时就可以修改root的密码:输入命令
passwd root
修改密码,并重启即可。
6.2 对GRUB加密
- 以管理员帐号登录系统,打开终端
- 输入
grub-mkpasswd-pbkdf2
生成密钥
jw@ubuntu:~$ grub-mkpasswd-pbkdf2
Enter password:
Reenter password:
PBKDF2 hash of your password is grub.pbkdf2.sha512.10000.096729F52AB98935AF2C47F6E7A80DEDBCA2096A62E2A1670E86B11071673F3390AB22FA4153739C957DB2ADB532C397371AFC844E632A15C8B125925C4F1829.B03698AB15706BD1DD6A83F55083DB643E3B86E368119966F319AEDB7E7665C41DA4695A6ABE667EC12AD16DB29D8A4904A20D8C9EBC90503303DCA78E97CA2B
- 修改
/etc/grub.d/
目录下的00_header
文件
jw@ubuntu:~$ cd /etc/grub.d/
jw@ubuntu:/etc/grub.d$ sudo gedit 00_header
vim 00_header:在最后添加如下代码:
cat << EOF
set superusers="username"(加密管理名称: eg: root)
password_pbkdf2 username [上边grub-mkpasswd-pbkdf2加密后的密码]
EOF
- 修改
/etc/grub.d/
目录下的10_linux
文件
在linux_entry()
{
os="$1"
version="$2"
type="$3"
args="$4"
1. 在args="$4"下面(添加)user=""
2. 找到以下两个代码块
echo "menuentry (添加 --user=username[加密管理名称(eg: root)]) '$(echo "$title" | grub_quote)' ${CLASS} \$menuentry_id_option 'gnulinux-$version-$type-$boot_device_id' {" | sed "s/^/$submenu_indentation/"
else
echo "menuentry (添加 --unrestricted) '$(echo "$os" | grub_quote)' ${CLASS} \$menuentry_id_option 'gnulinux-simple-$boot_device_id' {" | sed "s/^/$submenu_indentation/"
- 更新grub
update-grub
- 打开 grub.cfg 这个文件进行验证
jw@ubuntu:/etc/grub.d$ cd /boot/grub/
jw@ubuntu:/boot/grub$ sudo gedit grub.cfg
6.3 重启再验证
- 开机时按住shitf键进入grub2的界面:
- 选择第二项,回车,出现了输入用户名以及密码的界面:
- 至此,grub加密成功。
七、文件权限管理
- 改变文件所有权chown
sudo chown username myfile
chown -R username /files/work
参数-R表示递归执行;
- 改变文件权限chmod
sudo chmod 777 filename
sudo chmod -R 754 director
三个数字的顺序分配代表用户、用户组、其他。参数-R表示递归执行;
7.1 禁用普通用户使用/media之类的共享文件夹
ubuntu桌面版会自动挂载U盘到/media目录下,只赋予该目录的读权限,则无法从系统中拷贝;
sudo chmod 770 /media
只有root组内的用户可以访问,管理员也需要借助sudo才能访问。
7.2 禁用linux自带一些命令工具,主要位于/bin目录下
sudo chmod 750 df
只有root组内的用户可以访问,管理员也需要借助sudo才能访问。