萨尔法保护 发表于 2018-11-13 09:08:22

nginx安全优化之用普通用户运行master

  一般情况下,我们在编译安装的时候会创建指定nginx来运行程序,但是nginx启动后它的master进程还是root,为了安全起见,我们要修改它的主进程,改为普通用户。
  注意:普通进程就使用普通用户管理就可以,不要任何程序都使用root
  检查:ps -ef
  1、先创建一个普通用户;
  useradd yujia
  2、 将nginx主程序下的配置文件conf、html、logs文件拷贝到普通用户的家目录下;
  cd /home/yujia
  cp -ap /usr/local/nginx/conf.
  cp -ap /usr/local/nginx/html.
  cp -ap /usr/local/nginx/logs .
  2、修改配置文件vim/home/yuja/conf/nginx.conf
  要想使用普通用户运行nginx 必须要将端口80更改,大于1024,此处使用8080,以下只列出修改的部分:
  error_log/home/yujia/nginx/logs/error.log error;
  pid      /home/yujia/nginx/logs/nginx.pid;
  http {
  server {
  listen 8080;
  server_namewww.yujia.com yujia.com;
  root   /home/yujia/nginx/html;
  indexindex.html;
  access_log /home/yujia/nginx/logs/www_access.log main;
  error_log/home/yujia/nginx/logs/www_error.log;
  }
  }
  #端口可以使用sudo或者 nat 转换解决;
  4、将/home/yujia目录下的logs、conf、html三个目录赋权给yujia这一普通用户;
  chown -R yujia /home/yujia/*
  5、 切换到yujia普通用户下启动nginx
  su - yujia
  /usr/local/nginx/sbin/nginx-c /home/yujia/conf/nginx.conf
  检查:ps -ef|grep nginx
  如果出现nginx: could not open error log file: open() "/usr/local/nginx/logs/error.log" failed (13: Permission denied) 类似错误,切换到root,将报错目录的权限改为777即可
  chmod -R 777 /usr/local/nginx/logs

页: [1]
查看完整版本: nginx安全优化之用普通用户运行master