ubuntu 20.04如何沙箱化systemd服务

简介: ubuntu 20.04如何沙箱化systemd服务

随着systemd越来越成熟,systemd提供了很多的功能特性可以对进程进行资源隔离和防护,虽然不是完全的隔离性,但是还是为安全性提供了保障。

这里我们使用vncserver systemd服务来做演示,这里的vncserver systemd配置如下

[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=simple
ExecStartPre=/bin/bash -c'/usr/bin/vncserver -kill ":$(id -u %i)" > /dev/null 2>&1 || :'ExecStart=/bin/bash -c'cd /home/%i;/usr/bin/vncserver ":$(id -u %i)" -geometry 1440x900 -alwaysshared -fg'ExecStop=/bin/bash -c'/usr/bin/vncserver -kill ":$(id -u %i)"'[Install]
WantedBy=graphical.target

将上述的进程沙箱化的话我们可以执行下述步骤:

1. 配置进程执行的用户和用户组

[Service]
User=%i
Group=%i

2. 禁止服务进程及其子进程获取新的权限

NoNewPrivileges=true

3. 阻止进程获取内核变量

ProtectKernelTunables=true

4. 阻止进程加载或者卸载内核模块

ProtectKernelModules=true
  1. 阻止进程读取或者写入内核日志
ProtectKernelLogs=true

6. 阻止修改cgroup

ProtectControlGroups=true

7. 阻止进程修改系统内存中的任何代码

MemoryDenyWriteExecute=true

8. 阻止进程对文件或者目录设置SUID或者SGID

RestrictSUIDSGID=true

9. 阻止进程修改硬件或者软件的时钟

ProtectClock=true

10. 禁用进程启用实时调度,防止cpu过载

RestrictRealtime=true

11. 强制进程使用特定目录。这可以防止进程读取其他程序在临时文件夹的内容

PrivateTmp=true
目录
相关文章
|
6月前
|
Ubuntu
百度搜索:蓝易云【Ubuntu开机自启服务systemd.service配置教程】
现在,你的服务将在Ubuntu开机时自动启动,并在之后的启动中持续运行。记得根据你的实际需求修改 `your_service_name.service`文件中的相关信息。
166 2
|
6月前
|
监控 Ubuntu 安全
Ubuntu开启FTP服务教程
在Ubuntu服务器上配置FTP服务是一个常见的需求,无论是用于文件分享、网站管理还是数据备份。FTP(文件传输协议)是一种用于在网络上传输文件的协议,它可以让用户通过身份验证下载或上传文件。本文将指导您如何在Ubuntu系统上安装和配置FTP服务器,以及如何管理用户权限来保证服务器的安全性。
536 0
Ubuntu20.04 Ntp服务安装及验证
Ubuntu20.04 Ntp服务安装及验证
|
6月前
|
Kubernetes Ubuntu 安全
Linux|科普扫盲帖|配置网络软件源---阿里云镜像仓库服务使用(centos,Ubuntu)
Linux|科普扫盲帖|配置网络软件源---阿里云镜像仓库服务使用(centos,Ubuntu)
2949 0
|
6月前
|
存储 Ubuntu 应用服务中间件
【Nginx】centos和Ubuntu操作系统下载Nginx配置文件并启动Nginx服务详解
【Nginx】centos和Ubuntu操作系统下载Nginx配置文件并启动Nginx服务详解
95 1
|
1月前
|
消息中间件 监控 Ubuntu
大数据-54 Kafka 安装配置 环境变量配置 启动服务 Ubuntu配置 ZooKeeper
大数据-54 Kafka 安装配置 环境变量配置 启动服务 Ubuntu配置 ZooKeeper
77 3
大数据-54 Kafka 安装配置 环境变量配置 启动服务 Ubuntu配置 ZooKeeper
|
1月前
|
Ubuntu 安全 Linux
|
3月前
|
缓存 Ubuntu 前端开发
在Ubuntu上手动与自动启动Nginx的踩坑经历、以及重启服务
本文分享了作者在Ubuntu系统上手动和自动启动Nginx服务的踩坑经历,包括创建启动脚本、解决依赖问题、配置服务自动启动以及通过命令行管理Nginx服务的方法。
392 0
在Ubuntu上手动与自动启动Nginx的踩坑经历、以及重启服务
|
5月前
|
Ubuntu
ubuntu搭建NFS服务 磁盘共享 nfs 搭建
ubuntu搭建NFS服务 磁盘共享 nfs 搭建
190 2
|
5月前
|
Linux Ubuntu
蓝易云 - Linux学习之Ubuntu20使用systemd管理OpenResty服务
这就是在Ubuntu 20使用systemd管理OpenResty服务的基本方法。
91 3