Skip to main content

Secure nginx with Let's Encrypt on Ubuntu 18.04

Install Postfix and Dovecot on Redhat


Download and Install:

Check if both Postfix and Dovecot is not yet installed in your system.

# rpm –q postfix
# rpm –q dovecot


# yum install postfix
# yum install dovecot


Check if it is installed

# rpm –q system-switch-mail

If not installed, install it

# yum install system-switch-mail

And run system-switch-mail

# system-switch-mail

And select Postfix as your default MTA.


# rpm –e --nodeps sendmail

Setting up Postfix
Enough for the intro; let’s do now Postfix setup.

1. Go to /etc/postfix directory

# cd /etc/postfix

2. Copy the original main.cf to another file

# cp main.cf main.cf-bak-orig



3. Clear the existing main.cf file

# cat /dev/null > main.cf

This command will quickly clear the content of you main.cf file.

4. Edit and add the following lines to main.cf

myhostname = mail.example.com
mydomain = example.com
myorigin = $mydomain
mydestination = $myhostname localhost.$mydomain localhost $mydomain
relay_domains =
home_mailbox = Maildir/



5. Check Postfix

# postfix check

6. Reload Postfix

# postfix reload



Don’t forget to restart dovecot after you edited and saved /etc/dovecot.conf

# /etc/init.d/dovecot restart

Firewall Configuration :-
Make sure you open the SMPT (tcp/25), POP3 (tcp/110), and IMAP (tcp/143) ports in your iptables.

# vi /etc/sysconfig/iptables

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 25 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 110 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 143 -j ACCEPT

Restart iptables

# /etc/init.d/iptables restart



Just download SquirrelMail

# yum intall squirrelmail



Edit some settings in SquirrelMail

# /usr/share/squirrelmail/config/conf.pl
SquirrelMail Configuration : Read: config.php
---------------------------------------------------------
Main Menu --
1. Organization Preferences
2. Server Settings
3. Folder Defaults
4. General Options
5. Themes
6. Address Books
7. Message of the Day (MOTD)
8. Plugins
9. Database
10. Languages

D. Set pre-defined settings for specific IMAP servers

C Turn color off
S Save data
Q Quit


Start Apache

# /etc/init.d/httpd start



http://192.168.1.1/webmail


Thaks,
Vishal Vyas

Comments

  1. Hi Vishal, How are you I am navin from gorakhpur your old linux frd.you are not metioned what things to be edited in
    # /usr/share/squirrelmail/config/conf.pl

    please clear the editing.........

    ReplyDelete
    Replies
    1. Hello Navin .

      This is a Squirrelmail script .. to start this command just run and see.

      /usr/share/squirrelmail/config/conf.pl

      # run config script

      SquirrelMail Configuration : Read: config.php (1.4.0)
      ---------------------------------------------------------
      Main Menu --
      1. Organization Preferences
      2. Server Settings
      3. Folder Defaults
      4. General Options
      5. Themes
      6. Address Books
      7. Message of the Day (MOTD)
      8. Plugins
      9. Database
      10. Languages

      D. Set pre-defined settings for specific IMAP servers

      C Turn color off
      S Save data
      Q Quit

      Delete
  2. Hi Vishal.

    I am able to configure webmail.But when i am sending and receive a mail.form my mail server i am getting localhost@xyz.com..but my mail server is mail.xyz.com...i added mx,ns,A records in dns server..And i am unable to configure outlook...

    Regards,
    Prashant

    ReplyDelete
    Replies
    1. change main.cf
      mail.xyz.com to xyz.com

      u can also try this;
      http://www.vishalvyas.com/2012/08/build-full-featured-mail-server.html

      Delete
  3. This comment has been removed by a blog administrator.

    ReplyDelete

Post a Comment

Popular posts from this blog

Another instance of Certbot is already running - Solved - Linux guru

Error : Another instance of Certbot is already runningcertbot --server https://acme-v02.api.letsencrypt.org/directory --manual --preferred-challenges dns --installer nginx -d *.vishalvyas.com Another instance of Certbot is already running Reason : when you run certbot form your machine and unexpectedly stop the command, Then cert bot is not running but it left some .certbot.lock files behind.You need to kill the certbot instance form your machine. Solution : Run the below command to find killed certbot.find / -type f -name ".certbot.lock" You can see result of the command, If there are, you can remove them. Run below command to remove them.find / -type f -name ".certbot.lock" -exec rm {} \; And try again.

Install Apache Using Ansible Playbooks

Ansible is a automation tool which is widely used, you can install and install, configure and manage number of system and services remotely. you can install software and manage services and tasks without needing manually log in to each servers. you have to install ansible in one machine and use ssh to communicate host each other.



Ansible uses Playbooks which is written in YAML format. it's uses module base format. with playbook can run multiple tasks at time and provide more advance functionality, YAML file always start with "---" syntax. In this article we will see how to install and configure apahce2 using ansible YAML script. Master server : 10.80.253.11 [Ansible server, ] Slave 1 : 10.80.253.12 [need to install apache2 in slave 1] Slave 2 : 10.80.253.13 [need to install apache2 in slave 2] We need to configure slave server info in our ansible configuration file, click here to know how to add client machine to ansible. Let's update our apache2.yml file and install…

Create aws s3 bucket using cli

In this article i will explain you to how to manage s3 bucket and objects using AWS cli command line interface. for that you will have to configure AWS cli interface to your local linux machine. You can configure cli from. HERE.




After configured aws cli to your local machine, you can run all below commands. How to create bucket using AWS Cli.root@master:~# aws s3 mb s3://linuxgurubucket make_bucket: linuxgurubucket Listing Bucket : To list all bucket : root@master:~# aws s3 ls 2018-05-01 15:28:37 linuxgurubucket To list all objects from bucket :root@master:~# aws s3 ls s3://linuxgurubucket 2018-05-01 15:32:16 71515 vishal.jpg How to copy local file to s3 using aws cp command :root@master:~# aws s3 cp ansible.sh s3://linuxgurubucket/ upload: ./ansible.sh to s3://linuxgurubucket/ansible.sh To check it's upload or not :root@master:~# aws s3 ls s3://linuxgurubucket/ 2018-05-01 15:34:19 82 ansible.sh 2018-05-01 15:32:16 71515 vishal.jpg To remove file from s3 bucket using cli: