Linux:找出Apache用户名
时间:2020-01-09 10:46:07 来源:igfitidea点击:
如何使用命令行在Linux操作系统或者CentOS Linux服务器下找到我的Apache Web服务器用户名?
有多种方法可以找到在Linux操作系统上运行httpd服务器的Apache Web服务器用户或者组名。
lsof命令
运行以下命令:
lsof -i lsof -i | less lsof -i | grep :http
输出示例:
apache2 4122 root 4u IPv6 32570 0t0 TCP *:http (LISTEN) apache2 4125 www-data 4u IPv6 32570 0t0 TCP *:http (LISTEN) apache2 4126 www-data 4u IPv6 32570 0t0 TCP *:http (LISTEN) apache2 4127 www-data 4u IPv6 32570 0t0 TCP *:http (LISTEN) apache2 4128 www-data 4u IPv6 32570 0t0 TCP *:http (LISTEN) apache2 4129 www-data 4u IPv6 32570 0t0 TCP *:http (LISTEN)
其中:
- apache2(第一列)Apache服务/服务器名称
4122
(第二列)Apache服务器PID- " www-data"(第3列)PID的Apache服务器用户名。这为您提供了apache用户名。
httpd.conf文件
另一种方法是浏览配置文件httpd.conf并找出用户名和组名:
egrep -iw --color=auto 'user|group' /etc/httpd/conf/httpd.conf egrep -iw --color=auto '^user|^group' /etc/httpd/conf/httpd.conf
输出示例:
User apache Group apache
ps和grep命令
执行以下命令:
$ ps aux | egrep '([a|A]pache|[h|H]ttpd)'
或者
$ ps aux | egrep --color '([a|A]pache|[h|H]ttpd)'
您可以使用以下bash功夫获取用户名:
ps aux | egrep '([a|A]pache|[h|H]ttpd)' | awk '{ print }' | uniq | tail -1
输出示例:
www-data
使用apachctl命令找出Apache以什么身份运行?
输入以下命令
apachectl -S
输出示例:
VirtualHost configuration: *:80 nas01.theitroad.com (/etc/apache2/sites-enabled/000-default.conf:1) ServerRoot: "/etc/apache2" Main DocumentRoot: "/var/www/html" Main ErrorLog: "/var/log/apache2/error.log" Mutex default: dir="/var/lock/apache2" mechanism=fcntl Mutex mpm-accept: using_defaults Mutex watchdog-callback: using_defaults Mutex proxy: using_defaults PidFile: "/var/run/apache2/apache2.pid" Define: DUMP_VHOSTS Define: DUMP_RUN_CFG User: name="www-data" id=33 Group: name="www-data" id=33