mirror of
				https://github.com/superseriousbusiness/gotosocial.git
				synced 2025-10-30 22:02:25 -05:00 
			
		
		
		
	[feature/security] Add systemd sandboxing options to harden security (#440)
This commit is contained in:
		
					parent
					
						
							
								8cc70a14d6
							
						
					
				
			
			
				commit
				
					
						983e696bd6
					
				
			
		
					 1 changed files with 33 additions and 0 deletions
				
			
		|  | @ -17,6 +17,39 @@ Restart=on-failure | ||||||
| ExecStart=/gotosocial/gotosocial --config-path config.yaml server start | ExecStart=/gotosocial/gotosocial --config-path config.yaml server start | ||||||
| WorkingDirectory=/gotosocial | WorkingDirectory=/gotosocial | ||||||
| 
 | 
 | ||||||
|  | StandardOutput=append:/var/log/gotosocial/gotosocial.log | ||||||
|  | StandardError=inherit | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | # Sandboxing options to harden security | ||||||
|  | # Details for these options: https://www.freedesktop.org/software/systemd/man/systemd.exec.html | ||||||
|  | NoNewPrivileges=yes | ||||||
|  | PrivateTmp=yes | ||||||
|  | PrivateDevices=yes | ||||||
|  | RestrictAddressFamilies=AF_UNIX AF_INET AF_INET6 | ||||||
|  | RestrictNamespaces=yes | ||||||
|  | RestrictRealtime=yes | ||||||
|  | DevicePolicy=closed | ||||||
|  | ProtectSystem=full | ||||||
|  | ProtectControlGroups=yes | ||||||
|  | ProtectKernelModules=yes | ||||||
|  | ProtectKernelTunables=yes | ||||||
|  | LockPersonality=yes | ||||||
|  | SystemCallFilter=~@clock @debug @module @mount @obsolete @reboot @setuid @swap | ||||||
|  | 
 | ||||||
|  | # Denying access to capabilities that should not be relevant | ||||||
|  | # Doc: https://man7.org/linux/man-pages/man7/capabilities.7.html | ||||||
|  | CapabilityBoundingSet=~CAP_RAWIO CAP_MKNOD | ||||||
|  | CapabilityBoundingSet=~CAP_AUDIT_CONTROL CAP_AUDIT_READ CAP_AUDIT_WRITE | ||||||
|  | CapabilityBoundingSet=~CAP_SYS_BOOT CAP_SYS_TIME CAP_SYS_MODULE CAP_SYS_PACCT | ||||||
|  | CapabilityBoundingSet=~CAP_LEASE CAP_LINUX_IMMUTABLE CAP_IPC_LOCK | ||||||
|  | CapabilityBoundingSet=~CAP_BLOCK_SUSPEND CAP_WAKE_ALARM | ||||||
|  | CapabilityBoundingSet=~CAP_SYS_TTY_CONFIG | ||||||
|  | CapabilityBoundingSet=~CAP_MAC_ADMIN CAP_MAC_OVERRIDE | ||||||
|  | CapabilityBoundingSet=~CAP_NET_ADMIN CAP_NET_BROADCAST CAP_NET_RAW | ||||||
|  | CapabilityBoundingSet=~CAP_SYS_ADMIN CAP_SYS_PTRACE CAP_SYSLOG  | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
| [Install] | [Install] | ||||||
| WantedBy=default.target | WantedBy=default.target | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue