WebCalendar » Cronologia » Versione 3
Amministratore Truelite, 10-10-2006 20:14
| 1 | 2 | Amministratore Truelite | [[TracNav(TOC)]] |
|---|---|---|---|
| 2 | 1 | Amministratore Truelite | = WebCalendar = |
| 3 | |||
| 4 | == Installare e configurare WebCalendar == |
||
| 5 | |||
| 6 | Su Debian è disponibile il pacchetto webcalendar, installabile direttamente con APT, il pacchetto però, pur facendo riferimento ad un database, non lo installa. |
||
| 7 | |||
| 8 | 3 | Amministratore Truelite | 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 [wiki:MySQLInitConf]. |
| 9 | 1 | Amministratore Truelite | |
| 10 | 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. |
||
| 11 | |||
| 12 | Segue l'indicazione del database (nel caso si è scelto appunto MySQL dal relativo menù, l'altra possibilità è l'uso di Postgres), per il quale vengono poi richiesti in successione: |
||
| 13 | |||
| 14 | * hostname (che sarà localhost) |
||
| 15 | * username dell'utente (nel caso si è scelto webcalendar) |
||
| 16 | * una password (ad esempio antani) |
||
| 17 | * il nome del database (webcalendar, tanto per cambiare ...) |
||
| 18 | |||
| 19 | 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. |
||
| 20 | |||
| 21 | 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: |
||
| 22 | |||
| 23 | {{{ |
||
| 24 | mysqladmin -u root -p create webcalendar |
||
| 25 | }}} |
||
| 26 | |||
| 27 | 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'''). |
||
| 28 | |||
| 29 | A questo punto si passerà alla creazione dell'utente usato da WebCalendar per l'interazione con MySQL. Il primo passo è collegarsi con i privilegi di amministratore al database mysql che contiene i dati di gestione di MySQL stesso; questo si fa con il comando: |
||
| 30 | |||
| 31 | {{{ |
||
| 32 | mysql --user=root mysql -p |
||
| 33 | }}} |
||
| 34 | |||
| 35 | che ovviamente chiede la password. A questo punto si sarà connessi sulla console di MySQL, e si potrà creare l'utente ed assegnagli i premessi necessari con la seguente riga di codice SQL: |
||
| 36 | |||
| 37 | {{{ |
||
| 38 | GRANT ALL PRIVILEGES ON *.* TO webcalendar@localhost IDENTIFIED BY 'antani' WITH GRANT OPTION; |
||
| 39 | }}} |
||
| 40 | |||
| 41 | (di nuovo si noti che si sono utilizzati username e password immessi in fase configurazione con debconf). E' poi oppotuno dare il comando FLUSH PRIVILEGES; prima di uscire, in modo da essere sicuri che i privilegi siano aggiornati. |
||
| 42 | |||
| 43 | 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 è: |
||
| 44 | |||
| 45 | {{{ |
||
| 46 | mysql -u webcalendar -p webcalendar < /var/lib/webcalendar/sql/tables-mysql.sql |
||
| 47 | }}} |
||
| 48 | |||
| 49 | (al solito sarà chiesta la password, stavolta dell'utente webcalendar). |
||
| 50 | |||
| 51 | Si potrà verificare che la struttura è stata creata collegandosi con il nuovo utente e verificando quali tabelle sono state crete sul database con: |
||
| 52 | |||
| 53 | {{{ |
||
| 54 | server:~# mysql -u webcalendar -p webcalendar |
||
| 55 | Enter password: |
||
| 56 | |||
| 57 | mysql> show tables; |
||
| 58 | +--------------------------+ |
||
| 59 | | Tables_in_webcalendar | |
||
| 60 | +--------------------------+ |
||
| 61 | | webcal_asst | |
||
| 62 | | webcal_categories | |
||
| 63 | | webcal_config | |
||
| 64 | | webcal_entry | |
||
| 65 | | webcal_entry_ext_user | |
||
| 66 | | webcal_entry_log | |
||
| 67 | | webcal_entry_repeats | |
||
| 68 | | webcal_entry_repeats_not | |
||
| 69 | | webcal_entry_user | |
||
| 70 | | webcal_group | |
||
| 71 | | webcal_group_user | |
||
| 72 | | webcal_import | |
||
| 73 | | webcal_import_data | |
||
| 74 | | webcal_nonuser_cals | |
||
| 75 | | webcal_reminder_log | |
||
| 76 | | webcal_report | |
||
| 77 | | webcal_report_template | |
||
| 78 | | webcal_site_extras | |
||
| 79 | | webcal_user | |
||
| 80 | | webcal_user_layers | |
||
| 81 | | webcal_user_pref | |
||
| 82 | | webcal_view | |
||
| 83 | | webcal_view_user | |
||
| 84 | +--------------------------+ |
||
| 85 | 23 rows in set (0.00 sec) |
||
| 86 | |||
| 87 | mysql> \q |
||
| 88 | Bye |
||
| 89 | }}} |
||
| 90 | |||
| 91 | 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: |
||
| 92 | |||
| 93 | {{{ |
||
| 94 | Include /etc/webcalendar/apache.conf |
||
| 95 | }}} |
||
| 96 | |||
| 97 | 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). |
||
| 98 | |||
| 99 | 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. La schermata iniziale è illustrata nella immagine seguente: |
||
| 100 | |||
| 101 | 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: |
||
| 102 | |||
| 103 | {{{ |
||
| 104 | user_inc: user-ldap.php |
||
| 105 | }}} |
||
| 106 | |||
| 107 | questo però va in conflitto con la gestione di debconf, occorrerà mantenere la modifica a mano. |
||
| 108 | |||
| 109 | 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: |
||
| 110 | |||
| 111 | {{{ |
||
| 112 | ... |
||
| 113 | // base DN to search for users |
||
| 114 | $ldap_base_dn = 'ou=Users,dc=truelite,dc=it'; |
||
| 115 | ... |
||
| 116 | // A group name (complete DN) to find users with admin rights |
||
| 117 | $ldap_admin_group_name = 'cn=webcal_admin,ou=Groups,dc=truelite,dc=it'; |
||
| 118 | ... |
||
| 119 | }}} |
||
| 120 | |||
| 121 | 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. |
||
| 122 | |||
| 123 | 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. |
||
| 124 | |||
| 125 | 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). |
||
| 126 | |||
| 127 | 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. |
||
| 128 | |||
| 129 | Vedi inoltre: |
||
| 130 | |||
| 131 | * ApacheTwoConfig |