<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://t2bwiki.iihe.ac.be/index.php?action=history&amp;feed=atom&amp;title=T2BTracAccess</id>
	<title>T2BTracAccess - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://t2bwiki.iihe.ac.be/index.php?action=history&amp;feed=atom&amp;title=T2BTracAccess"/>
	<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=T2BTracAccess&amp;action=history"/>
	<updated>2026-04-20T09:48:26Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=T2BTracAccess&amp;diff=258&amp;oldid=prev</id>
		<title>Maintenance script: Created page with &quot; === Automatic generation of the authorized DNs list === Only people from becms and beapps can login to the T2B Trac Wiki. Login restriction is achieved through the https con...&quot;</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=T2BTracAccess&amp;diff=258&amp;oldid=prev"/>
		<updated>2015-08-26T12:29:06Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot; === Automatic generation of the authorized DNs list === Only people from becms and beapps can login to the T2B Trac Wiki. Login restriction is achieved through the https con...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;
=== Automatic generation of the authorized DNs list ===&lt;br /&gt;
Only people from becms and beapps can login to the T2B Trac Wiki. Login restriction is achieved through the https config. on mon :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[root@mon ~]# cat /etc/httpd/conf.d/ssl.conf&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;Location &amp;quot;/trac/t2b&amp;quot;&amp;gt;&lt;br /&gt;
    SetHandler mod_python&lt;br /&gt;
    PythonHandler trac.web.modpython_frontend&lt;br /&gt;
    PythonOption TracEnvParentDir /var/www/trac&lt;br /&gt;
    PythonOption TracUriRoot /trac&lt;br /&gt;
&lt;br /&gt;
    SSLVerifyClient require&lt;br /&gt;
    SSLOptions           +FakeBasicAuth +StdEnvVars&lt;br /&gt;
    SSLRequireSSL&lt;br /&gt;
&lt;br /&gt;
    AuthType Basic&lt;br /&gt;
    AuthName &amp;quot;test server&amp;quot;&lt;br /&gt;
    AuthUserFile /tmp/get-dns/t2b-auth&lt;br /&gt;
    Require valid-user&lt;br /&gt;
&amp;lt;/Location&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Each line in /tmp/get-dns/t2b-auth is a DN followed by &amp;quot;:&amp;quot; followed by an encrypted password that will not be used. The generation of the file /tmp/get-dns/t2b-auth is not done on mon, because it does not have the middleware tools. Instead, the list is generated on cream02 with the script /root/get_dns.pl that is run with a crontask :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[root@cream02 ~]# crontab -e&lt;br /&gt;
...&lt;br /&gt;
*/15 * * * * ( date --iso-8601=seconds --utc; /root/get_dns.pl) &amp;gt;&amp;gt; /var/log/get_dns.log 2&amp;gt;&amp;amp;1&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
The list is then copied from cream02 to mon thanks to a crontask on qnat :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[root@qnat ~]# crontab -e&lt;br /&gt;
...&lt;br /&gt;
0 * * * * scp cream02.iihe.ac.be:/root/get-dns/t2b-auth mon.iihe.ac.be:/tmp/get-dns/&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Gory details ===&lt;br /&gt;
==== How the DNs list is generated on cream02 ====&lt;br /&gt;
It is done with a Perl script that generates a config file (&amp;quot;conf&amp;quot;) with the following content :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
group vomss://voms01.begrid.be:8443/voms/beapps?/beapps .beapps&lt;br /&gt;
group vomss://voms01.begrid.be:8443/voms/betest?/betest .betest&lt;br /&gt;
group vomss://voms.cern.ch:8443/voms/cms?/cms/becms .cms&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
The script will then execute the following command :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/usr/sbin/edg-mkgridmap --conf conf --output out&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
The DNs are then extracted from the output file (&amp;quot;out&amp;quot;) to generate the content of /root/get-dns/t2b-auth.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
</feed>