{"id":513,"date":"2009-10-01T23:47:14","date_gmt":"2009-10-01T22:47:14","guid":{"rendered":"http:\/\/blog.solution.it\/?p=513"},"modified":"2019-04-16T11:56:15","modified_gmt":"2019-04-16T10:56:15","slug":"ipcop-creare-un-utente-amministratore-con-interfaccia-web-limitata","status":"publish","type":"post","link":"https:\/\/blog.solution.it\/?p=513","title":{"rendered":"IPCop: creare un utente amministratore con interfaccia web limitata"},"content":{"rendered":"<p>Avviso : IPCOP non riceve pi\u00f9 aggiornamenti dal 2015 ed il sito ufficiale \u00e8 stato chiuso. Potete eventualmente effettuare\u00a0 il download da http:\/\/ipcop.sourceforge.net o rivolgervi ad un altro prodotto, come ad esempio PFsense, IPFire od altri.<\/p>\n<p><em>problema aggiornamento AdvProxy: articolo aggiornato il 6 ottobre<\/em><\/p>\n<p>Quante\u00a0 volte avreste voluto evitare di dare la password di amministrazione del<a title=\"IPCop firewall\" href=\"http:\/\/ipcop.sourceforge.net\/\"> firewall IPCop<\/a> ad altri e non avete potuto farne a meno perch\u00e9 IPCop non prevede una gestione utenti?<\/p>\n<p>Personalmente \u00e8 successo un sacco di volte, oggi \u00e8 stata per\u00f2 l&#8217;ultima volta. Mi sono deciso a trovare un modo per creare una interfaccia limitata, ad esempio\u00a0 solo spegnimento e gestione dei filtri URL, cos\u00ec da non rischiare dando la password di amministrazione a qualcuno che potrebbe combinare qualche guaio.<br \/>\nIn sovrappi\u00f9, con questo metodo si possono creare tutti gli utenti di amministrazione che servono cos\u00ec da rendere compliant IPCop alla normativa sulla privacy ed ai provvedimenti del Garante in tema di Amministratori di sistema.<\/p>\n<p>Come fare? Non esistono addon specifici, ma \u00e8 bastato spulciare un po su Apache per trovare una soluzione. Ecco quindi come fare per creare un utente di amministrazione di IPCop specificando a quali pagine dell&#8217;interfaccia web di gestione\u00a0 possa accedere.<\/p>\n<p><!--more-->Per prima cosa va creato un nuovo utente. Non si tratta di un utente di sistema ma di un utente del &#8220;sito web&#8221;\u00a0 di IPCop tramite il quale si effettua l&#8217;amministrazione.<\/p>\n<p>I nomi degli utenti e la password crittografata si trovano nel file <em>\/var\/ipcop\/auth\/users<\/em>. Se lo aprite troverete una cosa simile a questa:<\/p>\n<table width=\"80%\" border=\"1\" cellpadding=\"10\" bgcolor=\"#ffffdd\">\n<tbody>\n<tr>\n<td align=\"left\" valign=\"center\">admin:$apr1$7aDR1\/..$Aa0R7T\/DAjrr.fd<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Per aggiungere un nuovo utente \u00e8 sufficiente digitare il seguente comando:<\/p>\n<table width=\"80%\" border=\"1\" cellpadding=\"10\" bgcolor=\"#ffffdd\">\n<tbody>\n<tr>\n<td align=\"left\" valign=\"center\">htpasswd -m \/var\/ipcop\/auth\/users nuovo_utente<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>sostituendo ovviamente <em>nuovo_utente<\/em> con lo username da creare.<\/p>\n<p>A questo punto l&#8217;utente \u00e8 stato creato, ma ancora non potr\u00e0 fare nulla. Sar\u00e0 necessario assegnargli i diritti di accesso alle pagine web\u00a0 di amministrazione che vogliamo possa gestire.<\/p>\n<p>Per fare questo dovremo modificare a\u00a0 mano il file di configurazione di Apache. Fate una <em>copia di riserva<\/em> della configurazione originale prima di metterci le mani!<\/p>\n<p>Aprite con vi il file <em>\/etc\/httpd\/conf\/httpd.conf, <\/em>e cercate la sezione che inizia con <em>&lt;Directory \/home\/httpd\/cgi-bin&gt;<\/em>. Probabilmente sar\u00e0 qualcosa di simile a questo:<\/p>\n<table width=\"80%\" border=\"1\" cellpadding=\"10\" bgcolor=\"#ffffdd\">\n<tbody>\n<tr>\n<td align=\"left\" valign=\"center\">&lt;Directory \/home\/httpd\/cgi-bin&gt;<br \/>\nAllowOverride None<br \/>\nOptions None<br \/>\nAuthName &#8220;Restricted&#8221;<br \/>\nAuthType Basic<br \/>\nAuthUserFile \/var\/ipcop\/auth\/users<br \/>\nRequire user admin<br \/>\n&lt;Files index.cgi&gt;<br \/>\nSatisfy Any<br \/>\nAllow from All<br \/>\n&lt;\/Files&gt;<br \/>\n# Start of modification by advproxy<br \/>\n&lt;Files chpasswd.cgi&gt;<br \/>\nSatisfy Any<br \/>\nAllow from All<br \/>\n&lt;\/Files&gt;<br \/>\n&lt;Files webaccess.cgi&gt;<br \/>\nSatisfy Any<br \/>\nAllow from All<br \/>\n&lt;\/Files&gt;<br \/>\n# End of modification by advproxy<br \/>\n&lt;Files credits.cgi&gt;<br \/>\nSatisfy Any<br \/>\nAllow from All<br \/>\n&lt;\/Files&gt;<br \/>\n&lt;Files dial.cgi&gt;<br \/>\nRequire user admin dial<br \/>\n&lt;\/Files&gt;# <em>le modifiche vanno qui<\/em><\/p>\n<p>&lt;\/Directory&gt;<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>prima della chiusura del tag <em>&lt;\/Directory&gt;<\/em> dovrete aggiungere delle sezioni, una per ogni pagina che desiderate dare in gestione al\u00a0 nuovo utente oppure una sola se desiderate assegnargli pieni poteri.<\/p>\n<table width=\"80%\" border=\"1\" cellpadding=\"10\" bgcolor=\"#ffffdd\">\n<tbody>\n<tr>\n<td align=\"left\" valign=\"center\"># Abilita accesso a tutte le pagine<br \/>\n&lt;Files vpnmain.cgi&gt; #<br \/>\nRequire user admin\u00a0 nuovo_utente # &lt;&#8211; il nome del nuovo utente creato<br \/>\n&lt;\/Files&gt;# oppure una sezione per ogni pagina, ad esempio:# Abilita accesso a pagina shutdown<\/p>\n<p>&lt;Files shutdown.cgi&gt;<br \/>\nRequire user admin\u00a0 nuovo_utente # &lt;&#8211; il nome del nuovo utente creato<br \/>\n&lt;\/Files&gt;<\/p>\n<p># Abilita accesso a urlfilter<\/p>\n<p>&lt;Files urlfilter.cgi&gt;<br \/>\nRequire user admin\u00a0 nuovo_utente # &lt;&#8211; il nome del nuovo utente creato<br \/>\n&lt;\/Files&gt;<\/p>\n<p># Abilita accesso a advanced Proxy<\/p>\n<p>&lt;Files advproxy.cgi&gt;<br \/>\nRequire user admin nuovo_utente # &lt;&#8211; il nome del nuovo utente creato<br \/>\n&lt;\/Files&gt;<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>A questo punto non resta che salvare il file e\u00a0 riavviare apache per testare il tutto.<\/p>\n<table width=\"80%\" border=\"1\" cellpadding=\"10\" bgcolor=\"#ffffdd\">\n<tbody>\n<tr>\n<td align=\"left\" valign=\"center\">killall httpd\u00a0\u00a0\u00a0 # chiude il demone di Apachehttpd -DSSL # riavvia il servizio<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Quando il\u00a0 nuovo utente effettuer\u00e0 il login, potr\u00e0 accedere solo alle pagine permesse.<\/p>\n<p>Sto testando la cosa su alcune installazioni, se avete qualche commento, notate anomalie od altro, non esitate e scrivetemi.<\/p>\n<p><strong>Aggiornamento<\/strong> del 6 ottobre 2009<\/p>\n<p>Sembra che se si effettua l&#8217;aggiornamento della versione di Advanced Proxy dopo aver fatto la modifica sopra suggerita venga danneggiato il file <strong>httpd.conf<\/strong> con il risultato che Apache non si avvia impedendo l&#8217;accesso al pannello di controllo pur mantenendo attive\u00a0 tutte le funzioni di IPcop e la navigazione. In questo caso \u00e8 sufficiente ripristinare la copia di http.conf originale e apportare nuovamente le modifiche. Nel caso non si abbia una copia di riserva del file, potete editare a amano il file danneggiato. Probabilmente troverete che mancano tutte le modifiche apportate. Resta solo un tag incompleto tipo questo:<\/p>\n<table width=\"80%\" border=\"1\" cellpadding=\"10\" bgcolor=\"#ffffdd\">\n<tbody>\n<tr>\n<td align=\"left\" valign=\"center\">Require user admin pippo<br \/>\n&lt;\/Files&gt;<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Manca cio\u00e8 la parte iniziale del tag<\/p>\n<table width=\"80%\" border=\"1\" cellpadding=\"10\" bgcolor=\"#ffffdd\">\n<tbody>\n<tr>\n<td align=\"left\" valign=\"center\">&lt;Files advproxy.cgi&gt;<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>che sembra andata persa nell&#8217;aggiornamento di versione. Devo analizzare lo script di installazione di Advanced Proxy per capire cosa sia successo. Eventuali aggiornamenti saranno postati qui.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Avviso : IPCOP non riceve pi\u00f9 aggiornamenti dal 2015 ed il sito ufficiale \u00e8 stato chiuso. Potete eventualmente effettuare\u00a0 il download da http:\/\/ipcop.sourceforge.net o rivolgervi ad un altro prodotto, come ad esempio PFsense, IPFire od altri. problema aggiornamento AdvProxy: articolo aggiornato il 6 ottobre Quante\u00a0 volte avreste voluto evitare di&hellip; <\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[6,12,36,60,62],"_links":{"self":[{"href":"https:\/\/blog.solution.it\/index.php?rest_route=\/wp\/v2\/posts\/513"}],"collection":[{"href":"https:\/\/blog.solution.it\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.solution.it\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.solution.it\/index.php?rest_route=\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.solution.it\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=513"}],"version-history":[{"count":16,"href":"https:\/\/blog.solution.it\/index.php?rest_route=\/wp\/v2\/posts\/513\/revisions"}],"predecessor-version":[{"id":1027,"href":"https:\/\/blog.solution.it\/index.php?rest_route=\/wp\/v2\/posts\/513\/revisions\/1027"}],"wp:attachment":[{"href":"https:\/\/blog.solution.it\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=513"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.solution.it\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=513"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.solution.it\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=513"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}