572
edits
Changes
→Listening on all interfaces
[[Image:email-setup-simple.png]]
Although, you will not be able to receive mail messages from outside sources (such as your Seneca email account), this lab acts as a starting point in order to run a basic email server. You are NOT required you to go into tremendous depth (just the minimum requirements). For example, we will not go over every aspect of the Postfix MTA service, but you should know what it represents and what is its main purpose, as opposed to the following: [https://en.wikipedia.org/wiki/Postfix_%28software%29#Architecture complex diagram 1] , [https://www.credativ.de/blog/postfix-architecture-overview complex diagram 2].
===Online References:===
We will be using a simple text-based '''Mail User Agent (MUA)''' called '''mailx''' in this lab to '''both send and receive''' mail messages within your '''vm2''' machine and to '''only send''' mail messages from your '''vm2''' machine to your Seneca e-mail account.
'''NOTE:''' Due to the simplicity of this mail server setup Because you're using private IP addresses and the lack of other no external DNS servers are pointing to your network, and the setup of Seneca College's mail server, you '''<u>cannot</u>''' send Seneca e-mail messages from outside your environment to your '''vm2''' machine.
=== Installing the Mail User Agent (MUA)===
#Make certain you are in your '''vm2''' machine.
#Issue the following command to install Install the '''mailx''' application (MUA):<br>'''using yum install mailx'''<br><br>
:'''NOTE:''' You can refer to the link below to acquaint yourself on how to send e-mail messages using '''mailx''' application:<br> [http://www.simplehelp.net/2008/12/01/how-to-send-email-from-the-linux-command-line/ Mail Send Command Examples]
===Sending a Mail Message from your vm2 Machine to your Seneca Email Account===
{{Admon/important|Note|These instructions no longer work reliably. You can still send email to your own email server, and look at the server logs to see that it did really get sent. But it probably won't be accepted for one of a multitude of good reasons.}}
We will now test to see if your MTA for your vm2 machine is correctly running by sending email messages from your vm2 machine to your Seneca e-mail account.
'''Perform the following Steps:'''
#Send an email message locally (i.e. only within) your vm2 machine ) by issuing the command:<br>'''mail -s "Lab4a - Local - Test1" <yourSenecaID>'''
#After you type in the body of the mail message, move to an empty line, type period "." and press the ENTER key to send the message.
#Issue Login with your '''regular user''' and issue the following command to read the mail message you send to yourself:<br>'''mail'''<br><br>'''NOTE:''' You can refer to the link below to view a reference chart on how to read and delete received e-mail messages at the mail command prompt:<br>[http://www.johnkerl.org/doc/mail-how-to.html#prompt_commands Commands to View and Manage Received e-mail Mesages]<br><br>
#Issue the following command: '''cat /var/spool/mail/<yourSenecaID>'''<br>What do you see? What does this show you in terms of where mail is stored on your e-mail server?
#If you received an e-mail message, the message and subject line should appear as a listing in your mail command.<br><br>'''NOTE:''' If you did not receive a mail message, check your mail server settings, check to see if you mail server is running and also check '''/var/log/maillog''' and '''/var/log/messages'''(this step requires '''root''' privilege).<br><br>
#Once you have received the message, type the mail message number that is displayed in your e-mail message list in the prompt and press ENTER. You should be able to confirm the message body that you sent.
#Exit the mail program by typing the letter '''q''' and press ENTER.
# Our first editing change to the Postfix configuration will be to make the service "listen" for incoming connections on the external interface (i.e '''eth0''' from the VMs point of view).<br>Change the value of the following parameter to what is displayed below:<br><source>inet_interfaces = all</source>
# We should also set the string that will end up in the '''From:''' header in messages sent by this server.<br>Change the '''mydomain''' option to YOUR domain name (shown below):<source>mydomain = yoursenecaid.ops</source>
# Also you must set the '''hostname''' for this server so that will correctly specify the hostname in the '''From:''' head header in a sent mail message.<br>Make certain the following parameter only appears once (shown below):<source>myorigin = $myhostname</source>
#Ensure that your '''hostname''' and '''DOMAIN''' name is properly set on your machine, otherwise you will need to set the '''myhostname''' parameter.
<br>
'''Depending on your professor you will either be asked to submit the lab in class, or online. Follow the appropriate set of instructions below'''
===Online Submission (Peter CallaghanAhad Mammadov's Classes only)===
Follow the instructions for lab 4a on blackboard.
===In Class Submission (Murray SaulAndrew's Classes only)sections=== You may choose to:* Submit screenshots of your work on Blackboard, in which case you don't need to come to the lab.* Or come to the lab, show me your work, and talk to me about it. I want to hear what you've learned and answer any questions you have. You'll get the same grade regardless of how you choose to submit your work.
::<span style="color:green;font-size:1.5em;">✓</span>Arrange proof that you can send e-mail from your '''vm2''' machine to your '''Seneca College e-mail account''', and than you can '''send and receive e-mail messages between on your vm2 and vm3 machines'''.
::<span style="color:green;font-size:1.5em;">✓</span>Download the labcheck4a.bash checking bash shell script by issuing the command:<br><br>and run '''wget httphttps://matrixict.senecac.onsenecacollege.ca/~peterandrew.callaghansmith/files/OPS335ops335/labcheck4a.bash'''<br><br>set execute permission and run the shell script on your '''host''' machine. ::*For '''Peter's classes''', follow his Online Submission instructions in Moodle.::*For '''Murray's classes''', run command (piping to the '''more''' command) on both VM2 and VM3 and show output to instructor.
::<span style="color:green;font-size:1.5em;">✓</span>Completed Lab4a log-book notes.