标签: apache-httpd

PrivateTmp=true 的服务如何访问 /tmp 目录中的 unix 套接字(例如,从运行在 Apache 中的 PHP 提交 Torque 作业)

我们有一个网络服务器,可以执行用户提交的科学计算。计算可能需要长时间运行,因此我们使用Torque资源管理器(又名 pbs_server)在少数计算节点上分发/调度它们。Torque 使用目录中的 unix 域套接字/tmp进行通信,但 http 服务器(以及从中派生出来的进程)无法访问真正的/tmp目录,因此对于这些进程,套接字似乎丢失,从而导致错误。

细节:

  • Web 服务器正在运行 Apache,它作为具有 systemd 属性PrivateTmp=true集的服务运行。这导致服务拥有自己的/tmp目录,与“真正的”根目录 /tmp 无关。
  • 这些作业实际上是从 PHP 提交的(在 Apache 进程中运行)。PHP 对 进行系统调用qsub,这是提交作业的 Torque 命令。因为qsub是从 PHP 调用的,所以它继承了/tmpApache的“fake”目录。
  • qsub在内部尝试连接到位于 的 unix 套接字/tmp/trqauthd-unix。但由于它没有看到真正的 /tmp 目录,它失败并出现以下错误: Error in connection to trqauthd (15137)-[could not connect to unix socket /tmp/trqauthd-unix: 2]

我能实现的唯一解决方案是编辑 systemd 下的 httpd.service 文件并将其更改PrivateTmp为 false。这确实解决了问题。但我宁愿不这样做,因为(我假设) PrivateTmp 被设置为 true 是有充分理由的。

我想知道的是,是否有任何方法可以在不同的位置创建套接字,或者以某种方式建立到可以从 Apache(及其分叉进程)内部使用的套接字的链接。

创建到套接字的链接是微不足道的,但它并不能解决问题,因为我不知道有什么方法可以配置qsub …

systemd apache-httpd torque unix-sockets

4
推荐指数
1
解决办法
5703
查看次数

Apache:我的private.key 丢失了,是否可以从certificate.crt 重新创建它?

我丢失了我的private.key文件,这是正确操作我的 SSL 证书所必需的。我只有certificate.crt文件。

是否可以private.keycertificate.crt文件生成文件?从我所读到的,我不这么认为。如果我错了,我不知道该怎么做。

我该怎么做才能提交它certificate.crt以使其正常工作?

Apache 需要所有:

  • certificate.crt
  • intermediate.pem
  • private.key

档案;例如:

SSLCertificateFile /etc/ssl/crt/certificate.crt
SSLCertificateChainFile /etc/ssl/crt/intermediate.pem
SSLCertificateKeyFile /etc/ssl/crt/private.key
Run Code Online (Sandbox Code Playgroud)

ssl certificates apache-httpd

4
推荐指数
2
解决办法
3223
查看次数

在 Ubuntu 16.04 中允许在端口 80 和 443 上访问 Apache

我刚刚在 Ubuntu 16.04 上安装了 UFW 0.35:

root@localhost:/etc# ufw --version
ufw 0.35
Copyright 2008-2015 Canonical Ltd.
Run Code Online (Sandbox Code Playgroud)

root@localhost:/etc# ufw app list
Available applications:
  OpenSSH
Run Code Online (Sandbox Code Playgroud)

我想允许在端口 80 和 443 上访问 Apache,使用命令

$ ufw allow "Apache Full"
Run Code Online (Sandbox Code Playgroud)

但我有一个错误

ERROR: Could not find a profile matching 'Apache Full'
Run Code Online (Sandbox Code Playgroud)

linux ubuntu ufw apache-httpd apache-virtualhost

4
推荐指数
1
解决办法
2万
查看次数

让 PHP 与 apache 一起工作以通过浏览器运行 .php 文件

我有运行 Debian 5.0 的 VPS(我认为),我想让它运行 PHP 文件。有人告诉我它需要使用 Apache 进行配置。我尝试输入命令apt-get install apache2 php5 libapache2-mod-php5。但是没有任何变化。控制台输出:http : //pastebin.com/sVMWq6mA

这是我的一切/etc/apache2/mods-enabledhttp://img35.imageshack.us/img35/6474/modsb.jpg

我的网络服务器可以在这里访问:http : //206.217.223.136/test/ 在我的 test.php 文件中,我有代码:

<?php
 phpinfo();
?>
Run Code Online (Sandbox Code Playgroud)

但它没有显示页面,而是尝试下载它。我怎样才能解决这个问题?

debian php apache-httpd

3
推荐指数
1
解决办法
3万
查看次数

Apache2 的配置文件的用途是什么?

为什么Apache2有多个配置文件?他们的角色是什么?我找到了一些关于旧 Apache 版本的信息,但它通常已被弃用,并且 Apache 官方文档没有解释拆分配置文件的逻辑以及它们的用途。

configuration apache-httpd

3
推荐指数
1
解决办法
333
查看次数

机器人请求 apache 日志中的奇怪资源

