WebCalendar¶
Installare e configurare WebCalendar¶
Su Debian è disponibile il pacchetto webcalendar
, installabile direttamente con APT, il pacchetto però, pur facendo riferimento ad un database, non lo installa.
Per questo motivo è sempre il caso di installare preventivamente MySQL (database scelto per l'occasione) con apt-get install mysql
ed eseguire le procedure di configurazione iniziale descritte in MySQLInitConf.
Una volta presente il database si può procedere all'installazione di WebCalendar; il sistema di debconf farà una serie di domande, la prima è se far gestire lui il file di configurazione principale config.php
. In genere è opportuno rispondere di si.
Segue l'indicazione del database (nel caso si è scelto appunto MySQL dal relativo menù, l'altra possibilità è l'uso di PostgreSQL), per il quale vengono poi richiesti in successione:
- hostname (che sarà
localhost
) - username dell'utente (nel caso si è scelto
webcalendar
) - una password (ad esempio
passwordlungaedifficile
) - il nome del database (
webcalendar
, tanto per cambiare ...)
Immessi i dati sarà richiesto se il calendario deve essere usato da un singolo utente (rispondere no), verrà poi dato l'avviso che le tabelle devono essere create a mano.
Il passo successivo è quello della creazione su MySQL dell'infrastruttura dati necessaria alla manutenzione dei dati del calendario; si parte con la creazione del database, questa si fa con il comando:
mysqladmin -u root -p create webcalendar
che chiederà la password del root del database e creerà il database dedicato a WebCalendar (si noti che si è usato lo stesso nome messo nella configurazione di debconf).
A questo punto si passerà alla creazione dell'utente usato da WebCalendar per l'interazione con MySQL, per il quale si potranno utilizzare le solite istruzioni spiegate in MySQLInitConf.
Si può poi passare a creare le tabelle necessarie a WebCalendar nel rispettivo database usando l'utente appena creato. Il file della struttura viene distribuito con il pacchetto, ed il comando da dare è:
mysql -u webcalendar -p webcalendar < /var/lib/webcalendar/sql/tables-mysql.sql
(al solito sarà chiesta la password, stavolta dell'utente webcalendar).
Si potrà verificare che la struttura è stata creata collegandosi con il nuovo utente e verificando quali tabelle sono state crete sul database con:
server:~# mysql -u webcalendar -p webcalendar Enter password: mysql> show tables; +--------------------------+ | Tables_in_webcalendar | +--------------------------+ | webcal_asst | | webcal_categories | | webcal_config | | webcal_entry | | webcal_entry_ext_user | | webcal_entry_log | | webcal_entry_repeats | | webcal_entry_repeats_not | | webcal_entry_user | | webcal_group | | webcal_group_user | | webcal_import | | webcal_import_data | | webcal_nonuser_cals | | webcal_reminder_log | | webcal_report | | webcal_report_template | | webcal_site_extras | | webcal_user | | webcal_user_layers | | webcal_user_pref | | webcal_view | | webcal_view_user | +--------------------------+ 23 rows in set (0.00 sec) mysql> \q Bye
A questo punto occorrerà configurare Apache per poter utilizzare WebCalendar via web; se si è usato Apache 1.3 occorre semplicemente aggiungere in coda ad /etc/apache/httpd.conf
la seguente riga:
Include /etc/webcalendar/apache.conf
se invece si usa Apache 2.0 si dovrà eseguire la configurazione apposita dei moduli necessari (descritta in ApacheTwoConfig) ed installare a mano questi ultimi (le dipendenze installate da WebCalendar sono per Apache 1.3).
Fatto questo si potrà puntare il browser sull'indirizzo http://localhost/webcalendar
per ottenere la pagina di login; di default viene usato l'utente admin con password admin.
Una configurazione interessante di WebCalendar è quella che permette di di tenere l'autenticazione degli utenti del calendario su LDAP. Per far questo occorre modificare /etc/webcalendar/settings.php
, utilizzando la riga:
user_inc: user-ldap.php
questo però va in conflitto con la gestione di debconf, occorrerà mantenere la modifica a mano.
La prima parte del file /etc/webcalendar/user-ldap.php
contiene le definizioni delle variabili usate per l'accesso a LDAP; per la configurazione dello stesso vanno allora modificate le seguenti righe:
... // base DN to search for users $ldap_base_dn = 'ou=Users,dc=truelite,dc=it'; ... // A group name (complete DN) to find users with admin rights $ldap_admin_group_name = 'cn=webcal_admin,ou=Groups,dc=truelite,dc=it'; ...
la prima serve a indicare sotto quale sezione dell'albero si trovano gli utenti, la seconda a indicare quale gruppo deve essere utilizzato per identificare gli utenti che avranno i privilegi amministrativi di WebCalendar
Si tenga presente che in questo modo tutti gli utenti definiti su LDAP avranno accesso a WebCalendar. Nel caso illustrato per concedere i privilegi di amministratore ad un utente occorrerà anzitutto creare il gruppo webcal_admin e poi inserire l'utente all'interno dello stesso.
Con la configurazione citata sopra (che è quella usata anche da OpenPrivacy) questo comporta che detti utenti e gruppo saranno visibili anche localmente sulla macchina (se si usa PAM e NSS su LDAP) e sul dominio (se si usa anche Samba su LDAP).
Si tenga conto infine che è necessario anche eseguire parecchie modifiche al codice del file user-ldap.php
distribuito col pacchetto di Debian (almeno per la versione 0.9.45-4) dato che questo contiene vari errori e non funziona. Si consulti il bugtracker Debian per le modifiche suggerite.
Vedi inoltre:
Aggiornato da Simone Piccardi quasi 14 anni fa · 5 revisions