在centos

时间:2016-10-03 10:07:54

标签: webdav

我正在尝试安装davrods,但我认为该网站缺少一些步骤。

我正在执行https://github.com/UtrechtUniversity/davrodshttps://github.com/UtrechtUniversity/davrods上的步骤。我已经运行了我的irods服务器,我可以使用icommands。我做的先决条件是下面列出的,之后我可以在我的centos 7上安装davrods。我也在你的git存储库中配置了。

在文件" /etc/httpd/conf.d/davrods-vhost.conf"我取消注释行是必要的并改变了一些配置:

<VirtualHost *:80>
     ServerName 145.xxx.xxx.xxx:443
    <Location />
       DirectoryIndex disabled
        AuthType Basic
        Require valid-user
        AuthName DAV
        Dav davrods-locallock
        DavRodsEnvFile  /etc/httpd/irods/irods_environment.json
        DavRodsServer 145.xxx.xxx.xxx 1247
        DavRodsZone tempZone
        DavRodsAuthScheme PAM
        DavRodsDefaultResource demoResc
        DavRodsExposedRoot  Home
    </Location>
</VirtualHost>

我的httpd版本是正确的&#34;服务器版本:Apache / 2.4.6(CentOS)&#34;

我的意思是,如果你正在使用apache httpd。我可以复制到哪个war文件

yum install boost jansson
wget ftp://ftp.renci.org/pub/irods/releases/4.1.9/centos7/irods-runtime-4.1.9-centos7-x86_64.rpm
rpm -i irods-runtime-4.1.9-centos7-x86_64.rpm
rpm -i davrods-1.1.0-1.el7.centos.x86_64.rpm
#######################################################################
##                                                                     
##         + Davrods post-install note for SELinux users +             
##                                                                     
## If your SELinux is set to Enforcing, you may need to make changes   
## to your policies to allow davrods to run:                           
##                                                                     
## - Apache HTTPD must be allowed to connect to TCP port 1247          
## - iRODS plugin libs in /var/lib/irods/plugins/network               
##   must have 'lib_t' SELinux context.                                
##                                                                     
## For example, the following two commands can be used to resolve these
## requirements:
##
## setsebool -P httpd_can_network_connect true
## chcon -t lib_t /var/lib/irods/plugins/network/lib*.so

setsebool -P httpd_can_network_connect true
chcon -t lib_t /var/lib/irods/plugins/network/lib*.so

亲切的问候 菲利普

2 个答案:

答案 0 :(得分:0)

我已经通过邮件回复了这个问题,但我会在这里添加它 为了完整性(略有改动,因为你稍微改变了一下你的问题):

  

我的意思是,如果你正在使用apache httpd。战争文件在哪里我   可以复制

Davrods RPM那个 你已经在必要的目录中安装了必要的文件 你[1],所以没有要安装的WAR文件。 (此外,由于Davrods是一个C库而不是Java,它不是WAR格式)。

设置vhost配置后,重新启动httpd应该就是这样 留下来让davrods运转起来。

现在,对于vhost,您需要选择没有SSL设置的端口80或带有SSL设置的端口443。由于您使用的是PAM,我假设您希望将SSL用于WebDAV连接。

要使用SSL,请在vhost配置的开头更改*:80*:443,然后添加您的SSL设置:

<VirtualHost *:443>
    ServerName 145.xxx.xxx.xxx:443
    SSLEngine on
    SSLCertificateFile    /path/to/davrods.crt
    SSLCertificateKeyFile /path/to/davrods.key
    ...

重新启动httpd后,尝试使用WebDAV客户端或Web浏览器进行连接。 如果您收到错误消息,可以在您的网站上找到详细信息 httpd错误日志(/var/log/httpd/error_log)或 否则/var/log/messages

  

我认为the web site缺少一些步骤

感谢您的反馈,我会看看能否让设置的最后部分更清晰!

[1]您可以使用rpm -qlp DAVRODS_RPM_FILE查看已安装的文件 /usr/lib64/httpd/modules/mod_davrods.so是实际的Davrods计划。

答案 1 :(得分:0)

我通过本教程http://slides.com/irods/ugm2016-ssl-and-pam#/了解了如何在iRODS上使用PAM + SSL。现在我正在与Davrods斗争,因为它无法识别我在https连接上输入的用户。我键入用户“felipe”,http.log表示我使用的是棒用户。

[Wed Oct 05 09:20:04.114976 2016] [davrods:warn] [pid 7623] [client 145.117.144.114:50740] rcPamAuthRequest failed: -993000 = PAM_AUTH_PASSWORD_FAILED
[Wed Oct 05 09:20:04.123410 2016] [auth_basic:error] [pid 7623] [client 145.117.144.114:50740] AH01617: user rods: authentication failure for "/": Password Mismatch