原始文件上下文为/run/unicorn.sock
tcontext=system_u:object_r:var_run_t:s0
当我启动套接字单元时,如何使文件上下文自动成为 system_u:object_r: httpd_var_run_t :s0 ,以便 nginx 服务器可以连接并写入套接字文件而不会被 SELinux 拒绝。
这是我创建的套接字守护进程/usr/lib/systemd/system/unicorn.socket
[Unit]
Description=unicorn socket
[Socket]
ListenStream=/run/unicorn.sock
[Install]
WantedBy=sockets.target
以及相应的/usr/lib/systemd/system/unicorn.service
[Unit]
Description=unicorn daemon
Requires=unicorn.socket
After=network.target
[Service]
User=ec2-user
Group=ec2-user
WorkingDirectory=/home/ec2-user/product-catalog
ExecStart=/home/ec2-user/product-catalog/venv/bin/gunicorn \
--access-logfile - \
-k uvicorn.workers.UvicornWorker \
--workers 3 \
--bind unix:/run/unicorn.sock \
app:app
[Install]
WantedBy=multi-user.target
我注意到 php-fpm 的套接字文件位于 /run/php-fpm