...

вторник, 18 ноября 2014 г.

[Из песочницы] Добавление самостоятельной регистрации пользователями в ownCloud 6

imageimage

Доброго времени суток, хабравчане!


В своей публикации хотел бы поделится с вами личным опытом добавления модуля для самостоятельной регистрации пользователями в облачный сервис. Про настройку LAMP и установку ownCloud описания не будет, поскольку инструкций и всевозможных статей на эту тему уже есть большое множество.


О настройке ownCloud я находил множество статей, и многие были с данного ресурса, но по вопросу: «как добавить возможность регистрации?» в рунете я нашел только один источник, который, на мой взгляд, показался не очень информативным и не достаточно полным. Исходя из этого и родилась идея для написании данного поста.



Начнем




Допустим, у нас есть веб-сервер с установленным ownCloud'ом на Debian Wheezy. Главным условием является, что сервис еще ни разу не запускался и не настраивался.
Теперь, идем по порядку:



1. Первым делом нам нужно скачать архив, в котором есть все необходимое:

wget http://ift.tt/1upg2Cl




2. Распаковываем скачанный архив и копируем из него папку registration в директорию с облачным сервисом в папку core:

unzip registration-final
cp -R registration /var/www/owncloud/core/




Далее нужно так же из распакованного архива скопировать с заменой файлы:


  • db_structure.xml в основную папку облачного сервиса;

  • routes.php в папку core;

  • login.php в папку core/templates.



cp -f db_structure.xml /var/www/owncloud/
cp -f routes.php /var/www/owncloud/core/
cp -f login.php /var/www/owncloud/core/templates/




На этом все манипуляции с архивом закончились.

3. Запускаем в браузере ownCloud, регистрируем административную учетную запись, подключаем БД. После выходим из сервиса и видим на странице ввода логина и пароля снизу ссылку register. Но на этом настройка модуля не закончена.


4. Поскольку, чтобы пользователь получал письмо на свой e-mail с ссылкой для регистрации, нужно установить и настроить какой-нибудь МТA. Для этого я использовал postfix в качестве relay, чтобы он отсылал письма с моей gmail'овской почты.


Устанавливаем postfix и mailutils:



apt-get install postfix mailutils




Открываем конфиг и дополняем его строчками:

nano /etc/postfix/main.cf





relayhost = [smtp.gmail.com]:587

smtp_use_tls=yes

smtp_sasl_auth_enable = yes

smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd

smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt

smtp_sasl_security_options =





Открываем (создаем) файл sasl_passwd:

nano /etc/postfix/sasl_passwd




Добавляем туда строчку:

[smtp.gmail.com]:587 username:password





Далее делаем:

postmap /etc/postfix/sasl_passwd
cd /etc/postfix
chown postfix sasl_passwd*




И перезагружаем postfix:

/etc/init.d/postfix reload




Отправляем тестовое письмо для проверки работоспособности postfix'a:

echo "Test mail from postfix" | mail -s "Test Postfix" you@example.com




Если письмо не пришло, смотрим логи на ошибки:

tail /var/log/mail.log




На этом настройка закончилась, осталось проверить работоспособность самой регистрации.

Снова открываем в браузере наш облачный сервис, нажимаем на register, пишем e-mail и проверяем почту, где мы должны увидеть письмо с ссылкой для дальнейшей регистрации.


После проделанной работы результатом будет — облачный сервис с возможностью самостоятельной регистрации пользователя.


This entry passed through the Full-Text RSS service - if this is your content and you're reading it on someone else's site, please read the FAQ at http://ift.tt/jcXqJW.


Комментариев нет:

Отправить комментарий