در عصر ارتباطات که احتمالا شما نیاز دارید تا از هرجایی (و نه فقط از کامپیوتر خانگی خود) به inbox خود دسترسی داشته باشید، نرم افزار server-side معروف به webmail clients این امکان را برای شما فراهم کرده است تا بتوانید از طریق یک web interface، ایمیل ها را بخوانید و ارسال کنید. Roundcube یکی از این برنامه ها است و امکانات بسیاری را (که می توانید در وب سایت project اطلاعات بیشتری در مورد آن کسب کنید) ارائه می کند. این برنامه ای است که ما برای استفاده در این آموزش، انتخاب کرده ایم.
همچنین توصیه میشود مطالعه کنید.
Part 1 : نصب و راه اندازی میل سرور Postfix و Dovecot به همراه دیتابیس MariaDB
Part 2 : آموزش تنظیمات Postfix و Dovecot به همراه Virtual Domain Users در Linux
Part 3 : نحوه افزودن Antivirus و Spam Protection به میل سرور Postfix با استفاده از ClamAV و SpamAssassin
Part 4 : نحوه نصب و راه اندازی RoundCube (کلاینت وب میل) با Virtual Users در Postfix
نصب Roundcube Webmail برای Postfix
در CentOS 7 و توزیع های اصلی مانند RHEL و Fedora، نصب Roundcube به آسانی دستور زیر است:
توجه: لطفا به خاطر داشته باشید که Roundcube در مخزن EPEL گنجانده شده است که ما باید همانطور که در بخش 1 ذکر شد، از قبل آن را enable کنیم.
در Debian 8 و مشتقات آن همچون Ubuntu و Mint، لازم است که ابتدا Jessie backports (وب) را فعال کنید:
سپس Roundcube را با دستور زیر نصب کنید:
بدون درنظر گرفتن توزیعی که استفاده می کنیم، اکنون لازم است یک دیتابیس برای ذخیره ساختار داخلی Roundcube بسازیم.
فرآیند نصب در Debian 8، انجام دادن مراحل زیر خواهد بود:
زمانی که از شما سوال می شود آیا می خواهید دیتابیس Roundcube را با استفاده از dbconfig-common کانفیگ کنید، Yes را انتخاب کنید:
mysql را به عنوان database type انتخاب کنید:
یک پسورد برای MariaDB root user وارد کنید:
و به منظور رجیستر با سرور دیتابیس یک پسورد برای roundcube انتخاب کرده و روی Ok کلیک کنید:
رمز عبوری که در مرحله قبل وارد کردید را مجددا وارد کنید:
و به زودی، شما یک دیتابیس به نام roundcube خواهید داشت و جداول به طور خودکار برای شما ایجاد می شود:
در CentOS 7، لازم است به صورت دستی یا با لاگین به phpMyAdmin و یا از طریق command line دیتابیسی را ایجاد کنید. در اینجا برای اختصار، ما از روش پیشنهادی دوم استفاده می کنیم:
سپس از MariaDB prompt خارج شوید و اسکریپت SQL زیر را اجرا کنید:
لطفا توجه داشته باشید که در Debian، شما می توانید این مراحل را به صورت دستی نیز انجام دهید. بنابراین، همانطور که قبلا هم مشاهده کردید، در صورت تمایل می توانید به جای گذاشتن نام " roundcube" به صورت اتوماتیک، دیتابیس خود را rename کنید.
کانفیگ Roundcube برای Postfix
برای شروع، باید توجه داشته باشید که از RoundCube v1.0 به بعد، تنظیمات پیکربندی تنها در یک فایل گنجانده شده است، برخلاف ورژن های قبلی که بین دو فایل تقسیم می شدند.
ابتدا جای فایل زیر را مشخص کنید و یک کپی با نام config.inc.php در همان دایرکتوری بسازید. از گزینه -p برای حفظ mode، ownership و original timestamp استفاده کنید:
سپس اطمینان حاصل کنید که Roundcube می تواند به دیتابیسی که قبلا ساختیم، دسترسی داشته باشد. در db_dsnw، یوزر و پسوردی که مجوز دسترسی به RoundCube_db را دارد جایگزین یوزر و پسورد کنید.
برای مثال، شما می توانید از همان اکانت administrative که در بخش 1 برای لاگین به phpMyAdmin استفاده می کردید و یا در صورت تمایل فقط از root استفاده کنید.
تنظیمات زیر به hostname، port ها، نوع authentication و غیره، مربوط می باشد. (این تنظیمات، گویا هستند اما شما می توانید با مطالعه comments در فایل configuration، جزئیات بیشتری را پیدا کنید):
این دو تنظیم آخر (product_name و useragent) به header در رابط وب و به email headerهایی که با پیام ها ارسال می شوند، مربوط هستند:
به منظور استفاده Roundcube از authentication کاربران مجازی برای ایمیل های ارسالی، نیاز به فعال کردن پلاگین virtuser_query (که در /usr/share/roundcubemail/plugins می توان یافت) می باشد:
به چگونگی اشاره SQL query بالا به دیتابیس EmailServer_db که ما ابتدا در بخش 1 راه اندازی کردیم، توجه کنید. این همان جایی است که اطلاعات مربوط به کاربران مجازی در آن ذخیره شده است.
در نهایت، به همین ترتیب برای آنچه در بخش 1 به منظور ایجاد دسترسی رابط وب phpMyAdmin با استفاده از یک web browser انجام دادیم، بیایید به پیکربندی فایل Roundcube / Apache نیز بپردازیم:
و خطوط زیر را در داخل تگ های نشان داده شده، قرار دهیم:
Debian 8:
Debian 7:
هرچند زیاد هم مورد نیاز نیست، اما تغییر نام مستعار دایرکتوری Roundcube به منظور محافظت خود از botهایی که roundcube/ را به عنوان یک راه شناخته شده برای نفوذ به سیستم شما هدف قرار می دهند، ایده خوبی است. با خیال راحت یک نام مستعار که متناسب با نیازهای شما است انتخاب کنید (ما در اینجا با webmail ادامه می دهیم):
تغییرات اعمال شده را ذخیره کنید، از فایل configuration خارج شوید و آپاچی را restart کنید:
اکنون می توانید یک مرورگر وب را باز کنید و آدرس https://mail.yourdomain.com/webmail را در آن وارد کنید. شما باید چیزی شبیه به تصویر زیر مشاهده کنید:
اکنون می توانید با یکی از اکانت هایی که در مقاله های قبل کانفیگ کرده بودیم لاگین کنید و با استفاده از Roundcube از هرجایی، شروع به ارسال و دریافت ایمیل نمائید!
Customizing Roundcube Webmail
خوشبختانه، رابط Roundcube نسبتا بی واسطه و کانفیگ آن آسان می باشد. در این مرحله، شما می توانید حدود 15الی30 دقیقه محیط را کانفیگ کنید و با آن آشنا شوید. برای اطلاعات بیشتر به Settings بروید:
لطفا توجه داشته باشید که تصویر بالا، ایمیل هایی که ما در این اکانت (tecmint@linuxnewz.com) دریافت کرده ایم را نشان می دهد.
شما می توانید روی Compose کلیک کنید و شروع به نوشتن ایمیل برای یک آدرس ایمیل خارجی نمائید:
سپس Send را بزنید و مقصد را چک کنید که به درستی وارد شده باشد:
تبریک می گوییم! شما با موفقیت Roundcube را برای ارسال و دریافت ایمیل، راه اندازی کردید.
در این مقاله ما نحوه راه اندازی و کانفیگ Roundcube به عنوان web client را توضیح دادیم. همانطور که رابط Roundcube بررسی شد، شما خواهید دید که چقدر استفاده از آن آسان است، همچنین که در Webmail help توصیف شده است.
همچنین توصیه میشود مطالعه کنید.
Part 1 : نصب و راه اندازی میل سرور Postfix و Dovecot به همراه دیتابیس MariaDB
Part 2 : آموزش تنظیمات Postfix و Dovecot به همراه Virtual Domain Users در Linux
Part 3 : نحوه افزودن Antivirus و Spam Protection به میل سرور Postfix با استفاده از ClamAV و SpamAssassin
Part 4 : نحوه نصب و راه اندازی RoundCube (کلاینت وب میل) با Virtual Users در Postfix
نصب Roundcube Webmail برای Postfix
در CentOS 7 و توزیع های اصلی مانند RHEL و Fedora، نصب Roundcube به آسانی دستور زیر است:
کد:
# yum update && yum install roundcubemail
در Debian 8 و مشتقات آن همچون Ubuntu و Mint، لازم است که ابتدا Jessie backports (وب) را فعال کنید:
کد:
# echo "deb http://http.debian.net/debian jessie-backports main" >> /etc/apt/sources.list
کد:
# aptitude update && aptitude install roundcube
فرآیند نصب در Debian 8، انجام دادن مراحل زیر خواهد بود:
زمانی که از شما سوال می شود آیا می خواهید دیتابیس Roundcube را با استفاده از dbconfig-common کانفیگ کنید، Yes را انتخاب کنید:
mysql را به عنوان database type انتخاب کنید:
یک پسورد برای MariaDB root user وارد کنید:
و به منظور رجیستر با سرور دیتابیس یک پسورد برای roundcube انتخاب کرده و روی Ok کلیک کنید:
رمز عبوری که در مرحله قبل وارد کردید را مجددا وارد کنید:
و به زودی، شما یک دیتابیس به نام roundcube خواهید داشت و جداول به طور خودکار برای شما ایجاد می شود:
کد:
MariaDB [(none)]> USE roundcube; MariaDB [(none)]> SHOW TABLES;
در CentOS 7، لازم است به صورت دستی یا با لاگین به phpMyAdmin و یا از طریق command line دیتابیسی را ایجاد کنید. در اینجا برای اختصار، ما از روش پیشنهادی دوم استفاده می کنیم:
کد:
# mysql -u root -p MariaDB [(none)]> CREATE DATABASE RoundCube_db;
کد:
# mysql -u root -p RoundCube_db < /usr/share/roundcubemail/SQL/mysql.initial.sql
لطفا توجه داشته باشید که در Debian، شما می توانید این مراحل را به صورت دستی نیز انجام دهید. بنابراین، همانطور که قبلا هم مشاهده کردید، در صورت تمایل می توانید به جای گذاشتن نام " roundcube" به صورت اتوماتیک، دیتابیس خود را rename کنید.
کانفیگ Roundcube برای Postfix
برای شروع، باید توجه داشته باشید که از RoundCube v1.0 به بعد، تنظیمات پیکربندی تنها در یک فایل گنجانده شده است، برخلاف ورژن های قبلی که بین دو فایل تقسیم می شدند.
ابتدا جای فایل زیر را مشخص کنید و یک کپی با نام config.inc.php در همان دایرکتوری بسازید. از گزینه -p برای حفظ mode، ownership و original timestamp استفاده کنید:
کد:
# cp -p /etc/roundcubemail/defaults.inc.php /etc/roundcubemail/config.inc.php
برای مثال، شما می توانید از همان اکانت administrative که در بخش 1 برای لاگین به phpMyAdmin استفاده می کردید و یا در صورت تمایل فقط از root استفاده کنید.
کد:
$config['db_dsnw'] = 'mysql://user:password@localhost/RoundCube_db';
کد:
config.inc.php $config['default_host'] = 'ssl://mail.linuxnewz.com'; $config['default_port'] = 143; $config['smtp_server'] = 'tls://mail.linuxnewz.com'; $config['smtp_port'] = 587; $config['smtp_user'] = '%u'; $config['smtp_pass'] = '%p'; $config['smtp_auth_type'] = 'LOGIN';
کد:
$config['product_name'] = 'Linuxnewz Webmail - Powered by Roundcube'; $config['useragent'] = 'Linuxnewz Webmail';
کد:
$config['plugins'] = array('virtuser_query'); $config['virtuser_query'] = "SELECT Email FROM EmailServer_db.Users_tbl WHERE Email = '%u'";
در نهایت، به همین ترتیب برای آنچه در بخش 1 به منظور ایجاد دسترسی رابط وب phpMyAdmin با استفاده از یک web browser انجام دادیم، بیایید به پیکربندی فایل Roundcube / Apache نیز بپردازیم:
کد:
# vi /etc/httpd/conf.d/roundcubemail.conf # CentOS 7 # nano /etc/roundcube/apache.conf # Debian 8
Debian 8:
کد:
کد:
<IfVersion >= 2.3> Require ip AAA.BBB.CCC.DDD Require all granted </IfVersion>
کد:
کد:
<IfModule mod_authz_core.c> # Apache 2.4 Require ip AAA.BBB.CCC.DDD Require all granted </IfModule>
کد:
Alias /webmail /usr/share/roundcubemail # CentOS 7 Alias /webmail /var/lib/roundcube # Debian 8
کد:
# systemctl restart httpd # CentOS 7 # systemctl restart apache2 # Debian 8
اکنون می توانید با یکی از اکانت هایی که در مقاله های قبل کانفیگ کرده بودیم لاگین کنید و با استفاده از Roundcube از هرجایی، شروع به ارسال و دریافت ایمیل نمائید!
Customizing Roundcube Webmail
خوشبختانه، رابط Roundcube نسبتا بی واسطه و کانفیگ آن آسان می باشد. در این مرحله، شما می توانید حدود 15الی30 دقیقه محیط را کانفیگ کنید و با آن آشنا شوید. برای اطلاعات بیشتر به Settings بروید:
لطفا توجه داشته باشید که تصویر بالا، ایمیل هایی که ما در این اکانت (tecmint@linuxnewz.com) دریافت کرده ایم را نشان می دهد.
شما می توانید روی Compose کلیک کنید و شروع به نوشتن ایمیل برای یک آدرس ایمیل خارجی نمائید:
سپس Send را بزنید و مقصد را چک کنید که به درستی وارد شده باشد:
تبریک می گوییم! شما با موفقیت Roundcube را برای ارسال و دریافت ایمیل، راه اندازی کردید.
در این مقاله ما نحوه راه اندازی و کانفیگ Roundcube به عنوان web client را توضیح دادیم. همانطور که رابط Roundcube بررسی شد، شما خواهید دید که چقدر استفاده از آن آسان است، همچنین که در Webmail help توصیف شده است.