/[smecontribs]/rpms/smeserver-cacti/contribs10/smeserver-cacti-1.1.19-sme10.patch
ViewVC logotype

Annotation of /rpms/smeserver-cacti/contribs10/smeserver-cacti-1.1.19-sme10.patch

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.18 - (hide annotations) (download)
Thu Jul 28 04:29:42 2022 UTC (2 years, 4 months ago) by jpp
Branch: MAIN
Changes since 1.17: +95 -3 lines
* Mon Jul 25 2022 Jean-Philippe Pialasse <tests@pialasse.com> 1.1.19-2.sme
- update httpd 2.4 to syntax [SME: 12039]
- initial import to SME10 [SME: 11307]
  cacti-1.2.21
  dedicated php-fpm pool 74
  update event
  ldap available
  auto install install_cacti.php --accept-eula --install
- fix sql init [SME: 10972]

* Wed Dec 11 2019 Jean-Philipe Pialasse <tests@pialasse.com> 1.1.19-1.sme
- update to cacti-1.1.19 [SME: 8434]

1 jpp 1.4 diff -Nur --no-dereference smeserver-cacti-1.1.19.old/createlinks smeserver-cacti-1.1.19/createlinks
2     --- smeserver-cacti-1.1.19.old/createlinks 2014-06-16 11:53:01.000000000 -0400
3     +++ smeserver-cacti-1.1.19/createlinks 2022-07-27 14:55:50.939000000 -0400
4     @@ -5,6 +5,7 @@
5     for my $event (qw(
6     post-upgrade
7     bootstrap-console-save
8     + console-save
9     ))
10     {
11     templates2events("/etc/cacti/db.php", $event);
12 jpp 1.18 @@ -22,3 +23,34 @@
13 jpp 1.4 }
14    
15     templates2events("/etc/e-smith/sql/init/80cacti", "post-upgrade");
16     +
17     +my $event="smeserver-cacti-update";
18     +event_templates($event, qw(
19     + /etc/cacti/db.php
20     + /etc/httpd/conf/httpd.conf
21     + /etc/crontab
22 jpp 1.9 + /etc/my.cnf
23 jpp 1.4 + /etc/opt/remi/php74/php-fpm.d/www.conf
24     + /etc/e-smith/sql/init/80cacti
25     +));
26     +
27     +event_services($event,
28     + 'crond' => 'restart',
29     + 'mysql.init' => 'restart',
30 jpp 1.9 + 'mariadb' => 'restart',
31 jpp 1.4 + 'httpd-e-smith' => 'sigusr1',
32     + 'php74-php-fpm' => 'reload-or-restart'
33     +);
34     +
35     +event_actions($event,
36 jpp 1.9 +'cacti-conf' => '2',
37 jpp 1.11 +'cacti-install' => '94',
38 jpp 1.4 +);
39     +
40     +
41     +#backup ?
42     +#use esmith::Build::Backup qw(:all);
43     +#backup_includes("smeserver-cacti", qw(
44     +#
45     +#));
46     +
47     diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/db/configuration/migrate/80cacti smeserver-cacti-1.1.19/root/etc/e-smith/db/configuration/migrate/80cacti
48     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/db/configuration/migrate/80cacti 1969-12-31 19:00:00.000000000 -0500
49     +++ smeserver-cacti-1.1.19/root/etc/e-smith/db/configuration/migrate/80cacti 2022-07-27 14:46:58.425000000 -0400
50     @@ -0,0 +1,72 @@
51     +{
52     + use MIME::Base64 qw(encode_base64);
53     +
54     + my $service;
55     + my $rec;
56     + my $pw;
57     +
58     + # Store the cacti password in the configuration database (if not already there)
59     + $service = 'cacti';
60     +
61     + $rec = $DB->get($service) || $DB->new_record($service, {type => 'service'});
62     +
63     + $pw = $rec->prop('DbPassword');
64     +
65     +
66     + if (! $pw)
67     + {
68     +
69     + if ( open( RANDOM, "/dev/urandom" ) )
70     + {
71     + my $buf;
72     + # 57 bytes is a full line of Base64 coding, and contains
73     + # 456 bits of randomness - given a perfectly random /dev/random
74     + if ( read( RANDOM, $buf, 57 ) != 57 )
75     + {
76     + warn("Short read from /dev/random: $!");
77     + }
78     + else
79     + {
80     + $pw = encode_base64($buf);
81     + chomp $pw;
82     + }
83     + close RANDOM;
84     + }
85     + else
86     + {
87     + warn "Could not open /dev/urandom: $!";
88     + }
89     +
90     + $rec->set_prop('DbPassword', $pw);
91     + }
92     + $pwa = $rec->prop('AdminPassword');
93     + if (! $pwa)
94     + {
95     +
96     + if ( open( RANDOM, "/dev/urandom" ) )
97     + {
98     + my $buf;
99     + # 57 bytes is a full line of Base64 coding, and contains
100     + # 456 bits of randomness - given a perfectly random /dev/random
101     + if ( read( RANDOM, $buf, 15 ) != 15 )
102     + {
103     + warn("Short read from /dev/random: $!");
104     + }
105     + else
106     + {
107     + $pwa = encode_base64($buf);
108     + chomp $pwa;
109     + }
110     + close RANDOM;
111     + }
112     + else
113     + {
114     + warn "Could not open /dev/urandom: $!";
115     + }
116     +
117     + $rec->set_prop('AdminPassword', $pwa);
118     + }
119     +
120     +
121     +
122     +}
123     diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/events/actions/cacti-conf smeserver-cacti-1.1.19/root/etc/e-smith/events/actions/cacti-conf
124     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/events/actions/cacti-conf 1969-12-31 19:00:00.000000000 -0500
125     +++ smeserver-cacti-1.1.19/root/etc/e-smith/events/actions/cacti-conf 2022-07-27 14:46:58.891000000 -0400
126     @@ -0,0 +1,16 @@
127     +#!/bin/bash
128     +
129     +#easy configuration of what is needed for cacti to work correctly
130     +something=0;
131     +psomething=0;
132     +#check if something already set, if not let's do it
133     +
134     +/sbin/e-smith/config getprop mariadb TmpTableSize 1>/dev/null || ( config setprop mariadb TmpTableSize 32M ; echo "setting mariadb TmpTableSize 32M" ; something=1)
135     +/sbin/e-smith/config getprop mariadb MaxHeapTableSize 1>/dev/null || ( config setprop mariadb MaxHeapTableSize 32M ; echo "setting mariadb MaxHeapTableSize 32M" ; something=1)
136     +/sbin/e-smith/config getprop mariadb JoinBufferSize 1>/dev/null || ( config setprop mariadb JoinBufferSize 62M ; echo "setting mariadb JoinBufferSize 62M" ; something=1)
137     +
138     +#/sbin/e-smith/config getprop php74 MemoryLimit 1>/dev/null || ( config setprop php74 MemoryLimit 800M ; echo "setting php74 memory_limit 800M" ; psomething=1)
139     +# install detect cli for php not php74 even if $php_path is set
140     +
141 jpp 1.9 +#[ $something == 1 ] && /sbin/e-smith/expand-template /etc/my.cnf
142 jpp 1.4 +#[ $psomething == 1 ] && /usr/sbin/e-smith/expand-template /etc/opt/remi/php74/php.ini && /usr/bin/systemctl restart php74-php-fpm.service
143     diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/events/actions/cacti-ldap smeserver-cacti-1.1.19/root/etc/e-smith/events/actions/cacti-ldap
144     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/events/actions/cacti-ldap 1969-12-31 19:00:00.000000000 -0500
145     +++ smeserver-cacti-1.1.19/root/etc/e-smith/events/actions/cacti-ldap 2022-07-27 14:46:58.663000000 -0400
146     @@ -0,0 +1,44 @@
147     +#!/bin/bash
148     +
149     +#use esmith::ConfigDB;
150     +#use esmith::util;
151     +#my $cdb = esmith::ConfigDB->open_ro();
152     +#my $domain = $cdb->get_value('DomainName');
153     +#my $baseDN = esmith::util::ldapBase($cdb->get_value('DomainName'));
154     +#print $baseDN . "\n";
155     +
156     +db=$(config getprop cacti DbDatabase || echo 'cacti_sme');
157     +user=$(config getprop cacti DbUser || echo 'cacti');
158     +pass=$(config getprop cacti DbPassword || echo 'changeme');
159     +adminpass=$(config getprop cacti AdminPassword || echo 'changeme');
160     +domain=$(config get DomainName)
161     +DN=$(perl -Mesmith::util -e "print esmith::util::ldapBase(\"$domain\");")
162     +
163     +
164     +# set ldap auth with optional group
165     +#ldap_group_require 'on' or ''
166     +# then set our admin password
167     +/usr/bin/mysql <<EOF
168     +UPDATE ${db}.settings SET value='memberUid' WHERE name='ldap_group_attrib';
169     +UPDATE ${db}.settings SET value='uid=cactigroup,ou=Groups,$DN' WHERE name='ldap_group_dn';
170     +
171     +UPDATE ${db}.settings SET value='0' WHERE name='ldap_tls_certificate';
172     +UPDATE ${db}.settings SET value='3' WHERE name='ldap_version';
173     +UPDATE ${db}.settings SET value='localhost' WHERE name='ldap_server';
174     +UPDATE ${db}.settings SET value='objectClass=inetOrgPerson' WHERE name='ldap_search_filter';
175     +UPDATE ${db}.settings SET value='ou=Users,$DN' WHERE name='ldap_search_base';
176     +UPDATE ${db}.settings SET value='0' WHERE name='ldap_referrals';
177     +UPDATE ${db}.settings SET value='636' WHERE name='ldap_port_ssl';
178     +UPDATE ${db}.settings SET value='389' WHERE name='ldap_port';
179     +UPDATE ${db}.settings SET value='0' WHERE name='ldap_mode';
180     +UPDATE ${db}.settings SET value='0' WHERE name='ldap_encryption';
181     +UPDATE ${db}.settings SET value='uid=<username>,ou=Users,$DN' WHERE name='ldap_dn';
182     +UPDATE ${db}.settings SET value='3' WHERE name='auth_method';
183     +UPDATE ${db}.settings SET value='cn' WHERE name='cn_full_name';
184     +UPDATE ${db}.settings SET value='mail' WHERE name='cn_email';
185     +
186     +
187     +# set password of admin
188     +UPDATE ${db}.user_auth SET email_address='admin@${domain}', must_change_password='',password=md5('$adminpass'), enabled='on' WHERE username='admin' and id='1';
189     +EOF
190     +
191     diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/cacti/db.php/10DB smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/cacti/db.php/10DB
192     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/cacti/db.php/10DB 1969-12-31 19:00:00.000000000 -0500
193     +++ smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/cacti/db.php/10DB 2022-07-27 14:46:55.823000000 -0400
194     @@ -0,0 +1,54 @@
195     +<?php
196     +/*
197     + +-------------------------------------------------------------------------+
198     + | Copyright (C) 2004 Ian Berry |
199     + | |
200     + | This program is free software; you can redistribute it and/or |
201     + | modify it under the terms of the GNU General Public License |
202     + | as published by the Free Software Foundation; either version 2 |
203     + | of the License, or (at your option) any later version. |
204     + | |
205     + | This program is distributed in the hope that it will be useful, |
206     + | but WITHOUT ANY WARRANTY; without even the implied warranty of |
207     + | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
208     + | GNU General Public License for more details. |
209     + +-------------------------------------------------------------------------+
210     + | cacti: a php-based graphing solution |
211     + +-------------------------------------------------------------------------+
212     + | Most of this code has been designed, written and is maintained by |
213     + | Ian Berry. See about.php for specific developer credit. Any questions |
214     + | or comments regarding this code should be directed to: |
215     + | - iberry@raxnet.net |
216     + +-------------------------------------------------------------------------+
217     + | - raXnet - http://www.raxnet.net/ |
218     + +-------------------------------------------------------------------------+
219     +*/
220     +
221     +/* make sure these values refect your actual database/host/user/password */
222     +$database_type = "mysql";
223     +$database_default = "{$cacti{'DbDatabase'}}";
224     +$database_hostname = "localhost";
225     +$database_username = "{$cacti{'DbUser'}}";
226     +$database_password = "{$cacti{'DbPassword'}}";
227     +$database_port = "3306";
228     +
229     +/*
230     + * Server is a remote poller, then these entries point to
231     + * the main cacti server. Otherwise, these variables have no use and
232     + * must remain commented out.
233     + */
234     +
235     +#$rdatabase_type = 'myql';
236     +#$rdatabase_default = 'cacti';
237     +#$rdatabase_hostname = 'localhost';
238     +#$rdatabase_username = 'cactiuser';
239     +#$rdatabase_password = 'cactiuser';
240     +#$rdatabase_port = '3306';
241     +#$rdatabase_retries = 5;
242     +#$rdatabase_ssl = false;
243     +#$rdatabase_ssl_key = '';
244     +#$rdatabase_ssl_cert = '';
245     +#$rdatabase_ssl_ca = '';
246     +
247     +
248     +
249     diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/cacti/db.php/12poller_id smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/cacti/db.php/12poller_id
250     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/cacti/db.php/12poller_id 1969-12-31 19:00:00.000000000 -0500
251     +++ smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/cacti/db.php/12poller_id 2022-07-27 14:46:56.040000000 -0400
252     @@ -0,0 +1,7 @@
253     +/*
254     + * The poller_id of this system. set to `1` for the main cacti web server.
255     + * Otherwise, you this value should be the poller_id for the remote poller.
256     + */
257     +
258     +$poller_id = 1;
259     +
260     diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/cacti/db.php/15urlpath smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/cacti/db.php/15urlpath
261     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/cacti/db.php/15urlpath 1969-12-31 19:00:00.000000000 -0500
262     +++ smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/cacti/db.php/15urlpath 2022-07-27 14:46:56.287000000 -0400
263     @@ -0,0 +1,9 @@
264     +/*
265     + * Set the $url_path to point to the default URL of your cacti install.
266     + * For exmaple if your cacti install as at `https://serverip/cacti/` this
267     + * would be set to `/cacti/`.
268     + */
269     +
270     +$url_path = '/cacti/';
271     +
272     +
273     diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/cacti/db.php/25session smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/cacti/db.php/25session
274     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/cacti/db.php/25session 1969-12-31 19:00:00.000000000 -0500
275     +++ smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/cacti/db.php/25session 2022-07-27 14:46:56.522000000 -0400
276     @@ -0,0 +1,19 @@
277     +/*
278     + * Default session name - session name must contain alpha characters
279     + */
280     +
281     +$cacti_session_name = 'Cacti';
282     +
283     +/*
284     + * Default Cookie domain - The cookie domain to be used for Cacti
285     + */
286     +
287     +//$cacti_cookie_domain = 'cacti.net';
288     +
289     +/*
290     + * Save sessions to a database for load balancing
291     + */
292     +
293     +$cacti_db_session = false;
294     +
295     +
296     diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/cacti/db.php/30log smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/cacti/db.php/30log
297     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/cacti/db.php/30log 1969-12-31 19:00:00.000000000 -0500
298     +++ smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/cacti/db.php/30log 2022-07-27 14:46:56.771000000 -0400
299     @@ -0,0 +1,6 @@
300     +/*
301     + * Disable log rotation settings for packagers
302     + */
303     +
304     +$disable_log_rotation = true;
305     +
306     diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/cacti/db.php/40input smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/cacti/db.php/40input
307     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/cacti/db.php/40input 1969-12-31 19:00:00.000000000 -0500
308     +++ smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/cacti/db.php/40input 2022-07-27 14:46:57.012000000 -0400
309     @@ -0,0 +1,18 @@
310     +/*
311     + * Optional parameters to define scripts and resource paths. These
312     + * variables become important when using remote poller installs when the
313     + * scripts and resource files are not in the main Cacti web server path.
314     + */
315     +
316     +//$scripts_path = '/var/www/html/cacti/scripts';
317     +//$resource_path = '/var/www/html/cacti/resource/';
318     +
319     +/*
320     + * Optional parameter to define a data input whitelist command string. This
321     + * whitelist file will help protect cacti from unauthorized changes to Cacti
322     + * data input command string.
323     + */
324     +
325     +//$input_whitelist = '/usr/local/etc/cacti/input_whitelist.json';
326     +
327     +
328     diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/cacti/db.php/50php smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/cacti/db.php/50php
329     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/cacti/db.php/50php 1969-12-31 19:00:00.000000000 -0500
330     +++ smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/cacti/db.php/50php 2022-07-27 14:46:57.268000000 -0400
331     @@ -0,0 +1,6 @@
332     +/*
333     + * Optional parameter to give explicit path to PHP
334     + */
335     +$php_path = '/usr/bin/php74';
336     +
337     +
338     diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/cacti/db.php/60snmp smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/cacti/db.php/60snmp
339     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/cacti/db.php/60snmp 1969-12-31 19:00:00.000000000 -0500
340     +++ smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/cacti/db.php/60snmp 2022-07-27 14:46:57.504000000 -0400
341     @@ -0,0 +1,8 @@
342     +/*
343     + * Optional parameter to disable the PHP SNMP extension. If not set, defaults
344     + * to class_exists('SNMP').
345     + */
346     +
347     +//$php_snmp_support = false;
348     +
349     +
350     diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/cacti/db.php/70csrf smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/cacti/db.php/70csrf
351     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/cacti/db.php/70csrf 1969-12-31 19:00:00.000000000 -0500
352     +++ smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/cacti/db.php/70csrf 2022-07-27 14:46:57.727000000 -0400
353     @@ -0,0 +1,8 @@
354     +/*
355     + * Optional parameter to define the path of the csrf_secret.php path. This
356     + * variable is for packagers who wish to specify an alternate location of
357     + * the CRSF secret file.
358     + */
359     +
360     +$path_csrf_secret = '/var/lib/cacti/csrf/csrf-secret.php';
361     +
362     diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/cacti/db.php/90DEBUG smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/cacti/db.php/90DEBUG
363     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/cacti/db.php/90DEBUG 1969-12-31 19:00:00.000000000 -0500
364     +++ smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/cacti/db.php/90DEBUG 2022-07-27 14:46:57.957000000 -0400
365     @@ -0,0 +1,30 @@
366     +/*
367     + * The following are optional variables for debugging low level system
368     + * functions that are generally only used by Cacti Developers to help
369     + * identify potential issues in commonly used functions
370     + *
371     + * To use them, uncomment and the equivalent field will be set in the
372     + * $config variable allowing for instant on but still allowing the
373     + * ability to fine turn and turn them off.
374     + */
375     +
376     +/*
377     + * Debug the read_config_option program flow
378     + */
379     +# define('DEBUG_READ_CONFIG_OPTION', true);
380     +
381     +/*
382     + * Automatically suppress the DEBUG_READ_CONFIG_OPTION
383     + */
384     +# define('DEBUG_READ_CONFIG_OPTION_DB_OPEN', true);
385     +
386     +/*
387     + * Always write the SQL command to the cacti log file
388     + */
389     +# define('DEBUG_SQL_CMD', true);
390     +
391     +/*
392     + * Debug the flow of calls to the db_xxx functions that
393     + * are defined in lib/database.php
394     + */
395     +# define('DEBUG_SQL_FLOW', true);
396     diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/cacti/db.php/95end smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/cacti/db.php/95end
397     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/cacti/db.php/95end 1969-12-31 19:00:00.000000000 -0500
398     +++ smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/cacti/db.php/95end 2022-07-27 14:46:58.190000000 -0400
399     @@ -0,0 +1 @@
400     +?>
401     diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/e-smith/sql/init/80cacti smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/e-smith/sql/init/80cacti
402     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/e-smith/sql/init/80cacti 2019-12-11 14:46:28.000000000 -0500
403     +++ smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/e-smith/sql/init/80cacti 2022-07-27 14:46:55.114000000 -0400
404     @@ -1,22 +1,34 @@
405     {
406     - my $db = $cacti{DbName} || 'cacti_sme';
407     + my $db = $cacti{DbDatabase} || 'cacti_sme';
408     my $user = $cacti{DbUser} || 'cacti';
409     my $pass = $cacti{DbPassword} || 'changeme';
410     $OUT .= <<END
411     -#! /bin/sh
412     +#!/bin/bash
413     if [ -d /var/lib/mysql/$db ]; then
414     + /usr/bin/mysql <<EOF
415     + use $db;
416     + use mysql;
417     + ALTER DATABASE $db COLLATE = 'utf8mb4_unicode_ci';
418     + GRANT ALL PRIVILEGES ON $db.* TO $user\@localhost
419     + IDENTIFIED BY '$pass';
420     + GRANT SELECT ON mysql.time_zone_name TO '$user'\@'localhost';
421     + flush privileges;
422     +EOF
423     +
424     +
425     exit
426     fi
427     /usr/bin/mysql <<EOF
428     - CREATE DATABASE $db DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
429 jpp 1.8 + CREATE DATABASE $db DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
430 jpp 1.4 use $db;
431     use mysql;
432     GRANT ALL PRIVILEGES ON $db.* TO $user\@localhost
433     IDENTIFIED BY '$pass';
434     - GRANT SELECT ON `mysql`.`time_zone_name` TO '$user'@'localhost';
435     + GRANT SELECT ON mysql.time_zone_name TO '$user'\@'localhost';
436     flush privileges;
437     EOF
438     /usr/bin/mysql_tzinfo_to_sql /usr/share/zoneinfo/ 2>/dev/null |/usr/bin/mysql mysql
439     - /usr/bin/mysql $db < /etc/e-smith/db/configuration/migrate/80cacti_sme.sql
440     + /usr/bin/mysql $db < \$(rpm -ql cacti|grep cacti.sql)
441     + #/usr/bin/mysql $db < /etc/e-smith/db/configuration/migrate/80cacti_sme.sql
442     END
443     -}
444     \ Pas de fin de ligne à la fin du fichier
445     +}
446     diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/86Cacti smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/86Cacti
447     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/86Cacti 2014-06-16 11:53:00.000000000 -0400
448     +++ smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/86Cacti 2022-07-26 00:30:15.300000000 -0400
449     @@ -5,32 +5,19 @@
450     SSLRequireSSL
451     Options -Indexes
452     AllowOverride None
453     - order deny,allow
454     - deny from all
455     -
456     -{
457     - my $cactiaxs = $cacti{'access'} || "private";
458     - if ($cactiaxs eq "private")
459     - {
460     - $OUT .= " allow from $localAccess $externalSSLAccess";
461     - } else {
462     - $OUT .= " allow from all";
463     - }
464     -}
465     - Satisfy all
466     - AddType application/x-httpd-php .php .php3
467     - php_flag magic_quotes_gpc on
468     - php_flag track_vars on
469     + Require { (($cacti{'access'} ||"private") eq "public") ? "all granted" : "ip $localAccess $externalSSLAccess"; }
470     + AddType application/x-httpd-php .php
471     + <FilesMatch \.php$ >
472     + SetHandler "proxy:unix:/var/run/php-fpm/php74-cacti.sock|fcgi://localhost"
473     + </FilesMatch>
474     </Directory>
475    
476    
477    
478     <Directory /usr/share/cacti/log>
479     - Order deny,allow
480     - Deny from all
481     + Require all denied
482     </Directory>
483     <Directory /usr/share/cacti/rra>
484     - Order deny,allow
485     - Deny from all
486     + Require all denied
487     </Directory>
488    
489     diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/php-fpm.d/www.conf/15cacti smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/php-fpm.d/www.conf/15cacti
490     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/php-fpm.d/www.conf/15cacti 1969-12-31 19:00:00.000000000 -0500
491     +++ smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/php-fpm.d/www.conf/15cacti 2022-07-27 14:46:55.335000000 -0400
492     @@ -0,0 +1,68 @@
493     +{
494     +
495     +if ($PHP_VERSION eq '74'){
496     + if (($cacti{'status'} || 'disabled') eq 'enabled'){
497     + my $max_upload_size = ($cacti{MaxUploadSize} || '4096');
498     + $max_upload_size .= 'M' if ($max_upload_size =~ m/^\d+$/);
499     + my $memory_limit = ($cacti{MemoryLimit} || '5555500M');
500     + $memory_limit .= 'M' if ($memory_limit =~ m/^\d+$/);
501     + my $open_basedir= $cacti{PHPBaseDir} || '';
502     + $open_basedir = "/tmp/:/share/:/var/log/cacti:/etc/cacti/db.php:/usr/share/cacti:/var/lib/cacti:/var/log/cacti.log:/var/lib/php/cacti:/home/e-smith/files/cacti:/dev/urandom:/proc/meminfo:$open_basedir";
503     + my $id = 'cacti';
504     + my $max_children = $cacti{'PHPmaxChildren'} || 20;
505     + my $min_spare_servers = $cacti{'PHPminServers'} || 4;
506     + my $start_servers = $cacti{'PHPstartServers'} || 6;
507     + my $max_spare_servers = $cacti{'PHPmaxServers'} || 8;
508     + my $max_requests = $cacti{'PHPmaxRequests'} || 1000;
509     + $min_spare_servers = ( $min_spare_servers > $max_spare_servers ) ? printf("%.0f",$max_spare_servers/2) : $min_spare_servers;
510     + $start_servers = ( $start_servers > $max_spare_servers ) ? printf("%.0f", $max_spare_servers /2 + $min_spare_servers/2 ) : $start_servers;
511     +
512     + $OUT .=<<_EOF;
513     +
514     +[php$PHP_VERSION-$id]
515     +user = www
516     +group = www
517     +listen.owner = root
518     +listen.group = www
519     +listen.mode = 0660
520     +listen = /var/run/php-fpm/php$PHP_VERSION-$id.sock
521     +pm = dynamic
522     +pm.max_children = $max_children
523     +pm.start_servers = $start_servers
524     +pm.min_spare_servers = $min_spare_servers
525     +pm.max_spare_servers = $max_spare_servers
526     +pm.max_requests = $max_requests
527     +php_admin_value[session.save_path] = /var/lib/php/$id/session
528     +php_admin_value[session.gc_maxlifetime] = 86400
529     +;php_admin_value[opcache.file_cache] = /var/lib/php/$id/opcache
530     +php_admin_value[upload_tmp_dir] = /var/lib/php/$id/tmp
531     +php_admin_value[error_log] = /var/log/php/$id/error.log
532     +slowlog = /var/log/php/cacti/slow.log
533     +php_admin_value[sendmail_path] = /usr/sbin/sendmail -t -i -f php@{ $DomainName }
534     +php_admin_flag[display_errors] = off
535     +php_admin_flag[log_errors] = on
536     +php_admin_value[error_log] = syslog
537     +php_admin_value[memory_limit] = $memory_limit
538     +php_admin_value[max_execution_time] = 3600
539     +php_admin_value[post_max_size] = $max_upload_size
540     +php_admin_value[upload_max_filesize] = $max_upload_size
541     +;php_admin_value[disable_functions] = system, show_source, symlink, dl, passthru, phpinfo, escapeshellarg, escapeshellcmd
542     +;php_admin_value[open_basedir] = $open_basedir
543     +php_admin_flag[allow_url_fopen] = on
544     +php_admin_flag[file_upload] = on
545     +;php_admin_flag[session.cookie_httponly] = on
546     +;php_admin_flag[allow_url_include] = off
547     +;php_admin_value[session.save_handler] = files
548     +;php_admin_flag[output_buffering] = off
549     +
550     +_EOF
551     +
552     + }
553     + else{
554     + $OUT .= '; Cacti is disabled';
555     + }
556     +}
557     +}
558     +
559     +
560     +
561     diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/templates.metadata/etc/cacti/db.php smeserver-cacti-1.1.19/root/etc/e-smith/templates.metadata/etc/cacti/db.php
562     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/templates.metadata/etc/cacti/db.php 2014-06-16 11:53:01.000000000 -0400
563     +++ smeserver-cacti-1.1.19/root/etc/e-smith/templates.metadata/etc/cacti/db.php 2022-07-26 00:44:20.988000000 -0400
564     @@ -1,3 +1,3 @@
565     -UID="cacti"
566     +UID="root"
567     GID="www"
568     PERMS=0640
569 jpp 1.9 diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/my.cnf/020cacti smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/my.cnf/020cacti
570     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/templates/etc/my.cnf/020cacti 1969-12-31 19:00:00.000000000 -0500
571     +++ smeserver-cacti-1.1.19/root/etc/e-smith/templates/etc/my.cnf/020cacti 2022-07-27 17:18:19.452000000 -0400
572     @@ -0,0 +1,4 @@
573     +#for cacti use
574     +innodb_buffer_pool_size=483M
575     +innodb_additional_mem_pool_size=80M
576     +innodb_flush_log_at_trx_commit=2
577 jpp 1.10 diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/events/actions/cacti-install smeserver-cacti-1.1.19/root/etc/e-smith/events/actions/cacti-install
578     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/events/actions/cacti-install 1969-12-31 19:00:00.000000000 -0500
579 jpp 1.15 +++ smeserver-cacti-1.1.19/root/etc/e-smith/events/actions/cacti-install 2022-07-28 00:00:45.319000000 -0400
580     @@ -0,0 +1,17 @@
581 jpp 1.10 +#!/bin/bash
582 jpp 1.18 +exit 0
583 jpp 1.10 +# move to cli dir
584     +cd /usr/share/cacti/cli
585     +
586 jpp 1.15 +#install, we put away, it seems that inside the event it just do not work
587 jpp 1.17 +/usr/bin/php74 install_cacti.php --accept-eula --install &
588 jpp 1.15 +pids=$! ; wait $pid;
589     +
590 jpp 1.10 +
591     +#TODO:
592     +#--automationmode
593     +#--automationrange with LAN if server-gateway; or only interface if server only
594     +#--lang (using an array between cacti option and system language)
595     +# using this to set ldap ? --ldap:dn:...
596     +# do we need a --mode=upgrade and a --mode=install
597     +
598     diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/events/actions/cacti-ldap smeserver-cacti-1.1.19/root/etc/e-smith/events/actions/cacti-ldap
599     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/events/actions/cacti-ldap 2022-07-27 22:43:12.847000000 -0400
600 jpp 1.15 +++ smeserver-cacti-1.1.19/root/etc/e-smith/events/actions/cacti-ldap 2022-07-27 23:58:46.807000000 -0400
601 jpp 1.17 @@ -19,24 +19,26 @@
602 jpp 1.10 #ldap_group_require 'on' or ''
603     # then set our admin password
604     /usr/bin/mysql <<EOF
605     -UPDATE ${db}.settings SET value='memberUid' WHERE name='ldap_group_attrib';
606     -UPDATE ${db}.settings SET value='uid=cactigroup,ou=Groups,$DN' WHERE name='ldap_group_dn';
607 jpp 1.14 +REPLACE INTO ${db}.settings VALUES ('ldap_group_attrib','memberUid') ;
608     +REPLACE INTO ${db}.settings VALUES ('ldap_group_dn','uid=cactigroup,ou=Groups,$DN') ;
609 jpp 1.10
610     -UPDATE ${db}.settings SET value='0' WHERE name='ldap_tls_certificate';
611     -UPDATE ${db}.settings SET value='3' WHERE name='ldap_version';
612     -UPDATE ${db}.settings SET value='localhost' WHERE name='ldap_server';
613     -UPDATE ${db}.settings SET value='objectClass=inetOrgPerson' WHERE name='ldap_search_filter';
614     -UPDATE ${db}.settings SET value='ou=Users,$DN' WHERE name='ldap_search_base';
615     -UPDATE ${db}.settings SET value='0' WHERE name='ldap_referrals';
616     -UPDATE ${db}.settings SET value='636' WHERE name='ldap_port_ssl';
617     -UPDATE ${db}.settings SET value='389' WHERE name='ldap_port';
618     -UPDATE ${db}.settings SET value='0' WHERE name='ldap_mode';
619     -UPDATE ${db}.settings SET value='0' WHERE name='ldap_encryption';
620     -UPDATE ${db}.settings SET value='uid=<username>,ou=Users,$DN' WHERE name='ldap_dn';
621     -UPDATE ${db}.settings SET value='3' WHERE name='auth_method';
622     -UPDATE ${db}.settings SET value='cn' WHERE name='cn_full_name';
623     -UPDATE ${db}.settings SET value='mail' WHERE name='cn_email';
624 jpp 1.14 +REPLACE INTO ${db}.settings VALUES ('ldap_tls_certificate','0') ;
625     +REPLACE INTO ${db}.settings VALUES ('ldap_version','3') ;
626     +REPLACE INTO ${db}.settings VALUES ('ldap_server','localhost') ;
627     +REPLACE INTO ${db}.settings VALUES ('ldap_search_filter','objectClass=inetOrgPerson') ;
628     +REPLACE INTO ${db}.settings VALUES ('ldap_search_base','ou=Users,$DN') ;
629     +REPLACE INTO ${db}.settings VALUES ('ldap_referrals','0') ;
630     +REPLACE INTO ${db}.settings VALUES ('ldap_port_ssl','636') ;
631     +REPLACE INTO ${db}.settings VALUES ('ldap_port','389') ;
632     +REPLACE INTO ${db}.settings VALUES ('ldap_mode','0') ;
633     +REPLACE INTO ${db}.settings VALUES ('ldap_encryption','0') ;
634     +REPLACE INTO ${db}.settings VALUES ('ldap_dn','uid=<username>,ou=Users,$DN') ;
635     +REPLACE INTO ${db}.settings VALUES ('auth_method','3') ;
636     +REPLACE INTO ${db}.settings VALUES ('cn_full_name','cn') ;
637     +REPLACE INTO ${db}.settings VALUES ('cn_email','mail') ;
638 jpp 1.17 +REPLACE INTO ${db}.settings VALUES ('path_php_binary','/usr/bin/php74') ;
639 jpp 1.10
640 jpp 1.15 +REPLACE INTO ${db}.settings VALUES ('user_template','3');
641 jpp 1.10
642     # set password of admin
643     UPDATE ${db}.user_auth SET email_address='admin@${domain}', must_change_password='',password=md5('$adminpass'), enabled='on' WHERE username='admin' and id='1';
644 jpp 1.18 diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/events/actions/cacti-install smeserver-cacti-1.1.19/root/etc/e-smith/events/actions/cacti-install
645     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/events/actions/cacti-install 2022-07-28 00:24:34.405000000 -0400
646     +++ smeserver-cacti-1.1.19/root/etc/e-smith/events/actions/cacti-install 2022-07-28 00:26:59.373000000 -0400
647     @@ -15,3 +15,39 @@
648     # using this to set ldap ? --ldap:dn:...
649     # do we need a --mode=upgrade and a --mode=install
650    
651     +db=$(config getprop cacti DbDatabase || echo 'cacti_sme');
652     +user=$(config getprop cacti DbUser || echo 'cacti');
653     +pass=$(config getprop cacti DbPassword || echo 'changeme');
654     +adminpass=$(config getprop cacti AdminPassword || echo 'changeme');
655     +domain=$(config get DomainName)
656     +DN=$(perl -Mesmith::util -e "print esmith::util::ldapBase(\"$domain\");")
657     +
658     +# set ldap auth with optional group
659     +# ldap_group_require 'on' or '': user will enable if needed.
660     +# then set our admin password
661     +/usr/bin/mysql <<EOF
662     +REPLACE INTO ${db}.settings VALUES ('ldap_group_attrib','memberUid') ;
663     +REPLACE INTO ${db}.settings VALUES ('ldap_group_dn','uid=cactigroup,ou=Groups,$DN') ;
664     +
665     +REPLACE INTO ${db}.settings VALUES ('ldap_tls_certificate','0') ;
666     +REPLACE INTO ${db}.settings VALUES ('ldap_version','3') ;
667     +REPLACE INTO ${db}.settings VALUES ('ldap_server','localhost') ;
668     +REPLACE INTO ${db}.settings VALUES ('ldap_search_filter','objectClass=inetOrgPerson') ;
669     +REPLACE INTO ${db}.settings VALUES ('ldap_search_base','ou=Users,$DN') ;
670     +REPLACE INTO ${db}.settings VALUES ('ldap_referrals','0') ;
671     +REPLACE INTO ${db}.settings VALUES ('ldap_port_ssl','636') ;
672     +REPLACE INTO ${db}.settings VALUES ('ldap_port','389') ;
673     +REPLACE INTO ${db}.settings VALUES ('ldap_mode','0') ;
674     +REPLACE INTO ${db}.settings VALUES ('ldap_encryption','0') ;
675     +REPLACE INTO ${db}.settings VALUES ('ldap_dn','uid=<username>,ou=Users,$DN') ;
676     +REPLACE INTO ${db}.settings VALUES ('auth_method','3') ;
677     +REPLACE INTO ${db}.settings VALUES ('cn_full_name','cn') ;
678     +REPLACE INTO ${db}.settings VALUES ('cn_email','mail') ;
679     +REPLACE INTO ${db}.settings VALUES ('path_php_binary','/usr/bin/php74') ;
680     +
681     +REPLACE INTO ${db}.settings VALUES ('user_template','3');
682     +
683     +# set password of admin
684     +UPDATE ${db}.user_auth SET email_address='admin@${domain}', must_change_password='',password=md5('$adminpass'), enabled='on' WHERE username='admin' and id='1';
685     +EOF
686     +
687     diff -Nur --no-dereference smeserver-cacti-1.1.19.old/root/etc/e-smith/events/actions/cacti-ldap smeserver-cacti-1.1.19/root/etc/e-smith/events/actions/cacti-ldap
688     --- smeserver-cacti-1.1.19.old/root/etc/e-smith/events/actions/cacti-ldap 2022-07-28 00:24:34.405000000 -0400
689     +++ smeserver-cacti-1.1.19/root/etc/e-smith/events/actions/cacti-ldap 1969-12-31 19:00:00.000000000 -0500
690     @@ -1,46 +0,0 @@
691     -#!/bin/bash
692     -
693     -#use esmith::ConfigDB;
694     -#use esmith::util;
695     -#my $cdb = esmith::ConfigDB->open_ro();
696     -#my $domain = $cdb->get_value('DomainName');
697     -#my $baseDN = esmith::util::ldapBase($cdb->get_value('DomainName'));
698     -#print $baseDN . "\n";
699     -
700     -db=$(config getprop cacti DbDatabase || echo 'cacti_sme');
701     -user=$(config getprop cacti DbUser || echo 'cacti');
702     -pass=$(config getprop cacti DbPassword || echo 'changeme');
703     -adminpass=$(config getprop cacti AdminPassword || echo 'changeme');
704     -domain=$(config get DomainName)
705     -DN=$(perl -Mesmith::util -e "print esmith::util::ldapBase(\"$domain\");")
706     -
707     -
708     -# set ldap auth with optional group
709     -#ldap_group_require 'on' or ''
710     -# then set our admin password
711     -/usr/bin/mysql <<EOF
712     -REPLACE INTO ${db}.settings VALUES ('ldap_group_attrib','memberUid') ;
713     -REPLACE INTO ${db}.settings VALUES ('ldap_group_dn','uid=cactigroup,ou=Groups,$DN') ;
714     -
715     -REPLACE INTO ${db}.settings VALUES ('ldap_tls_certificate','0') ;
716     -REPLACE INTO ${db}.settings VALUES ('ldap_version','3') ;
717     -REPLACE INTO ${db}.settings VALUES ('ldap_server','localhost') ;
718     -REPLACE INTO ${db}.settings VALUES ('ldap_search_filter','objectClass=inetOrgPerson') ;
719     -REPLACE INTO ${db}.settings VALUES ('ldap_search_base','ou=Users,$DN') ;
720     -REPLACE INTO ${db}.settings VALUES ('ldap_referrals','0') ;
721     -REPLACE INTO ${db}.settings VALUES ('ldap_port_ssl','636') ;
722     -REPLACE INTO ${db}.settings VALUES ('ldap_port','389') ;
723     -REPLACE INTO ${db}.settings VALUES ('ldap_mode','0') ;
724     -REPLACE INTO ${db}.settings VALUES ('ldap_encryption','0') ;
725     -REPLACE INTO ${db}.settings VALUES ('ldap_dn','uid=<username>,ou=Users,$DN') ;
726     -REPLACE INTO ${db}.settings VALUES ('auth_method','3') ;
727     -REPLACE INTO ${db}.settings VALUES ('cn_full_name','cn') ;
728     -REPLACE INTO ${db}.settings VALUES ('cn_email','mail') ;
729     -REPLACE INTO ${db}.settings VALUES ('path_php_binary','/usr/bin/php74') ;
730     -
731     -REPLACE INTO ${db}.settings VALUES ('user_template','3');
732     -
733     -# set password of admin
734     -UPDATE ${db}.user_auth SET email_address='admin@${domain}', must_change_password='',password=md5('$adminpass'), enabled='on' WHERE username='admin' and id='1';
735     -EOF
736     -

admin@koozali.org
ViewVC Help
Powered by ViewVC 1.2.1 RSS 2.0 feed