Rainloop یک نرم افزار وب متن باز است که برپایه ی PHP نوشته شده است که اینترفیس وب مدرنی برای دسترسی ایمیل های شما برروی تمام میل دامین های بزرگ شبیه Yahoo،Gmail،Outlook و بسیاری دیگر فراهم کرده است. همچنین به عنوان MUA(Mail User Agent) توسط دسترسی میل سرورها از طریق IMAP و SMTP نیز فعالیت می کند.
Railloop Demo:
از طریق لینک زیر نگاهی به صفحه ی دموی آن داشته باشید.
http://demo.rainloop.net/.
هنگامیکه شما Rainloop را برروی سرور گسترش دادید تنها چیزی که باقی می ماند دسترسی دامین rainloop شما از طریق مرورگر وب و ایجاد اعتبارهایی برای دامین میل سرور فعال شده است.
این راهنما پروسه ی نصب Rainloop webmail را برروی لینوکس Arch از طریق هر دو فایل کانفیگ برای آپاچی و nginx را پوشش میدهد. با استفاده از یک دامین مجازی محلی پیکربندی شده از طریق فایل localhosts، بدون یک سرور DNS توضیح می دهد.
اگر شما نیاز به مراجعی در مورد نصب Rainloop برروی دبیان و ردهت دارید ، لینک زیر را مشاهده کنید.
پیش نیازها
برای Nginx
Install LEMP (Nginx, PHP, MySQL with MariaDB engine and PhpMyAdmin) in Arch Linux
آموزش نصب و ایمن سازی phpMyAdmin روی لینوکس
آموزش نصب nginx روی لینوکس ubuntu و debian
برای Apache
آموزش نصب LAMP بر روی سرور Linux Apache MySQL PHP
گام 1: ایجاد Virtual Hosts برای Nginx یا apache
1. فرض می کنیم که شما سرورتان را با استفاده از لینک های بالا پیکربندی کرده اید. اولین چیزی که باید در نظر داشته باشید ایجاد DNS نام اولیه در فایل hosts محلی که اشاره به آی پی سیستم آرک دارد می باشد.
برروی سیستم لینوکس فایل /etc/hosts را ویرایش کنید و دامین مجازی Rainloop خود را بعد از localhost وارد کنید.
برروی سیستم ویندوز فایل C:\Windows\System32\drivers\etc\hosts را باز کرده و خط زیر را به آن اضافه کنید.
2. پس از اینکه شما دامین محلی خود را با استفاده از دستور ping بررسی کردید، هاست های مجازی لازم را ایجاد کنید و پیکربندی SSL را برای Apache و یا Nginx ایجاد کنید.
Nginx Virtual Hosts
یک فایل با نام rainloop.lan در مسیر /etc/nginx/sites-available/ ایجاد کنید.
محتویات زیررا در آن اضافه کنید.
برای ایجاد فایل SSL آن به صورت زیر عمل کنید.
محتویات زیر را اضافه کنید.
در گام بعدی فایل ceritificate و کلیدهایی برای SSL ایجاد خواهیم کرد و نام دامین مجازی خود را روی نام رایجceritificate اضافه خواهیم کرد.
پس از اینکه Ceritificate و کلیدهای SSL ایجاد شدند. مسیر فایل وب سرور روت rainloop راا یجاد کنید. سپس virtual host ها را فعال کنید و Nginx را ریستارت کنید.
Apache Virtual Hosts
فایلی با نام rainloop.conf در /etc/httpd/conf/sites-available/ را با محتویات زیر ایجاد کنید.
سپس فایل زیر را برای SSL با محتویات زیر ایجاد کنید.
محتویات زیر را درآن اضافه کنید.
گام بعدی ایجاد فایل ceritificate و کلیدهای SSL و قرار دادن نام دامین مجازی شما در آن است.
پس از ایجاد Ceritificate ها و کلید ها ، مسیر DocumentRoot Rainloop را اضافه کنید، سپس virtual host را فعال کرده و آپاچی را ریستارت کنید.
گام 2:اضافه کردن Extentionهای ضروری PHP
3. شما چه از وب سرور Nginx استفاده کنید و چه ازآپاچی ، نیاز به فعال کردن extentionهای PHP روی فایل php.ini خواهید داشت، همچنین مسیر DocumentRoot برای open_basedir را شامل می شود.
Extentionهای زیر را قرار دهید و uncomment کنید.
همچنین open_basedir می بایست شبیه به زیر باشد.
4. پس از تغییر فایل php.ini سرورتان را ریستارت کنید و اطلاعات فایل phpinfo را برای دیدن پروتکل SSL چک کنید .
گام 3: دانلود و نصب RainLoop Webmail
5. حالا برنامه ی Rainloop را از وب سایت آن دانلود و نصب کنید اما ابتدا wget را نصب کرده و ابزار آنرا unzip کنید.
6. آخرین پکیج سورس Rainloop را با استفاده از wget دانلود کنید.
7. پس از دانلود، آرشیو Rainloop را در مسیر virtual host document root، /srv/www/rainloop/ استخراج کنید.
8. سپس پرمیشن های زیر را روی مسیر پیش فرض قرار دهید.
گام 4:پیکربندی Rainloop توسط اینترفیس وب
9. برنامه ی Rainloop از دو راه پیکربندی می شود» با استفاده از شل و با استفاده از مرورگر. اگر شما می خواهید تحت ترمینال آنرا پیکربندی کنید فایل application.ini واقع در /srv/www/rainloop/data/_data_da047852f16d2bc7352b24240a2f1599/_default_/configs/ را باز کنید.
10. برای دسترسی از مرورگر آدرس زیر را استفاده کنید.
یوزر و پسورد زیر را وارد کنید.
11. پس از لاگین ابتدایی بذای تغییر پسورد پیش فرض هشدار خواهید دید.
12. اگر شما می خواهید لاگین به دیتابیس mysql را فعال کنید و دیتابیس جدیدی با دسترسی کاربر روی آن ایجاد کنید، به صورت زیر عمل کنید.
13. به صورت پیش فرض Rainloop دامین های Gmail،Yahoo و Outlook را فراهم می کند، اما اگر می خواهید می توانید میل سرور های دیگری را اضافه کنید.
14. برای لاگین کردن بر روی میل سرور در مرورگر خود آدرس زیر را وارد کنید و اطلاعات دامین را در آن وارد کنید.
برای پیکربندی های بعدی لطفا داکیومنت های واقع در سایت زیر را مشاهده کنید.
با استفاده از Rainloop شما می توانید به میل سرورها دسترسی داشته باشید . از هر دیوایسی که یک مرورگر را برای دسترسی به اینترنت دارد می توانید استفاده کنید.
Railloop Demo:
از طریق لینک زیر نگاهی به صفحه ی دموی آن داشته باشید.
http://demo.rainloop.net/.
هنگامیکه شما Rainloop را برروی سرور گسترش دادید تنها چیزی که باقی می ماند دسترسی دامین rainloop شما از طریق مرورگر وب و ایجاد اعتبارهایی برای دامین میل سرور فعال شده است.
این راهنما پروسه ی نصب Rainloop webmail را برروی لینوکس Arch از طریق هر دو فایل کانفیگ برای آپاچی و nginx را پوشش میدهد. با استفاده از یک دامین مجازی محلی پیکربندی شده از طریق فایل localhosts، بدون یک سرور DNS توضیح می دهد.
اگر شما نیاز به مراجعی در مورد نصب Rainloop برروی دبیان و ردهت دارید ، لینک زیر را مشاهده کنید.
- Install RainLoop Webmail on Debian and Red Hat based Systems
پیش نیازها
برای Nginx
Install LEMP (Nginx, PHP, MySQL with MariaDB engine and PhpMyAdmin) in Arch Linux
آموزش نصب و ایمن سازی phpMyAdmin روی لینوکس
آموزش نصب nginx روی لینوکس ubuntu و debian
برای Apache
آموزش نصب LAMP بر روی سرور Linux Apache MySQL PHP
گام 1: ایجاد Virtual Hosts برای Nginx یا apache
1. فرض می کنیم که شما سرورتان را با استفاده از لینک های بالا پیکربندی کرده اید. اولین چیزی که باید در نظر داشته باشید ایجاد DNS نام اولیه در فایل hosts محلی که اشاره به آی پی سیستم آرک دارد می باشد.
برروی سیستم لینوکس فایل /etc/hosts را ویرایش کنید و دامین مجازی Rainloop خود را بعد از localhost وارد کنید.
کد:
[LEFT] 127.0.0.1 localhost.localdomain localhost rainloop.lan 192.168.1.33 rainloop.lan[/LEFT]
برروی سیستم ویندوز فایل C:\Windows\System32\drivers\etc\hosts را باز کرده و خط زیر را به آن اضافه کنید.
کد:
192.168.1.33 rainloop.lan
2. پس از اینکه شما دامین محلی خود را با استفاده از دستور ping بررسی کردید، هاست های مجازی لازم را ایجاد کنید و پیکربندی SSL را برای Apache و یا Nginx ایجاد کنید.
Nginx Virtual Hosts
یک فایل با نام rainloop.lan در مسیر /etc/nginx/sites-available/ ایجاد کنید.
کد:
$ sudo nano /etc/nginx/sites-available/rainloop.conf
کد:
server { listen 80; server_name rainloop.lan; rewrite ^ https://$server_name$request_uri? permanent; access_log /var/log/nginx/rainloop.lan.access.log; error_log /var/log/nginx/rainloop.lan.error.log; root /srv/www/rainloop/; # serve static files location ~ ^/(images|javascript|js|css|flash|media|static)/ { root /srv/www/rainloop/; expires 30d; } location / { index index.html index.htm index.php; autoindex on; autoindex_exact_size off; autoindex_localtime on; } location ^~ /data { deny all; } location ~ \.php$ { #fastcgi_pass 127.0.0.1:9000; (depending on your php-fpm socket configuration) fastcgi_pass unix:/run/php-fpm/php-fpm.sock; fastcgi_index index.php; include fastcgi.conf; } }
برای ایجاد فایل SSL آن به صورت زیر عمل کنید.
کد:
$ sudo nano /etc/nginx/sites-available/rainloop-ssl.conf
کد:
server { listen 443 ssl; server_name rainloop.lan; ssl_certificate /etc/nginx/ssl/rainloop.lan.crt; ssl_certificate_key /etc/nginx/ssl/rainloop.lan.key; ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; access_log /var/log/nginx/rainloop.lan.access.log; error_log /var/log/nginx/rainloop.lan.error.log; root /srv/www/rainloop/; # serve static files location ~ ^/(images|javascript|js|css|flash|media|static)/ { root /srv/www/rainloop/; expires 30d; } location ^~ /data { deny all; } location / { index index.html index.htm index.php; autoindex on; autoindex_exact_size off; autoindex_localtime on; } location ~ \.php$ { #fastcgi_pass 127.0.0.1:9000; (depending on your php-fpm socket configuration) fastcgi_pass unix:/run/php-fpm/php-fpm.sock; fastcgi_index index.php; include fastcgi.conf; } }
در گام بعدی فایل ceritificate و کلیدهایی برای SSL ایجاد خواهیم کرد و نام دامین مجازی خود را روی نام رایجceritificate اضافه خواهیم کرد.
کد:
$ sudo nginx_gen_ssl.sh
پس از اینکه Ceritificate و کلیدهای SSL ایجاد شدند. مسیر فایل وب سرور روت rainloop راا یجاد کنید. سپس virtual host ها را فعال کنید و Nginx را ریستارت کنید.
کد:
$ sudo mkdir -p /srv/www/rainloop $ sudo n2ensite rainloop $ sudo n2ensite rainloop-ssl $ sudo systemctl restart nginx
Apache Virtual Hosts
فایلی با نام rainloop.conf در /etc/httpd/conf/sites-available/ را با محتویات زیر ایجاد کنید.
کد:
$ sudo nano /etc/httpd/conf/sites-available/rainloop.conf <VirtualHost *:80> ServerName rainloop.lan DocumentRoot "/srv/www/rainloop/" ServerAdmin you@example.com ErrorLog "/var/log/httpd/rainloop-error_log" TransferLog "/var/log/httpd/rainloop-access_log" <Directory /> Options +Indexes +FollowSymLinks +ExecCGI AllowOverride All Order deny,allow Allow from all Require all granted </Directory> </VirtualHost>
سپس فایل زیر را برای SSL با محتویات زیر ایجاد کنید.
کد:
$ sudo nano /etc/httpd/conf/sites-available/rainloop-ssl.conf
کد:
<VirtualHost *:443> ServerName rainloop.lan DocumentRoot "/srv/www/rainloop/" ServerAdmin you@example.com ErrorLog "/var/log/httpd/rainloop-ssl-error_log" TransferLog "/var/log/httpd/rainloop-ssl-access_log" SSLEngine on SSLCertificateFile "/etc/httpd/conf/ssl/rainloop.lan.crt" SSLCertificateKeyFile "/etc/httpd/conf/ssl/rainloop.lan.key" <FilesMatch "\.(cgi|shtml|phtml|php)$"> SSLOptions +StdEnvVars </FilesMatch> BrowserMatch "MSIE [2-5]" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0 CustomLog "/var/log/httpd/ssl_request_log" \ "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b" <Directory /> Options +Indexes +FollowSymLinks +ExecCGI AllowOverride All Order deny,allow Allow from all Require all granted </Directory> </VirtualHost>
کد:
$ sudo apache_gen_ssl
پس از ایجاد Ceritificate ها و کلید ها ، مسیر DocumentRoot Rainloop را اضافه کنید، سپس virtual host را فعال کرده و آپاچی را ریستارت کنید.
کد:
$ sudo mkdir -p /srv/www/rainloop $ sudo a2ensite rainloop $ sudo a2ensite rainloop-ssl $ sudo systemctl restart httpd
گام 2:اضافه کردن Extentionهای ضروری PHP
3. شما چه از وب سرور Nginx استفاده کنید و چه ازآپاچی ، نیاز به فعال کردن extentionهای PHP روی فایل php.ini خواهید داشت، همچنین مسیر DocumentRoot برای open_basedir را شامل می شود.
کد:
$ sudo nano /etc/php/php.ini
Extentionهای زیر را قرار دهید و uncomment کنید.
کد:
extension=iconv.so extension=imap.so extension=mcrypt.so extension=mssql.so extension=mysqli.so extension=openssl.so ( enables IMAPS and SMTP SSL protocols on mail servers) extension=pdo_mysql.so
کد:
open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/:/usr/share/webapps/:/etc/webapps/:/srv/www/
کد:
----------[B]On Apache Web Server[/B]---------- $ sudo systemctl restart httpd ----------[B]On Nginx Web Server[/B]---------- $ sudo systemctl restart nginx $ sudo systemctl restart php-fpm
گام 3: دانلود و نصب RainLoop Webmail
5. حالا برنامه ی Rainloop را از وب سایت آن دانلود و نصب کنید اما ابتدا wget را نصب کرده و ابزار آنرا unzip کنید.
کد:
$ sudo pacman -S unzip wget
6. آخرین پکیج سورس Rainloop را با استفاده از wget دانلود کنید.
کد:
$ wget http://repository.rainloop.net/v1/rainloop-latest.zip
7. پس از دانلود، آرشیو Rainloop را در مسیر virtual host document root، /srv/www/rainloop/ استخراج کنید.
کد:
$ sudo unzip rainloop-latest.zip -d /srv/www/rainloop/
8. سپس پرمیشن های زیر را روی مسیر پیش فرض قرار دهید.
کد:
$ sudo chmod -R 755 /srv/www/rainloop/ $ sudo chown -R http:http /srv/www/rainloop/
گام 4:پیکربندی Rainloop توسط اینترفیس وب
9. برنامه ی Rainloop از دو راه پیکربندی می شود» با استفاده از شل و با استفاده از مرورگر. اگر شما می خواهید تحت ترمینال آنرا پیکربندی کنید فایل application.ini واقع در /srv/www/rainloop/data/_data_da047852f16d2bc7352b24240a2f1599/_default_/configs/ را باز کنید.
10. برای دسترسی از مرورگر آدرس زیر را استفاده کنید.
کد PHP:
https://rainloop.lan/?admin
کد PHP:
User= admin
Password= 12345
11. پس از لاگین ابتدایی بذای تغییر پسورد پیش فرض هشدار خواهید دید.
12. اگر شما می خواهید لاگین به دیتابیس mysql را فعال کنید و دیتابیس جدیدی با دسترسی کاربر روی آن ایجاد کنید، به صورت زیر عمل کنید.
کد:
mysql -u root -p create database if not exists rainloop; create user rainloop_user@localhost identified by “password”; grant all privileges on rainloop.* to rainloop_user@localhost; flush privileges; exit;
13. به صورت پیش فرض Rainloop دامین های Gmail،Yahoo و Outlook را فراهم می کند، اما اگر می خواهید می توانید میل سرور های دیگری را اضافه کنید.
14. برای لاگین کردن بر روی میل سرور در مرورگر خود آدرس زیر را وارد کنید و اطلاعات دامین را در آن وارد کنید.
کد PHP:
https://rainloop.lan/
برای پیکربندی های بعدی لطفا داکیومنت های واقع در سایت زیر را مشاهده کنید.
کد PHP:
http://rainloop.net/docs/