现在的位置:首页  /  云计算培训   /   云计算技术教程

运维工程师如何更改Nginx服务的默认用户

来源: 薪享宏福
发布时间: 2019年03月28日
分享到:
为了让Web服务更安全,需要尽可能地改掉软件默认的所有配置,包括端口、用户等。
 
下面就来更改Nginx服务的默认用户。
 
首先,查看Nginx服务对应的默认用户。一般情况下 , Nginx服务启动后,默认使用的用户是nobody ,查看默认的配置文件,代码如下:
为了防止黑客猜到这个Web服务的用户,我们需要将其更改成特殊的用户名,例如nginx或特殊点的inca ,但是这个用户必须是系统里事先存在的,下面以nginx用户为例进行说明。
 
1、为Nginx服务建立新用户。
 
为Nginx服务建立新用户的操作过程如下:
useradd nginx -S /sbin/nologin -M 
#<==不需要有系统登录权限,应当禁止其登录能力,相当于Apache里的用户
id nginx #<==检查用户
 
2、配置Nginx服务,让其使用刚建立的nginx用户。更改Nginx服务默认使用的用户, 方法有两种:
 
第一种为直接更改配置文件参数,将默认的"#user nobody ;"改为如下内容:
 
user nginx nginx;
 
如果注释或不设置_上述参数,则默认为nobody用户,不推荐使用nobody用户名,最好采用一一个普通的用户名,此处用大家习惯的、前文建立好的nginx用户。
 
第二种方法为在编译Nginx软件时直接指定编译的用户和组,命令如下:
 
-with-http_ stub_ status_ module --with-http_ ssl_ module
 
提示:在编译Nginx服务时,就是这样带着参数的,因此无论配置文件中是否添加参数,默认都是nginx用户。
 
3、检查更改用户的效果。
 
重新加载配置后,检查Nginx服务进程的对应用户,代码如下:
 
通过查看上述更改后的Nginx进程,可以看到worker processes对应的用户都变成了nginx。所以,我们有理由得出结论,上述的两种方法都可设置Nginx的worker进程运行的用户。当然, Nginx的主进程还是以root身份运行的。

相关推荐:

sysVinit方式下系统的启动特点

systemd方式 下系统的启动特点

sysVinit的正常启动顺序详细解析教程

运维培训班的学员要明白开发同样重要

PHP运维常见问题以及解决办法

云计算运维工程师遇到php故障该如何处理

运维程序员如何做到对php业务监控和故障发现

运维工程师如何提升桌面云存储性能,有哪些方式?