Hi Marcus, This appears to be a problem with the way the http plugin constructs the security context from the certificate. I will discuss this with Fabrizio next week and straighten it out. Andy On Thu, 16 Mar 2017, Marcus Ebert wrote: > Hi all, > > I tried to update to the latest xrootd version from epel-testing and the > latest version of xrdhttpvoms. However, there is no change in the result: > > > xrdcp xroot://gridpp09.ecdf.ed.ac.uk:1094//lsst/testfile . > ---------------------------------------------------------- > works > > > > davix-get -P grid https://gridpp09.ecdf.ed.ac.uk:1094/lsst/testfile > --------------------------------------------------------------------- > 170316 16:15:13 7211 ?:[log in to unmask] sysXrdHttp: Setting > host: 92.40.249.75.threembb.co.uk > 170316 16:15:13 7211 ?:[log in to unmask] sysXrdHttp: Entering > SSL_accept... > 170316 16:15:13 7210 XrdSched: running main accept inq=0 > 170316 16:15:13 7211 ?:[log in to unmask] sysXrdHttp: SSL_accept > returned :1 > 170316 16:15:13 7211 ?:[log in to unmask] sysXrdHttp: > SSL_get_verify_result returned :0 > 170316 16:15:13 7211 ?:[log in to unmask] sysXrdHttp: Extracting > auth info. > 170316 16:15:13 7211 ?:[log in to unmask] sysXrdHttp: > SSL_get_peer_certificate returned :0x7f414400cb70 > 170316 16:15:13 7211 ?:[log in to unmask] sysXrdHttp: Setting > link name: /C=UK/O=eScience/OU=Edinburgh/L=NeSC/CN=marcus > ebert/CN=proxy/CN=proxy > 170316 16:15:13 7211 [log in to unmask] > SSL_get_peer_certificate returned :0x7f414400cb70 > 170316 16:15:13 7211 [log in to unmask] > SSL_get_verify_result returned :0 > 170316 16:15:13 7211 [log in to unmask] > SSL_get_peer_cert_chain :0x7f414400e930 > 170316 16:15:13 7211 [log in to unmask] > fqan :/lsst/Role=NULL/Capability=NULL > 170316 16:15:13 7211 [log in to unmask] > Setting VO: lsst roles :/lsst/Role=NULL/Capability=NULL > 170316 16:15:13 7211 sysXrdHttp: getDataOneShot BuffAvailable: 1048576 > maxread: 1048576 > 170316 16:15:13 7211 sysXrdHttp: getDataOneShot sslavail: 1048576 > 170316 16:15:13 7211 sysXrdHttp: read 195 of 1048576 bytes > 170316 16:15:13 7211 sysXrdHttp: rc:31 got hdr line: HEAD //lsst/testfile > HTTP/1.1 > > 170316 16:15:13 7211 sysXrdHttp: rc:40 got hdr line: User-Agent: > libdavix/0.6.0 neon/0.0.29 > > 170316 16:15:13 7211 sysXrdHttp: rc:14 got hdr line: Keep-Alive: > > 170316 16:15:13 7211 sysXrdHttp: rc:24 got hdr line: Connection: Keep-Alive > > 170316 16:15:13 7211 sysXrdHttp: rc:14 got hdr line: TE: trailers > > 170316 16:15:13 7211 sysXrdHttp: rc:35 got hdr line: Host: > gridpp09.ecdf.ed.ac.uk:1094 > > 170316 16:15:13 7211 sysXrdHttp: rc:35 got hdr line: Accept: > application/metalink4+xml > > 170316 16:15:13 7211 sysXrdHttp: rc:2 got hdr line: > > 170316 16:15:13 7211 sysXrdHttp: rc:2 detected header end. > 170316 16:15:13 7211 XrootdBridge: /C=UK/O=.16:[log in to unmask] > login as /C=UK/O=eScience/OU=Edinburgh/L=NeSC/CN=marcus > ebert/CN=proxy/CN=proxy > 170316 16:15:13 7211 /C=UK/O=.16:[log in to unmask] sysXrdHttp: > Process. lp:0x7f4150001d68 reqstate: 0 > 170316 16:15:13 7211 /C=UK/O=.16:[log in to unmask] > XrootdProtocol: 0000 Bridge req=3017 dlen=15 blen=15 > 170316 16:15:13 7211 /C=UK/O=.16:[log in to unmask] sysXrdHttp: > Process is exiting rc:1 > 170316 16:15:13 7211 /C=UK/O=.16:[log in to unmask] ofs_stat: > fn=/lsst/testfile > 170316 16:15:13 7211 ofs_stat: /C=UK/O=.16:[log in to unmask] > Unable to locate /lsst/testfile; permission denied > 170316 16:15:13 7211 /C=UK/O=.16:[log in to unmask] > XrootdProtocol: 0000 rc=-1 stat /lsst/testfile > 170316 16:15:13 7211 /C=UK/O=.16:[log in to unmask] > XrootdResponse: 0000 sending err 3010: Unable to locate /lsst/testfile; > permission denied > 170316 16:15:13 7211 sysXrdHttp: XrdHttpReq::Error > 170316 16:15:13 7211 /C=UK/O=.16:[log in to unmask] sysXrdHttp: > PostProcessHTTPReq req: 3 reqstate: 0 > 170316 16:15:13 7211 /C=UK/O=.16:[log in to unmask] sysXrdHttp: > Sending resp: 404 len:10 > 170316 16:15:13 7211 sysXrdHttp: Sending 46 bytes > 170316 16:15:13 7211 sysXrdHttp: Sending 10 bytes > 170316 16:15:13 7211 sysXrdHttp: XrdHttpReq request ended. > 170316 16:15:13 7211 sysXrdHttp: Cleanup > 170316 16:15:13 7211 sysXrdHttp: SSL_shutdown failed > 170316 16:15:13 7211 sysXrdHttp: Reset > 170316 16:15:13 7211 sysXrdHttp: XrdHttpReq request ended. > 170316 16:15:13 7211 XrootdXeq: /C=UK/O=.16:[log in to unmask] > disc 0:00:00 (send failure) > 170316 16:15:13 7211 /C=UK/O=.16:[log in to unmask] XrdPoll: FD 7 > detached from poller 0; num=0 > > > Anyone any ideas what could be the reason that it doesn't work through > davix-get? > In the config I have for http: > if exec xrootd > xrd.protocol http /usr/lib64/libXrdHttp.so > fi > http.cadir /etc/grid-security/certificates > http.cert /etc/grid-security/xrd/xrdcert.pem > http.key /etc/grid-security/xrd/xrdkey.pem > http.secxtractor /usr/lib64/libXrdHttpVOMS.so > http.listingdeny no > http.desthttps no > > (gridpp09 is just a single server, not going through a redirector for now to > have a simple situation until it works) > > Cheers, > Marcus > > > On Fri, 10 Mar 2017, Marcus Ebert wrote: > >> Hi, >> >> Ah right, http needs it's own debug. I now enabled >> http.trace all >> >> And at least it shows now that the VO is detected: >> 170310 17:33:53 14501 ?:[log in to unmask] sysXrdHttp: >> received dlen: 16 >> 170310 17:33:53 14501 ?:[log in to unmask] sysXrdHttp: >> received dump: 22 03 01 01 20 01 00 01 16 03 03 88 -62 -29 -126 00 >> 170310 17:33:53 14501 ?:[log in to unmask] sysXrdHttp: This >> does not look like http at pos 0 >> 170310 17:33:53 14501 ?:[log in to unmask] sysXrdHttp: This >> may look like https >> 170310 17:33:53 14501 ?:[log in to unmask] sysXrdHttp: >> Protocol matched. https: 1 >> 170310 17:33:53 14501 XrdProtocol: matched protocol http >> 170310 17:33:53 14501 ?:[log in to unmask] XrdPoll: FD 7 >> attached to poller 0; num=1 >> 170310 17:33:53 14501 ?:[log in to unmask] sysXrdHttp: >> Process. lp:0x7fba5c001c68 reqstate: 0 >> 170310 17:33:53 14501 ?:[log in to unmask] sysXrdHttp: >> Setting host: 94.197.120.127.threembb.co.uk >> 170310 17:33:53 14501 ?:[log in to unmask] sysXrdHttp: >> Entering SSL_accept... >> 170310 17:33:53 14501 ?:[log in to unmask] sysXrdHttp: >> SSL_accept returned :1 >> 170310 17:33:53 14501 ?:[log in to unmask] sysXrdHttp: >> Extracting auth info. >> 170310 17:33:53 14501 ?:[log in to unmask] sysXrdHttp: >> SSL_get_peer_certificate returned :0x7fba60034dd0 >> 170310 17:33:53 14501 ?:[log in to unmask] sysXrdHttp: >> Setting link name: /C=UK/O=eScience/OU=Edinburgh/L=NeSC/CN=marcus >> ebert/CN=3266599870 >> 170310 17:33:53 14501 [log in to unmask] >> SSL_get_peer_certificate returned :0x7fba60034dd0 >> 170310 17:33:53 14501 [log in to unmask] >> SSL_get_verify_result returned :0 >> 170310 17:33:53 14501 [log in to unmask] >> SSL_get_peer_cert_chain :0x7fba6003a0e0 >> 170310 17:33:53 14501 [log in to unmask] >> fqan :/lsst/Role=NULL/Capability=NULL >> 170310 17:33:53 14501 [log in to unmask] >> Setting VO: lsst roles :/lsst/Role=NULL/Capability=NULL >> 170310 17:33:53 14501 [log in to unmask] >> sysXrdHttp: SSL_get_verify_result returned :0 >> >> but then later it says: >> 170310 17:33:53 14501 XrootdBridge: >> /C=UK/O=.17:[log in to unmask] login as >> /C=UK/O=eScience/OU=Edinburgh/L=NeSC/CN=marcus ebert/CN=3266599870 >> 170310 17:33:53 14501 /C=UK/O=.17:[log in to unmask] >> sysXrdHttp: Process. lp:0x7fba5c001c68 reqstate: 0 >> 170310 17:33:53 14501 /C=UK/O=.17:[log in to unmask] >> XrootdProtocol: 0000 Bridge req=3017 dlen=15 blen=15 >> 170310 17:33:53 14501 /C=UK/O=.17:[log in to unmask] >> sysXrdHttp: Process is exiting rc:0 >> 170310 17:33:53 14501 /C=UK/O=.17:[log in to unmask] ofs_stat: >> fn=/lsst/testfile >> 170310 17:33:53 14501 ofs_stat: /C=UK/O=.17:[log in to unmask] >> Unable to locate /lsst/testfile; permission denied >> 170310 17:33:53 14501 /C=UK/O=.17:[log in to unmask] >> XrootdProtocol: 0000 rc=-1 stat /lsst/testfile >> 170310 17:33:53 14501 /C=UK/O=.17:[log in to unmask] >> XrootdResponse: 0000 sending err 3010: Unable to locate /lsst/testfile; >> permission denied >> 170310 17:33:53 14501 sysXrdHttp: XrdHttpReq::Error >> 170310 17:33:53 14501 /C=UK/O=.17:[log in to unmask] >> sysXrdHttp: PostProcessHTTPReq req: 2 reqstate: 0 >> 170310 17:33:53 14501 /C=UK/O=.17:[log in to unmask] >> sysXrdHttp: Sending resp: 404 len:15 >> 170310 17:33:53 14501 sysXrdHttp: Sending 46 bytes >> 170310 17:33:53 14501 sysXrdHttp: Sending 15 bytes >> 170310 17:33:53 14501 sysXrdHttp: XrdHttpReq request ended. >> 170310 17:33:53 14501 sysXrdHttp: Cleanup >> 170310 17:33:53 14501 sysXrdHttp: SSL_shutdown failed >> 170310 17:33:53 14501 sysXrdHttp: Reset >> 170310 17:33:53 14501 sysXrdHttp: XrdHttpReq request ended. >> 170310 17:33:53 14501 XrootdXeq: >> /C=UK/O=.17:[log in to unmask] disc 0:00:00 (send failure) >> >> >> So it find's the VO but still shows a permission denied. Or can it not find >> the file? >> filename that >> works : root://dev2.gridpp.ecdf.ed.ac.uk:1094//lsst/testfile >> doesn't work : https://dev2.gridpp.ecdf.ed.ac.uk:1094/lsst/tesfile >> >> (you probably can also access /atlas/testfile through xrdcp) >> >> Cheers, >> Marcus >> >> On Fri, 10 Mar 2017, Fabrizio Furano wrote: >> >>> Hi, >>> >>> > > > - Was your server (the machine, not xrootd) configured to recognize >>> > > gridpp or lsst proxies ? >>> > > [ it's the stuff in /etc/grid-security/vomsdir plus the > > >>> ca-policy-egi-core package ] >>> > > > Yes, it was configured for atlas, gridpp, lsst, lhcb, dteam. This >>> also > works when using xrdcp/xrdfs. >>> > When going through xrdcp, I see in my logs: >>> > 170310 15:04:14 21760 secgsiVOMS_Fun: proxy: > >>> /C=UK/O=eScience/OU=Edinburgh/L=NeSC/CN=marcus ebert/CN=3266599870 >>> > 170310 15:04:14 21760 secgsiVOMS_Fun: adding cert: > >>> /C=UK/O=eScience/OU=Edinburgh/L=NeSC/CN=marcus ebert >>> > 170310 15:04:15 21760 secgsiVOMS_Fun: retrieval successful >>> > 170310 15:04:15 21760 secgsiVOMS_Fun: found VO: lsst >>> > 170310 15:04:15 21760 secgsiVOMS_Fun: ---> group: '/lsst', role: > >>> 'NULL', cap: 'NULL' >>> > 170310 15:04:15 21760 secgsiVOMS_Fun: ---> fqan: > >>> '/lsst/Role=NULL/Capability=NULL' >>> > > Something similar is not in the log files when going through https. >>> >>> >>> This is what you should look for in the logs when running xrootd in debug >>> mode. What do you get ? >>> >>> 170310 16:15:52 22616 ?:[log in to unmask] sysXrdHttp: Extracting >>> auth >>> info. >>> 170310 16:15:52 22616 ?:[log in to unmask] sysXrdHttp: >>> SSL_get_peer_certificate returned :0x7f7cf403c150 >>> 170310 16:15:52 22616 ?:[log in to unmask] sysXrdHttp: Setting link >>> name: /DC=ch/DC=cern/OU=Organic >>> Units/OU=Users/CN=furano/CN=644746/CN=Fabrizio Furano/CN=172241399 >>> 170310 16:15:52 22616 [log in to unmask] >>> SSL_get_peer_certificate returned :0x7f7cf403c150 >>> 170310 16:15:52 22616 [log in to unmask] >>> SSL_get_verify_result returned :0 >>> 170310 16:15:52 22616 [log in to unmask] >>> SSL_get_peer_cert_chain :0x7f7cf403bc30 >>> 170310 16:15:52 22616 [log in to unmask] fqan >>> :/atlas/Role=NULL/Capability=NULL >>> 170310 16:15:52 22616 [log in to unmask] fqan >>> :/atlas/lcg1/Role=NULL/Capability=NULL >>> 170310 16:15:52 22616 [log in to unmask] Setting >>> VO: atlas roles :/atlas/Role=NULL/Capability=NULL >>> >>> >>> >>> >>> >>> >>> > > BTW:I think when you tried the error was because I had on the server >>> > still denied listing. It's allowed now and I also put >>> > atlas/testfile which should work to get? >>> >>> >>> Ehm no, still 404. >>> >>> Cheers >>> f >>> >>> >>> >>> >>> >>> > > Cheers, >>> > Marcus >>> > > > Cheers >>> > > Fabrizio >>> > > > > > > > > On 03/10/2017 02:36 PM, Marcus Ebert wrote: >>> > > > Ok, getting the davix-tools was easier than I thought. They are > > >>> > available through a GridPP CernVM. >>> > > > However, doing so I get the output: >>> > > > <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" > > > >>> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> >>> > > > <html xmlns="http://www.w3.org/1999/xhtml"> >>> > > > <head> >>> > > > <meta http-equiv="content-type" content="text/html;charset=utf-8"/> >>> > > > <link rel="stylesheet" type="text/css" > > > >>> href="/static/css/xrdhttp.css"/> >>> > > > <link rel="icon" type="image/png" >>> href="/static/icons/xrdhttp.ico"/> >>> > > > <title>/</title> >>> > > > </head> >>> > > > <body> >>> > > > <h1>Listing of: /</h1> >>> > > > <div id="header"><table id="ft"> >>> > > > <thead><tr> >>> > > > <th class="mode">Mode</th><th class="flags">Flags</th><th > > > >>> class="size">Size</th><th class="datetime">Modified</th><th >>> > > > class="name">Name</th></tr></thead> >>> > > > <tr><td class="mode">d--rwx</td><td class="mode">51</td><td > > > >>> class="size">4096</td><td class="datetime">Wed, 26 Nov 2014 15:28:25 >>> > > > GMT</td><td class="name"><a href="atlas">atlas</a></td></tr><tr><td >>> > > > class="mode">d--rwx</td><td class="mode">51</td><td >>> > > > class="size">4096</td><td class="datetime">Thu, 27 Nov 2014 >>> 16:34:50 > > > GMT</td><td class="name"><a >>> > > > href="dynafeds_demo">dynafeds_demo</a></td></tr><tr><td > > > >>> class="mode">d--rwx</td><td class="mode">51</td><td >>> > > > class="size">167936</td><td class="datetime">Tue, 28 Feb 2017 > > > >>> 16:44:54 GMT</td><td class="name"><a >>> > > > >>> href="georgios_test">georgios_test</a></td></tr></table></div><br><br><hr >>> > > > size=1><p><span id="requestby">Request by >>> > > > /C=UK/O=eScience/OU=Edinburgh/L=NeSC/CN=marcus ebert/CN=157025827 ( >>> > > > DN: /C=UK/O=eScience/OU=Edinburgh/L=NeSC/CN=marcus >>> > > > ebert/CN=157025827 ) ( 94.197.120.22.threembb.co.uk )</span></p> >>> > > > <p>Powered by XrdHTTP v20170305-55a66d2 (CERN IT-SDC)</p> >>> > > > > > > > > > Which doesn't say anything about the VO. I tried with >>> an LSST and > > > GridPP proxy. >>> > > > voms info gives for example for gridpp VO: >>> > > > subject : /C=UK/O=eScience/OU=Edinburgh/L=NeSC/CN=marcus > > > >>> ebert/CN=157025827 >>> > > > issuer : /C=UK/O=eScience/OU=Edinburgh/L=NeSC/CN=marcus ebert >>> > > > identity : /C=UK/O=eScience/OU=Edinburgh/L=NeSC/CN=marcus ebert >>> > > > type : RFC compliant proxy >>> > > > strength : 1024 bits >>> > > > path : /tmp/x509up_u501 >>> > > > timeleft : 11:59:33 >>> > > > key usage : Digital Signature, Key Encipherment, Data Encipherment >>> > > > === VO gridpp extension information === >>> > > > VO : gridpp >>> > > > subject : /C=UK/O=eScience/OU=Edinburgh/L=NeSC/CN=marcus ebert >>> > > > issuer : > > > >>> /C=UK/O=eScience/OU=Manchester/L=HEP/CN=voms.gridpp.ac.uk >>> > > > attribute : /gridpp/Role=NULL/Capability=NULL >>> > > > timeleft : 11:59:33 >>> > > > uri : voms.gridpp.ac.uk:15000 >>> > > > > > > > > > Cheers, >>> > > > Marcus >>> > > > > > > On Fri, 10 Mar 2017, Marcus Ebert wrote: >>> > > > > > > > Thanks Fabrizio! >>> > > > > > > > > I'll try to get the davix-tools made available first. >>> > > > > > > > > Cheers, >>> > > > > Marcus >>> > > > > > > > > On Fri, 10 Mar 2017, Fabrizio Furano wrote: >>> > > > > > > > > > Hi, >>> > > > > > > > > > > sorry, I missed the other questions, here they >>> are... >>> > > > > > > > > > > On 03/10/2017 11:08 AM, Marcus Ebert wrote: >>> > > > > > > Unfortunaely, I don't have davix-get available on the local >>> > > > > > > desktop. Is > there any lsetup mode for Atlas to make that >>> > > > > > available >>> > > > > > > (or any other cvmfs path)? >>> > > > > > > > > > > You can get davix from all the major Linux >>> distributions with > > > > > their own >>> > > > > > tools, apt, yum, ... >>> > > > > > > > > > > cvmfs certainly has it because it's used, but I >>> cannot help you > > > > > there, I >>> > > > > > have no idea (others may chime in) >>> > > > > > > > > > > > > Do you get any similar output if you do this >>> with > > > > > > > > https://dev2.gridpp.ecdf.ed.ac.uk:1094 ? >>> > > > > > > > > > > > It gives to me 404 on the root directory, which is >>> a sign of > > > > > server >>> > > > > > misconfiguration (despite xrootd or http) >>> > > > > > > > > > > > > > > > > If I do so in a browser for your test >>> server, it displays: >>> > > > > > > Request by /C=UK/O=eScience/OU=Edinburgh/L=NeSC/CN=marcus > >>> > > > > > ebert ( DN: > /C=UK/O=eScience/OU=Edinburgh/L=NeSC/CN=marcus >>> > > > > > ebert ) ( >>> > > > > > > 94.197.120.22.threembb.co.uk ) >>> > > > > > > > Powered by XrdHTTP v20170305-55a66d2 (CERN IT-SDC) >>> > > > > > > > but no VO identification (probably because there is no > > >>> > > > > > voms-proxy > available to the browser and it doesn't do a > > >>> > > > > > lockup in >>> > > > > > > grid-mapfile?) >>> > > > > > > > > > > Browsers do not support Grid proxies. >>> > > > > > The historical workaround for that is the use of a mapfile, as >>> > > > > > you cite. >>> > > > > > Xrdhttp uses the same mapfile >>> > > > > > of the rest of the xrootd framework, which is a bit original >>> if > > > > > one is >>> > > > > > used to the ones used e.g. by DPM. >>> > > > > > > > > > > Anyway I would not go further that way until you >>> have > > > > > troubleshoot your >>> > > > > > client setup. You must be able >>> > > > > > to get from my server the same kind of output that I get. >>> > > > > > > > > > > You can use curl, but it's more complex and less >>> reliable. > > > > > Please do an >>> > > > > > attempt at getting davix. >>> > > > > > > > > > > Please let me know >>> > > > > > Fabrizio >>> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > >>> >> >> > > -- > The University of Edinburgh is a charitable body, registered in > Scotland, with registration number SC005336. > > ######################################################################## > Use REPLY-ALL to reply to list > > To unsubscribe from the XROOTD-L list, click the following link: > https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-L&A=1 > ######################################################################## Use REPLY-ALL to reply to list To unsubscribe from the XROOTD-L list, click the following link: https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-L&A=1