{"id":1853,"date":"2018-08-16T10:39:29","date_gmt":"2018-08-16T09:39:29","guid":{"rendered":"http:\/\/www.itayemi.com\/blog\/?p=1853"},"modified":"2020-06-18T15:48:55","modified_gmt":"2020-06-18T21:48:55","slug":"setup-roundcube-webmail-on-centos-linux","status":"publish","type":"post","link":"https:\/\/www.itayemi.com\/blog\/2018\/08\/16\/setup-roundcube-webmail-on-centos-linux\/","title":{"rendered":"Setup Roundcube Webmail on CentOS Linux"},"content":{"rendered":"<p><strong>Setup Roundcube Webmail on CentOS Linux<\/strong><br \/>&#8211; Install Centos 7<br \/>&#8211; Configure networking<br \/>&#8211; Disable selinux<br \/>&#8211; Uninstall sendmail<\/p>\n<pre>systemctl stop sendmail\nsystemctl disable sendmail\nyum remove -y sendmail<\/pre>\n<p>&#8211; Install php<\/p>\n<pre>yum install -y php<\/pre>\n<p>&#8211; Enable EPEL repository:<\/p>\n<pre>cd \/tmp\nwget wget http:\/\/dl.fedoraproject.org\/pub\/epel\/epel-release-latest-7.noarch.rpm\nrpm -ivh epel-release-latest-7.noarch.rpm<\/pre>\n<p>&#8211; Enable the REMI repository (for ImageMagick, etc):<\/p>\n<pre>cd \/tmp\nwget http:\/\/rpms.famillecollet.com\/enterprise\/remi-release-7.rpm\nrpm -ivh remi-release-7.rpm\nvi \/etc\/yum.repos.d\/remi-php54.repo (set \"enabled=1\" - because the current system has PHP version 5.4 installed. There are repo files for other PHP versions in the same directory)<\/pre>\n<p>&#8211; Add both the email domain name and the server&#8217;s FQDN as aliases to the &#8220;127.0.0.1&#8221; entry in file \/etc\/hosts<br \/>&#8211; Add another line to \/etc\/hosts for the server&#8217;s primary IP address mapping it to its short name and its FQDN<br \/># cat \/etc\/hosts<\/p>\n<pre>127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 itayemi.com myserver1.itayemi.com\n192.168.109.10 myserver1.itayemi.com myserver1<\/pre>\n<p>&#8211; Allow incoming\/outgoing connections through the firewall for apps:<\/p>\n<pre>firewall-cmd --permanent --zone=public --add-service=http\nfirewall-cmd --permanent --zone=public --add-service=https\nfirewall-cmd --permanent --zone=public --add-service=imap\nfirewall-cmd --permanent --zone=public --add-service=imaps\nfirewall-cmd --permanent --zone=public --add-service=pop3s\nfirewall-cmd --permanent --zone=public --add-service=smtp\nfirewall-cmd --permanent --zone=public --add-service=smtps\nfirewall-cmd --permanent --zone=public --add-service=dns\nfirewall-cmd --reload<\/pre>\n<p>&#8211; Configure Postfix<\/p>\n<pre>yum install -y postfix\nsystemctl enable postfix\nyum update postfix\nsystemctl start postfix\nsystemctl status postfix<\/pre>\n<p>&#8211; Configure Postfix<\/p>\n<pre>cd \/tmp\nopenssl req -x509 -nodes -newkey rsa:2048 -keyout mailserver.key -out mailserver.crt -nodes -days 730\nmkdir \/etc\/postfix\/ssl\nmv mailserver.key \/etc\/postfix\/ssl\nmv mailserver.crt \/etc\/postfix\/ssl\nchmod -R 660 \/etc\/postfix\/ssl<\/pre>\n<pre>vi \/etc\/postfix\/master.cf (uncomment the following lines)\n#submission inet n - n - - smtpd\n# -o syslog_name=postfix\/submission\n# -o smtpd_tls_security_level=encrypt\n# -o smtpd_sasl_auth_enable=yes\n# -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject\n# -o milter_macro_daemon_name=ORIGINATING<\/pre>\n<pre>vi \/etc\/postfix\/main.cf (uncomment the myhostname variable and set its value to the server's hostname)\n\nvi \/etc\/postfix\/main.cf (uncomment the mydomain variable and set it to the domain to receive emails for)\n\nvi \/etc\/postfix\/main.cf (uncomment the following lines)\n#inet_interfaces = all\n#inet_protocols = all\n#mydestination = $myhostname, localhost.$mydomain, localhost\n#home_mailbox = Maildir\/\n\nvi \/etc\/postfix\/main.cf (add the following lines to the end of the file)\nsmtpd_tls_key_file = \/etc\/postfix\/ssl\/mailserver.key\nsmtpd_tls_cert_file = \/etc\/postfix\/ssl\/mailserver.crt\nsmtpd_use_tls=yes\nsmtpd_tls_session_cache_database = btree:${data_directory}\/smtpd_scache\nsmtp_tls_session_cache_database = btree:${data_directory}\/smtp_scache\nsmtpd_tls_security_level=may<\/pre>\n<p>&#8211; Change the home_mailbox parameter for Postfix in file \/etc\/postfix\/main.cf to match the dovecot config as follows (uncomment if necessary):<\/p>\n<pre>home_mailbox = Maildir\/<\/pre>\n<p>&#8211; Add the hostname and domainname to mydestination parameter in the Postfix configuration file \/etc\/postfix\/main.cf or you will get the &#8220;mail loops back to myself&#8221; error when attempting to send to local users.<\/p>\n<pre>mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain<\/pre>\n<p>&#8211; Restart postfix:<\/p>\n<pre>systemctl restart postfix\nsystemctl status postfix<\/pre>\n<p>&#8211; Test Postfix with telnet (send a test mail to another local user then check that user&#8217;s \/home\/username\/Maildir\/new\/ directory for the mail file)<\/p>\n<pre>yum install -y telnet\ntelnet localhost 25\nquit<\/pre>\n<p>&#8211; Install and Configure Dovecot<\/p>\n<pre>yum install -y dovecot\nsystemctl enable dovecot\nsystemctl start dovecot\nsystemctl status dovecot<\/pre>\n<p>Edit config file \/etc\/dovecot\/dovecot.conf and uncomment the line below:<\/p>\n<pre>protocols = imap pop3 lmtp<\/pre>\n<p>&#8211; Edit the file \/etc\/dovecot\/conf.d\/10-auth.conf and set the following parameters (also uncomment them as well):<\/p>\n<pre>disable_plaintext_auth = no\nauth_mechanisms = plain login<\/pre>\n<p>&#8211; Edit the file \/etc\/dovecot\/conf.d\/10-master.conf and set the following section to:<\/p>\n<pre>unix_listener auth-userdb {\n#mode = 0666\nuser = postfix\ngroup = postfix\n}<\/pre>\n<p>&#8211; Set the dovecot mail_location parameter in the file \/etc\/dovecot\/conf.d\/10-mail.conf\u00a0 (Uncomment the line and change the value).<\/p>\n<pre>mail_location = maildir:~\/Maildir<\/pre>\n<p>&#8211; Configure dovecot for pop3 via the file \/etc\/dovecot\/conf.d\/20-pop3.conf (Uncomment or add the following lines):<\/p>\n<pre>pop3_uidl_format = %08Xu%08Xv\npop3_client_workarounds = outlook-no-nuls oe-ns-eoh<\/pre>\n<p>&#8211; Restart dovecot to activate all the configuration changes:<\/p>\n<pre>systemctl restart dovecot<\/pre>\n<p>&#8211; Create the Maildir folder in the skeletons folder so that future users are created with the folder automatically (manually create it for all existing users and change the ownership accordingly)<\/p>\n<pre>mkdir -p \/etc\/skel\/Maildir\/{cur,new,tmp}<\/pre>\n<p>&#8211; Install and configure fetchmail and procmail (if required)<\/p>\n<pre>yum install -y fetchmail\nyum install -y procmail\nwhich procmail<\/pre>\n<p>&#8211; Install and Configure Apache webserver<\/p>\n<pre>yum install -y httpd\nsystemctl enable httpd\nsystemctl start httpd\nsystemctl status httpd<\/pre>\n<p>&#8211; Install Roundcube<\/p>\n<pre>yum install -y mysql mariadb-server php php-common php-json php-xml php-mbstring\nsystemctl enable mariadb\nsystemctl start mariadb\nsystemctl status mariadb\nmysql -u root -p (Just press ENTER when prompted for the password)\nMariaDB [(none)]&gt; create database roundcube_db;\nMariaDB [(none)]&gt; grant all on roundcube_db.* to roundcube_user@localhost identified by 'roundcube_db_password';\nMariaDB [(none)]&gt; select user from  mysql.user;\nMariaDB [(none)]&gt; quit<\/pre>\n<p>NOTE: substitute your own username and password for &#8220;roundcube_user&#8221; and &#8220;roundcube_db_password&#8221; in the &#8220;grant&#8221; command above.<\/p>\n<pre>cd \/var\/www\/html\/\nwget https:\/\/github.com\/roundcube\/roundcubemail\/releases\/download\/1.3.7\/roundcubemail-1.3.7-complete.tar.gz\ntar -zxvf roundcubemail-1.3.7-complete.tar.gz\nmv roundcubemail-1.3.7 roundcube\nchown -R apache:apache roundcube<\/pre>\n<p>&#8211; Install various PHP extensions (that are not installed by default)<\/p>\n<pre>yum install -y php-pdo\nyum install -y php-intl\nyum install -y php-gd\nyum install -y php-pear\nyum install -y php-pecl-imagick\nyum install -y php-mysql\nyum install -y php-ldap<\/pre>\n<p>&#8211; Set your timezone in \/etc\/php.ini (e.g., add the following line to the file)<\/p>\n<pre>date.timezone=Africa\/Lagos<\/pre>\n<p>&#8211; Restart Apache webserver to detect the changes:<\/p>\n<pre>systemctl restart httpd<\/pre>\n<p>&#8211; Complete the install by using the URL http:\/\/servername-or-ip\/roundcube\/installer<br \/>&#8211; 1. Check environment &#8211; install any missing but required PHP extensions, DB, etc<br \/>&#8211; 2. Create config &#8211; make changes as required to various config options including the database parameters (name, user, user password &#8211; created earlier). At the end, click the &#8220;Create Config&#8221; button which creates and stores the config file defaults.inc.php in the roundcube config directory (\/var\/www\/html\/roundcube\/config\/). Click the &#8220;CONTINUE&#8221; button.<br \/>&#8211; 3. Test config &#8211; test that roundcube can connect login to the IMAP (dovecot) and SMTP (Postfix) servers successfully<br \/>&#8211; Click the &#8220;Initialize database&#8221; button<br \/>&#8211; Scroll down and &#8220;Test SMTP config&#8221; by supplying sender\/recipient email addresses<br \/>&#8211; Then &#8220;Test IMAP config&#8221; by supplying the username and password of a local user account<\/p>\n<p>&#8211; 4. Delete the installer directory (or move the directory outside \/var\/www\/html\/) to prevent reconfiguration and\/or unauthorized access:<\/p>\n<pre>rm -rf \/var\/www\/html\/roundcube\/installer<\/pre>\n<p>&#8211; 5. Enable Roundcube\u2019s automatic cache-cleaning (optional but recommended):<\/p>\n<pre>sudo crontab -u apache -l | { cat; echo \"18 11 * * * \/var\/www\/html\/roundcube\/bin\/cleandb.sh\"; } | sudo crontab -u apache -<\/pre>\n<p>&#8211; 6. Confirm that the parameter default_host in the Roundcube config file \/var\/www\/html\/roundcube\/config\/config.inc.php is set to the email domain name.<\/p>\n<pre>$config['default_host'] = 'itayemi.com';<\/pre>\n<p>&#8211; 7. Optional:\u00a0 there are 2 parameters in file \/etc\/php.ini that controls the maximum attachment size in a single mail:\u00a0 upload_max_filesize and\u00a0 post_max_size. I believe upload_max_filesize\u00a0 is the maximum file size of a single attached file while post_max_size is the combined maximum total of all files attached to a single mail.\u00a0 The smaller of upload_max_filesize and post_max_size takes precedence. upload_max_filesize is set to 2MB by default. You likely want to increase the value of both parameters e.g., to 10MB (means the mail will accept a single file of 10MB size or a collect of smaller files totaling 10MB max).\u00a0 To increase these values, edit file \/etc\/php.ini and increase the value of the parameters to your desired size then restart the Apache webserver:<\/p>\n<pre>upload_max_filesize = 10M<br \/>post_max_size = 10M<\/pre>\n<p>&#8211; 8. Restart Apache webserver:<\/p>\n<pre>systemctl restart httpd<\/pre>\n<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<\/p>\n<p>&#8211; Enable SSL for extra security<\/p>\n<pre>yum install mod_ssl\nmkdir \/etc\/httpd\/ssl\nopenssl req -x509 -nodes -days 1095 -newkey rsa:2048 -out \/etc\/httpd\/ssl\/server.crt -keyout \/etc\/httpd\/ssl\/server.key\nopenssl dhparam -out \/etc\/httpd\/ssl\/dhparam.pem 2048\ncat \/etc\/httpd\/ssl\/dhparam.pem | tee -a \/etc\/httpd\/ssl\/server.crt\nchmod -R 660 \/etc\/httpd\/ssl<\/pre>\n<p>&#8211; Edit mod_ssl config file \/etc\/httpd\/conf.d\/ssl.conf<br \/>vi \/etc\/httpd\/conf.d\/ssl.conf<\/p>\n<p>&#8211; Find the section that begins with &#8220;&lt;VirtualHost _default_:443&gt;&#8221; and uncomment the 2 lines below. Also change the ServerName parameter to your server&#8217;s name\/IP<br \/>DocumentRoot &#8220;\/var\/www\/html&#8221;<br \/>ServerName itayemi.com:443<\/p>\n<p>&#8211; Find the SSLProtocol and SSLCipherSuite lines and either delete them or comment them out.<\/p>\n<p>&#8211; Find the SSLCertificateFile and SSLCertificateKeyFile lines and change them to the paths to the SSL keys we created earlier:<\/p>\n<p>SSLCertificateFile \/etc\/httpd\/ssl\/server.crt<br \/>SSLCertificateKeyFile \/etc\/httpd\/ssl\/server.key<\/p>\n<p>&#8211; Edit the file \/etc\/{nginx,apache2,httpd}\/etc\/httpd\/conf.d\/ssl.conf and change X-Frame-Options to SAMEORIGIN. For example, the line \u201cHeader always set X-Frame-Options DENY\u201d becomes \u201cHeader always set X-Frame-Options SAMEORIGIN\u201d<br \/>Note that without this change sending appears to hang (spins but a refresh shows the mail in the Sent folder, AND more importantly, attempts to attach files to the mail throws an error and fails). Without this change, Roundcube will fail to upload attachments throwing &#8220;An error occurred! file upload failed!&#8221;.\u00a0 Paste in the lines below AFTER the end of the VirtualHost block &#8211; at the end of the file:<\/p>\n<pre>SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH\nSSLProtocol All -SSLv2 -SSLv3\nSSLHonorCipherOrder On\nHeader always set Strict-Transport-Security \"max-age=63072000; includeSubdomains\"\nHeader always set X-Frame-Options SAMEORIGIN\nHeader always set X-Content-Type-Options nosniff\nSSLCompression off\nSSLUseStapling on\nSSLStaplingCache \"shmcb:logs\/stapling-cache(150000)\"<\/pre>\n<p>&#8211; For additional security, redirect all traffic to be SSL encrypted. Create the file \/etc\/httpd\/conf.d\/non-ssl.conf with the content below (use your own servername or IP-address):<\/p>\n<p>vi \/etc\/httpd\/conf.d\/non-ssl.conf<\/p>\n<pre>&lt;VirtualHost *:80&gt;\n     ServerName mailserver.example.com\n     Redirect \"\/\" \"https:\/\/mailserver.example.com\/\"\n&lt;\/VirtualHost&gt;<\/pre>\n<p>&#8211; Restart Apache webserver:<br \/>systemctl restart httpd<\/p>\n<p>&#8211; Access the Rouncube email client login page at:\u00a0 https:\/\/&lt;server-ip&gt;\/roundcube\/\u00a0 or https:\/\/&lt;server-name&gt;\/roundcube\/<\/p>\n<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<\/p>\n<p>References:<br \/>https:\/\/nolabnoparty.com\/en\/setup-mail-server-postfix-dovecot-roundcube-centos\/<br \/>https:\/\/firewalld.org\/documentation\/howto\/open-a-port-or-service.html<br \/>https:\/\/firewalld.org\/documentation\/howto\/add-a-service.html<br \/>https:\/\/www.fastwebhost.in\/blog\/mysql-list-users-how-to-list-mysql-user-accounts-via-command-line\/<br \/>https:\/\/www.1and1.com\/cloud-community\/learn\/application\/e-mail\/set-up-a-postfix-mail-server-with-dovecot-and-roundcube-on-centos-7\/<br \/>https:\/\/www.howtoforge.com\/tutorial\/perfect-server-centos-7-apache-mysql-php-pureftpd-postfix-dovecot-and-ispconfig\/<br \/>https:\/\/www.tecmint.com\/how-to-enable-epel-repository-for-rhel-centos-6-5\/<br \/>https:\/\/www.vultr.com\/docs\/install-imagemagick-on-centos-6<br \/>https:\/\/tecadmin.net\/install-imagemagick-on-centos-rhel\/<br \/>https:\/\/forums.fedoraforum.org\/archive\/index.php\/t-262200.html<br \/>https:\/\/www.digitalocean.com\/community\/tutorials\/how-to-create-a-ssl-certificate-on-apache-for-centos-6<br \/>https:\/\/www.digitalocean.com\/community\/tutorials\/how-to-create-an-ssl-certificate-on-apache-for-centos-7<br \/>https:\/\/hallard.me\/enable-ssl-for-apache-server-in-5-minutes\/<br \/>https:\/\/wiki.centos.org\/HowTos\/Https<br \/>https:\/\/www.linode.com\/docs\/email\/clients\/using-fetchmail-to-retrieve-email\/https:\/\/support.rackspace.com\/how-to\/dovecot-installation-and-configuration-on-centos\/https:\/\/support.plesk.com\/hc\/en-us\/articles\/115002060625-Roundcube-Attachment-and-settings-do-not-work-File-Upload-Failed<br \/>https:\/\/support.rackspace.com\/how-to\/dovecot-installation-and-configuration-on-centos\/<\/p>\n<p>For nginx (webserver):<br \/>https:\/\/linuxize.com\/series\/setting-up-and-configuring-a-mail-server\/<br \/>https:\/\/linuxize.com\/post\/install-and-configure-roundcube-webmail\/<\/p>\n<p>OTHER USEFUL NOTES<br \/>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br \/>&#8211; Fetchmail does not seem to come with control scripts, but if you create them yourself (under \/etc\/init.d and links to \/etc\/rc.d\/rcX.d\/), systemd will pick them up<\/p>\n<p>&#8211; Sample Fetchmail config that downloads mails for 3 users (5 minutes interval) from a remote mail server (IP n.n.n.n or FQDN)<\/p>\n<pre># cat \/root\/.fetchmailrc\nset syslog\nset no bouncemail\nset no spambounce\nset daemon 300\npoll n.n.n.n\nwith proto pop3\n    username user1@mydomain.com password Password@123 is localuser1 mda \"\/bin\/procmail -d %T\"\n    username anotheruser@mydomain.com password my-Password@123 is localanotheruser mda \"\/bin\/procmail -d %T\"\n    username thirduser@mydomain.com password justaPassword is localeusername mda \"\/bin\/procmail -d %T\"<\/pre>\n<p>&#8211; Fetchmail knows to use \/root\/.fetchmailrc because it is defined in its startup script:<br \/># grep fetchmailrc \/etc\/init.d\/fetchmail<br \/>FRC=\/root\/.fetchmailrc<br \/>FRC=\/root\/.fetchmailrc<\/p>\n<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br \/>&#8211; If you use a relayhost (i.e., your mail server can&#8217;t send mails directly), uncomment and set the relayhost variable to your service provider&#8217;s SMTP server (and port e.g., 587) &#8211; especially necessary if they are blocking TCP port 25.<br \/>See link for sample steps for postfix: https:\/\/www.linode.com\/docs\/email\/postfix\/postfix-smtp-debian7\/<br \/>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br \/>The default postfix\/fetchmail\/dovecot log on CentOS\/RedHat\/Oracle_Linux is \/var\/log\/maillog (look in the file for troubleshooting)<br \/>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<\/p>\n<p>&#8211; If you have mails in \/var\/mail\/ (e.g., because you were using Sendmail before) and you want that mail to be accessible in Roundcube or other email clients such as Outlook, you may need to use the mbox format instead of the Maildir folder, i.e., change the mail_location in file \/etc\/dovecot\/conf.d\/10-mail.conf as follows.<\/p>\n<p>NOTE: If you switch to the mbox format, make sure the permission on INBOX files in \/var\/mail\/ is 0600<\/p>\n<ul>\n<li>If you would rather &#8220;migrate&#8221; the old mails in mbox format to the Maildir format (recommended for Postfix\/Dovecot), you may need to use the mb2md utility.<br \/>The mail_location in dovecot&#8217;s configuration remains as before:<br \/># grep mail_location\u00a0\u00a0\/etc\/dovecot\/conf.d\/10-mail.conf<br \/>mail_location = maildir:~\/Maildir<br \/># Install mb2md mail formatconverter utility<br \/>yum install -y mb2md-3.20-17.el7.noarch# Migrate each existing user&#8217;s old mails with the command below:<br \/>su &#8211; &lt;username&gt;<br \/>mb2md -m -d ~\/Maildir\/\n<p>\u00a0<\/p>\n<p># NOTE: I tried both dsync and doveadm for the migration but got inconsistent results &#8211; not all mails were migrated or the commands just errored out with a core dump.<\/p>\n<\/li>\n<\/ul>\n<p>Refence link: https:\/\/wiki2.dovecot.org\/Errors\/ChgrpNoPerm<\/p>\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Setup Roundcube Webmail on CentOS Linux&#8211; Install Centos 7&#8211; Configure networking&#8211; Disable selinux&#8211; Uninstall sendmail systemctl stop sendmail systemctl disable sendmail yum remove -y sendmail &#8211; Install php yum install -y php &#8211; Enable EPEL repository: cd \/tmp wget wget &hellip; <a href=\"https:\/\/www.itayemi.com\/blog\/2018\/08\/16\/setup-roundcube-webmail-on-centos-linux\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[1211,1204,1207,1205,1212,1142,1208,1206,1209,1210],"class_list":["post-1853","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-apache","tag-centos","tag-dovecot","tag-firewall-cmd","tag-imap","tag-linux","tag-openssl","tag-postfix","tag-roundcube","tag-selinux"],"_links":{"self":[{"href":"https:\/\/www.itayemi.com\/blog\/wp-json\/wp\/v2\/posts\/1853","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.itayemi.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.itayemi.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.itayemi.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.itayemi.com\/blog\/wp-json\/wp\/v2\/comments?post=1853"}],"version-history":[{"count":31,"href":"https:\/\/www.itayemi.com\/blog\/wp-json\/wp\/v2\/posts\/1853\/revisions"}],"predecessor-version":[{"id":2024,"href":"https:\/\/www.itayemi.com\/blog\/wp-json\/wp\/v2\/posts\/1853\/revisions\/2024"}],"wp:attachment":[{"href":"https:\/\/www.itayemi.com\/blog\/wp-json\/wp\/v2\/media?parent=1853"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.itayemi.com\/blog\/wp-json\/wp\/v2\/categories?post=1853"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.itayemi.com\/blog\/wp-json\/wp\/v2\/tags?post=1853"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}