RoundcubeMail Kurulumu

Web üzerinden maillere ulaşabilmek için bu paketi kuruyoruz:

yum -y install roundcubemail

ISPConfig web üzerinden maillere ulaşabilmek için standart olarak squirremail adresini vhost içerisinde barındırmaktadır. Roundube için de aynı adresi kullanacağız. Bunun için aşağıdaki linkleme işlemini yapıyoruz:

ln -s /usr/share/roundcubemail /usr/share/squirrelmail

Nginx’in global alias özelliği olmadığı için her vhost için ayrı ayrı webmail adresi tanımlanmalıdır. Bu işlemin nasıl yapılacağı dökümanın sonunda anlatılmaktadır. Şimdi roundcube için gerekli olan veritabanını ve MySQL kullanıcısını oluşturuyoruz. ISPConfig kurulumundan sonra Roundcube kurulumunu yapacağız.

mysql -u root -p

> CREATE DATABASE roundcubedb;
> CREATE USER [email protected] IDENTIFIED BY 'RoundcubeSifresi';
> GRANT ALL PRIVILEGES on roundcubedb.* to [email protected];
> FLUSH PRIVILEGES;
> exit
ISPConfig 3 Kurulumu

Nginx kullanacağımız için öncelikle Apache sunucusunu durdurmamız ve nginx’i başlatmamız gerekmektedir.

systemctl stop httpd
systemctl disable httpd
systemctl restart nginx.service
systemctl enable nginx.service

Artık ISPConfig kurulumuna başlayabiliriz:

cd /root
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install/install/
php -q install.php

[...]
Select language (en,de) [en]: <---- Enter
Installation mode (standard,expert) [standard]: <---- Enter
Full qualified hostname (FQDN) of the server, eg server1.domain.tld [s100.nixarsoft.com]: s100.nixarsoft.com
MySQL server hostname [localhost]: 
MySQL server port [3306]: 
MySQL root username [root]: <---- MySQL Root şifresini giriniz
MySQL database to create [dbispconfig]: 
MySQL charset [utf8]: 
Apache and nginx detected. Select server to use for ISPConfig: (apache,nginx) [apache]: nginx

Bu bilgileri girdikten sonra SSL tanımlaması için gerekli bilgileri giriyoruz. Pure-FTP kurulumundaki SSL adımlarının aynısı burada da geçerlidir:

Country Name (2 letter code) [XX]:TR
State or Province Name (full name) []:izmir 
Locality Name (eg, city) [Default City]:izmir
Organization Name (eg, company) [Default Company Ltd]:sirketadi
Organizational Unit Name (eg, section) []:sirketadi
Common Name (eg, your name or your server's hostname) []:s100.nixarsoft.com
Email Address []:[email protected]

 

Bu aşamadan sonra ISPConfig bazı servislerin ayarlamalarını yapıp PORT bilgisini soracaktır:

ISPConfig Port [8080]: <---- ENTER
Admin password [rltkhjsaeh]: <---- ENTER
Do you want a secure (SSL) connection to the ISPConfig web interface (y,n) [y]: <---- ENTER

Country Name (2 letter code) [XX]:TR
State or Province Name (full name) []:izmir 
Locality Name (eg, city) [Default City]:izmir
Organization Name (eg, company) [Default Company Ltd]:sirketadi
Organizational Unit Name (eg, section) []:sirketadi
Common Name (eg, your name or your server's hostname) []:s100.nixarsoft.com
Email Address []:[email protected]
A challenge password []: <--- unutmayacağınız bir şifre belirleyiniz
An optional company name []: sirketadi

Bu aşamalardan sonra aşağıdaki gibi bir çıktı elde edeceğiz. En son satırda “Installation completed.” yazdıysa ISPConfig kurulumunu başarılı şekilde yapmış olacağız:

Configuring DBServer
Installing ISPConfig crontab
Installing ISPConfig crontab
no crontab for root
no crontab for getmail
Detect IP addresses
Restarting services ...
Failed to reload php-fpm.service: Unit not found.
Installation completed.

Artık ISPConfig panelimize girebiliriz.

LetsEncrypt İle Valid SSL Oluşturmak

LetsEncrypt ücretsiz SSL oluşturmak için kullanılmaktadır. ISPConfig ve Nginx ile entegre şekilde çalışabilmektedir.

yum -y install certbot python2-certbot-nginx

Paketleri kurduktan sonra certbot komutunu bir kez çalıştırıyoruz. Enter ‘c’ to cancel yazan satır geldiğinde “c” tuşuna basıp enter tuşuna basıyoruz. Ardından crontab ayarlıyoruz ve artık domainlerimizin SSL sertifikaları otomaitk olarak yenilenecektir:

[[email protected] ~]# certbot
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator nginx, Installer nginx
Enter email address (used for urgent renewal and security notices)
(Enter 'c' to cancel): c
An e-mail address or --register-unsafely-without-email must be provided.

Ardından aşağıdaki komutu çalıştırarak her gün saat 04:00’da çalışacak şekilde cron oluşturuyoruz. Böylece hergün sertifikalarımız otomatik olarak kontrol edilir ve süresi dolan sertifikalar otomatik olarak yenilenir:

echo "0 4 * * * root certbot renew >> /logs/certbot-cron.log 2>&1" >> /etc/crontab

 

 

< Önceki Döküman


0 yorum

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.