服务器 Gind.cn

服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器

用户如何转储Apache VHOSTS,未经许可SSL密钥

所以我有一个脚本,它在心里运行apachectl -t -D DUMP_VHOSTS来获取特定机器上所有虚拟主机的列表。 然后,greps从这个响应,并产生一个关于机器上的虚拟主机的configuration机器可parsing信息的json blob。 这将作为一个非特权用户运行,因为它只是一个分析什么,而不是一个特权尝试改变任何东西。 但是,在debian上,非特权用户,完全正确地不能读取/etc/ssl/private任何内容,所以我得到: – AH00526: Syntax error on line 27 of /etc/apache2/sitesenabled/ssl_proxy.conf: SSLCertificateKeyFile: file '/etc/ssl/private/ssl-cert-snakeoil.key' does not exist or is empty 这个问题在Apache上讨论:SSLCertificateKeyFile:文件不存在或为空 但是,我不希望用户运行脚本来访问密钥文件或者testingconfiguration,我只想让apache告诉我有关什么虚拟主机被定义。 在专门抛出这个错误的服务器上,我甚至没有使用SSL,所以它抱怨一个甚至不涉及VHOST的键,但是我可以看到它可能,但似乎Apache不能告诉只是继续,并忽略SSL模块或任何东西。 任何想法如何做到这一点,超越parsing的Apacheconfiguration直接? 编辑。 所以看来在检查时,apachectl在DUMP(s)_VHOSTS时所做的事情,并不像想象的那么愚蠢。 这本质上是validationconfiguration文件,也就是说,检查指定的文件是否存在。 不是,试图读取文件的内容。 因此,调用者不需要文件的读取权限,只需读取包含该文件的目录的权限即可。