85 lines
2.4 KiB
Plaintext
85 lines
2.4 KiB
Plaintext
{
|
|
use esmith::util;
|
|
my $ldapBase = esmith::util::ldapBase ($DomainName);
|
|
my $db = $owncloud{'DbName'} || 'owncloud';
|
|
my $user = $owncloud{'DbUser'} || 'owncloud';
|
|
my $pass = $owncloud{'DbPassword'} || 'owncloud';
|
|
|
|
|
|
$OUT .= <<"END";
|
|
#! /bin/sh
|
|
if [ ! -d /var/lib/mysql/$db ]; then
|
|
# Create the database
|
|
/usr/bin/mysql -e 'create database $db'
|
|
fi
|
|
|
|
# Update the owncloud mysql user and password
|
|
/usr/bin/mysql <<EOF
|
|
USE mysql;
|
|
|
|
REPLACE INTO user (
|
|
host,
|
|
user,
|
|
password)
|
|
VALUES (
|
|
'localhost',
|
|
'$user',
|
|
PASSWORD ('$pass'));
|
|
|
|
|
|
REPLACE INTO db (
|
|
host,
|
|
db,
|
|
user,
|
|
select_priv, insert_priv, update_priv, delete_priv,
|
|
create_priv, alter_priv, index_priv, drop_priv, create_tmp_table_priv,
|
|
grant_priv, lock_tables_priv, references_priv)
|
|
VALUES (
|
|
'localhost',
|
|
'$db',
|
|
'$user',
|
|
'Y', 'Y', 'Y', 'Y',
|
|
'Y', 'Y', 'Y', 'Y', 'Y',
|
|
'N', 'Y', 'Y');
|
|
|
|
FLUSH PRIVILEGES;
|
|
|
|
EOF
|
|
|
|
# Call owncloud URL, it will trigger the install the first time
|
|
wget -O /dev/null --no-check-certificate https://$SystemName.$DomainName/owncloud 2>&1 > /dev/null
|
|
|
|
# Now Configure owncloud to use LDAP
|
|
/usr/bin/mysql <<EOF
|
|
|
|
USE $db;
|
|
|
|
REPLACE INTO appconfig (appid, configkey, configvalue) VALUES
|
|
('user_ldap', 'ldap_base', '$ldapBase'),
|
|
('user_ldap', 'ldap_base_groups', 'ou=Groups,$ldapBase'),
|
|
('user_ldap', 'ldap_base_users', 'ou=Users,$ldapBase');
|
|
|
|
|
|
INSERT IGNORE INTO appconfig (appid, configkey, configvalue) VALUES
|
|
('user_ldap', 'enabled', 'yes'),
|
|
('user_ldap', 'ldap_cache_ttl', '1'),
|
|
('user_ldap', 'ldap_display_name', 'uid'),
|
|
('user_ldap', 'ldap_email_attr', 'mail'),
|
|
('user_ldap', 'ldap_group_display_name', 'cn'),
|
|
('user_ldap', 'ldap_group_filter', 'objectClass=mailboxRelatedObject'),
|
|
('user_ldap', 'ldap_group_member_assoc_attribute', 'memberUid'),
|
|
('user_ldap', 'ldap_host', '127.0.0.1'),
|
|
('user_ldap', 'ldap_login_filter', 'uid=%uid'),
|
|
('user_ldap', 'ldap_userlist_filter', 'objectClass=sambaSamAccount'),
|
|
('user_ldap', 'ldap_uuid_attribute', 'entryuuid'),
|
|
('user_ldap', 'types', 'authentication');
|
|
|
|
UPDATE IGNORE group_user group_user SET uid='admin' where uid='owncloud';
|
|
|
|
DELETE FROM users where uid='owncloud';
|
|
|
|
EOF
|
|
END
|
|
}
|
|
|