Roundcube یک اسکریپت وب پست الکترونیکی رایگان و مبتنی بر وب است که با زبان PHP نوشته شده است. این اسکریپت یک کلاینت IMAP مبتنی بر وب است، بنابراین شما همچنین می توانید به سرور ایمیل خود از مرورگر وب خود دسترسی پیدا کنید. شما نیازی به خواندن و ارسال ایمیل از یک سرویس گیرنده ایمیل ندارید. در این آموزش نشان خواهیم داد خدمتتون که چگونه RoundCube را با وب سرور آپاچی نصب و با استفاده از گواهی SSL Secure در اوبونتو 18.04 LTS (Bionic ایمن نماییم.
ویژگی های RoundCube
پشتیبانی از MIME، جستجوی پیغام و بررسی املا.
ادغام دایرکتوری LDAP برای کتابهای آدرس.
پشتیبانی از چندین زبان
پشتیبانی از پوشه های مشترک / جهانی و ACL های IMAP.
طراحی شده جهت دسترسی سریعتر و راحت تر به صندوق پستی ایمیل
پشتیبانی از سرور خارجی SMTP و IDNA.
الزامات نصب
یک سرور که Ubuntu 18.04 LTS را اجرا می کند.
کاربر غیر ریشه (نیاز نیست حتما دسترسی root باشد) با امتیاز sudo
نصب LAMP سرور
قبل از شروع، شما باید فهرست package های سیستم عامل را به روز کنید و نصب کنید.
sudo apt-get update sudo apt-get upgrade
سپس Apache و MariaDB را با دستور زیر نصب کنید:
sudo apt-get install apache2 mariadb-server php7.2 php7.2-gd php-mysql php7.2-curl php7.2-zip php7.2-ldap php7.2-mbstring php-imagick php7.2-intl php7.2-xml unzip wget curl -y
پس از نصب تمام بسته ها، باید تنظیمات منطقه زمانی را در فایل php.ini تغییر دهید. شما می توانید این کار را با دستور زیر انجام دهید:
sudo nano /etc/php/7.2/apache2/php.ini
تغییرات زیر را انجام دهید:
date.timezone = Asia/Tehran
فایل را ذخیره کنید و خارج شوید، سپس سرویس Apache و MariaDB را استارت کنید و آنها را برای شروع در زمان بوت با استفاده از دستور زیر فعال کنید:
sudo systemctl start apache2 sudo systemctl enable apache2 sudo systemctl start mariadb sudo systemctl enable mariadb
دانلود Roundcube
خوب در قوم اول شما باید آخرین نسخه Roundcube را روی سیستم خود دانلود کنید. شما می توانید آن را با دستور زیر دانلود کنید:
cd /tmp wget https://github.com/roundcube/roundcubemail/releases/download/1.3.8/roundcubemail-1.3.8-complete.tar.gz
پس از اتمام دانلود، فایل دانلود شده را با فرمان زیر از حالت فشرده خارج کنید:
tar -xvzf roundcubemail-1.3.8-complete.tar.gz
بعد، دایرکتوری استخراج شده را به دایرکتوری ریشه وب آپاچی منتقل کنید:
mv roundcubemail-1.3.8 /var/www/html/roundcube
بعد، مجوزهای مناسب را به دایرکتوری roundcube بدید تا بدرستی کار کند
sudo chown -R www-data:www-data /var/www/html/roundcube sudo chmod -R 775 /var/www/html/roundcube
پیکربندی پایگاه داده
به طور پیش فرض نصب MariaDB امن نیست. بنابراین ابتدا باید آن را امن کنید. شما می توانید آن را با اجرای اسکریپت زیر این کار را انجام دهید:
mysql_secure_installation
به تمام سوالات زیر پاسخ دهید:
Change the password for root ? N Remove anonymous users? Y Disallow root login remotely? Y Remove test database and access to it? Y Reload privilege tables now? Y
هنگامی که MariaDB امن شد، با استفاده از دستور زیربه سطر فرمان MariaDB وارد شوید:
mysql -u root -p
رمز عبور ریشه خود را وارد کنید، سپس یک پایگاه داده و کاربر برای Roundcube ایجاد کنید:
MariaDB [(none)]> CREATE DATABASE roundcubedb; MariaDB [(none)]> CREATE USER 'roundcube'@'localhost' IDENTIFIED BY 'password'; MariaDB [(none)]> GRANT ALL PRIVILEGES ON roundcubedb.* to 'roundcube'@'localhost';
کلمه “password” را با یک رمز امن جایگزین کنید و این کلمه عبور را به خاطر بسپارید، بعدا برای نصب roundcube نیاز داریم. بعد، امتیازات کاربر ایجاد شده را flush نمایید و از سطر فرمان MariaDB با استفاده از دستور زیر خارج شوید:
MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> exit;
بعد، شما نیاز به وارد کردن جداول اولیه به پایگاه داده roundcubedb خواهید داشت. شما می توانید این کار را با استفاده از دستور زیر انجام دهید:
cd /var/www/html/roundcube mysql -u roundcube -p roundcubedb < SQL/mysql.initial.sql
پیکربندی و کانفیگ Apache برای Roundcube
بعد، شما باید یک فایل “virtualhost آپاچی” برای Roundcube ایجاد کنید. شما می توانید این کار را با دستور زیر انجام دهید:
sudo nano /etc/apache2/sites-available/roundcube.conf
خطوط زیر را اضافه کنید:
<VirtualHost *:80> ServerName example.com ServerAdmin admin@example.com DocumentRoot /var/www/html/roundcube ErrorLog ${APACHE_LOG_DIR}/roundcube_error.log CustomLog ${APACHE_LOG_DIR}/roundcube_access.log combined <Directory /var/www/html/roundcube> Options -Indexes AllowOverride All Order allow,deny allow from all </Directory> </VirtualHost>
عبارت “example.com” با نام دامنه خودتون جایگزین نمایید. فایل را ذخیره و ببندید، سپس فایل virtualhost را با استفاده از فرمان زیر فعال کنید:
sudo a2ensite roundcube
سپس با دستور زیر وب سرور را ریستارت میکنیم تا تغییرات اعمال شود:
sudo a2enmod rewrite sudo systemctl restart apache2
فعال کردن SSL با Let’s encrypt برای RoundCube
در این مرحله SSL را برای RoundCube با استفاده از یک “SSL Let’s Encrypt” رایگان نصب می کنیم. اولین قدم این است که “certbot” را برای کلاینت “Let’s encrypt” نصب کنیم که ما از اون برای دریافت گواهینامه SSL استفاده خواهیم کرد.
sudo apt-get install certbot python-certbot-apache
یک درخواست SSL cert با این دستور ایجاد میکنیم:
sudo certbot --apache
مهم: نام دامنه یا زیر دامنه ای که برای وب سایت RoundCube استفاده می کنید باید از طریق اینترنت برای دریافت SSL Cert دسترسی داشته باشید. Certbot چند سوال در این مورد از شما خواهد کرد. پاسخ ها را مشابه زیر وارد کنید:
root@server: certbot --apache Saving debug log to /var/log/letsencrypt/letsencrypt.log Plugins selected: Authenticator apache, Installer apache Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel): youremail@yourdomain.tld ------------------------------------------------------------------------------- Please read the Terms of Service at https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must agree in order to register with the ACME server at https://acme-v01.api.letsencrypt.org/directory ------------------------------------------------------------------------------- (A)gree/(C)ancel: a ------------------------------------------------------------------------------- Would you be willing to share your email address with the Electronic Frontier Foundation, a founding partner of the Let's Encrypt project and the non-profit organization that develops Certbot? We'd like to send you email about EFF and our work to encrypt the web, protect its users and defend digital rights. ------------------------------------------------------------------------------- (Y)es/(N)o: n Which names would you like to activate HTTPS for? ------------------------------------------------------------------------------- 1: roundcube.example.com ------------------------------------------------------------------------------- Select the appropriate numbers separated by commas and/or spaces, or leave input blank to select all options shown (Enter 'c' to cancel): 1 Obtaining a new certificate Performing the following challenges: http-01 challenge for roundcube.example.com Waiting for verification... Cleaning up challenges Created an SSL vhost at /etc/apache2/sites-available/roundcube-le-ssl.conf Enabled Apache socache_shmcb module Enabled Apache ssl module Deploying Certificate to VirtualHost /etc/apache2/sites-available/roundcube-le-ssl.conf Enabling available site: /etc/apache2/sites-available/roundcube-le-ssl.conf Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access. ------------------------------------------------------------------------------- 1: No redirect - Make no further changes to the webserver configuration. 2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for new sites, or if you're confident your site works on HTTPS. You can undo this change by editing your web server's configuration. ------------------------------------------------------------------------------- Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2 Redirecting vhost in /etc/apache2/sites-enabled/roundcube.conf to ssl vhost in /etc/apache2/sites-available/roundcube-le-ssl.conf ------------------------------------------------------------------------------- Congratulations! You have successfully enabled https://roundcube.example.com You should test your configuration at: https://www.ssllabs.com/ssltest/analyze.html?d=roundcube.example.com ------------------------------------------------------------------------------- IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/roundcube.example.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/roundcube.example.com/privkey.pem Your cert will expire on 2019-06-25. To obtain a new or tweaked version of this certificate in the future, simply run certbot again with the "certonly" option. To non-interactively renew *all* of your certificates, run "certbot renew" - Your account credentials have been saved in your Certbot configuration directory at /etc/letsencrypt. You should make a secure backup of this folder now. This configuration directory will also contain certificates and private keys obtained by Certbot so making regular backups of this folder is ideal. - If you like Certbot, please consider supporting our work by:
خوب تمام شد و الان به roundcube از طریق https در مرورگر دسترسی خواهید داشت
دسترسی به وب میل
خوب الان، مرورگر وب خود را باز کنید و URL https://example.com/installer را تایپ کنید (عبارت instance.com با نام دامنه خود در URL! جایگزین کنید). شما به صفحه زیر هدایت می شوید:
پس از تکمیل تمام الزامات، روی دکمه Next کلیک کنید. شما باید صفحه زیر را ببینید:
تنظیمات ورود و تنظیمات پایگاه داده:
در اینجا اطلاعات مربوط به پایگاه داده roundcubedb را که در مرحله راه اندازی پایگاه داده ایجاد کرده اید پر کنید.
تنظیمات SMTP و IMAP:
در اینجا، تمام جزئیات را مطابق نیاز خود وارد و انتخاب کنید و سپس بر روی دکمه CREATE CONFIG کلیک کنید. شما باید صفحه زیر را ببینید:
بعد، روی دکمه Continue کلیک کنید. شما باید صفحه زیر را ببینید:
اکنون بر روی دکمه Check login کلیک کنید. پس از اتمام نصب، پوشه / var / www / html / roundcube / installer را حذف کنید:
sudo rm -rf /var/www/html/roundcube/installer
خوب نصب و کانفیگ تمام شد و الان با استفاده از نشانی اینترنتی http: // your-ip-address یا http://your-domain.com به وب میل خود میتوانید دسترسی پیدا کنید و با استفاده از ایمیل خود وارد سیستم شوید.
در صورتیکه میخواهید یک ایمیل سرور حرفه ای راه اندازی کنید و نیاز به تخصص بیشتری دارید حتما با ما تماس بگیرید تا به بهترین نحو خدمتتون انجام دهیم
با تشکر عیسی محمدزاده
کارشناس مدیریت سرور و هاستینگ و امنیت شبکه
اشتراک گذاری مطلب
لینک کوتاه برای مطلب