在准备 RHSCA 考试时,我设置了我的第一台家庭服务器,很快发现机器人已经开始请求常见易受攻击的文件。一开始很令人震惊,然后当我发现这些特定的尝试是多么无害和无效时,我就觉得很有趣了。

现在我在我的 apache access_log 中看到一些奇怪的请求,我只是不明白,希望有人能帮助我澄清。

我不明白为什么机器人会从我的服务器路径中请求另一台服务器。据我了解,该机器人正在下面显示的日志中请求以下资源:http://MY.IP.ADD.RESS/http://61.152.144.145/judge.php

58.218.199.250 - - [15/Sep/2012:06:47:38 -0500] "GET http://61.152.144.145/judge.php HTTP/1.1" 404 287 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
Run Code Online (Sandbox Code Playgroud)

这甚至没有任何意义。我收到了很多这些无意义的请求,我想知道从其他人的服务器请求另一台服务器是否可能对入侵者有用,或者这只是一个不知道他们在做什么的脚本小子。

在我的访问日志中还有更多这样的例子。

58.218.199.250 - - [14/Sep/2012:05:28:48 -0500] "GET http://59.53.91.9/proxy/judge.php HTTP/1.1" 404 289 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
59.53.91.9 - - [14/Sep/2012:08:26:55 -0500] "GET http://59.53.91.9/proxyheader.php HTTP/1.0" 404 289 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
59.53.91.9 - - [14/Sep/2012:08:26:57 -0500] "GET http://www.yahoo.com/ HTTP/1.0" 200 101 "-" "Mozilla/4.0 (compatible; MSIE …
Run Code Online (Sandbox Code Playgroud)

security logs apache-httpd

3
推荐指数
1
解决办法
584
查看次数

无需密码即可启动 Apache

所以我正在维护一个服务器,它有一个经过验证的 SSL 证书设置,但是私钥上有一个密码,所以每当 apache 重新启动时,我们都会收到一条消息,要求输入密码。这不是一个主要问题,但当您重新启动机器时就会成为一个问题!发生这种情况时,它会在 apache 启动时挂起(我可以通过 AWS 查看系统日志来判断),然后机器不运行 sshd,因此我无法再访问服务器!

有没有办法在不要求密码的情况下设置 apache 来使用这个密钥?我认为一种选择是重新颁发 SSL 证书,但这次不使用密码,但这不安全吗?

security password ssl reboot apache-httpd

3
推荐指数
1
解决办法
5448
查看次数

如何区分htpasswd的加密算法?

我有一个在 Debian Linux 上运行的 apache Web 服务器,我使用 htaccess 保护某个目录。我不知道 .htpasswd 文件是如何创建的。Apache 文档说 crypt() 加密用于加密密码,直到版本 2.2.17 和 MD5 加密从 2.2.18 开始使用。如何区分我的 .htpasswd 文件使用哪种加密?

password htaccess apache-httpd

3
推荐指数
1
解决办法
3658
查看次数

Apache 在移动 DocumentRoot (CentOS 6.4) 后抛出 403 Forbidden

我在 CentOS 6.4 上通过 yum 安装了 Apache。我将DocumentRootin更改/etc/httpd/conf/httpd.conf为指向/home/djc/www

DocumentRoot "/home/djc/www"
<Directory "/home/djc/www">
    Options Indexes FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
Run Code Online (Sandbox Code Playgroud)

FS 权限:

djc@vm ~ $ ls -l
drwxrwxr-x.  3 djc djc   4096 Jan 14 11:17 www
Run Code Online (Sandbox Code Playgroud)

没有 SELinux:

djc@vm ~ $ sestatus
SELinux status:                 disabled
Run Code Online (Sandbox Code Playgroud)

我错过了什么?

permissions centos apache-httpd

3
推荐指数
1
解决办法
2万
查看次数

如何解释以下正常运行时间数据模式?

我有一个运行 mysql 和 wordpress 的小型 web 服务器,它在一段时间后似乎停止处理 web 请求。我什至无法通过 ssh 登录服务器,因为 ssh 客户端在尝试建立连接时超时,恢复服务器的唯一方法是硬重启。

ssh运行top了 10 多个小时,看着这台服务器慢慢死了,当它出现卡住顶部的地方仍在工作时。我能够退出top停机mysqlhttpd再反复输入uptime和平均负载从去101.730.01在10分钟的跨度关停后httpdmysqld

我在下面提供了我能够收集的数据。

我的问题:

  • 数据的意义是什么?
  • 这台机器是否没有 CPU 或 RAM?
  • 更大的盒子能解决问题吗?
  • 可以使用哪些其他工具来确定此问题的原因。

这里是一个快照top之前我放弃了它,并关闭httpdmysqld

top - 11:00:18 up 13:54,  1 user,  load average: 96.13, 94.78, 90.06
Tasks: 173 total,   1 running, 172 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.5%us,  1.1%sy,  0.0%ni,  0.0%id, 98.4%wa, …
Run Code Online (Sandbox Code Playgroud)

linux mysql troubleshooting apache-httpd

3
推荐指数
1
解决办法
253
查看次数