Sendmail Alias Not Working

I'm trying to send all root's mails to an external e-mailaddress, but for some reason I can't get it to work.

I've edited /etc/aliases with the following rule:

root: <myexternal@email.address>

and run newaliasses after, which would run without any errors.

I can run: echo "Testing" | mail -s "Server Testing" <myexternal@email.address>
just fine without any issue and it's being delivered correctly to my external address.

But when I run: echo "Testing" | mail -s "Server Testing" root

I (first) get a "Deferred: 451 Temporary local problem - please try again later" error and when I then run: "Sendmail -OTimeout.hoststatus=0m -q -v" to flush the mailqueue it says everything is ok, but I then get a message saying I have new mail in /var/spool/mail/root and I don't get the mail on my external e-mailaddress.

I have no clue where to look next, hopefully you guys can point me in the right direction.

Just for completeness: I use mageia release 4 (x86_x64).


Similar Content



Sending Mail From Command Line

I searched the forums for my title and I am not finding exactly what I am looking for. I am not using a program to send mail, such as Thunderbird or whatever. I simply want to be able to send mail from my Ubuntu 14.04 DESKTOP version for logging. I use a program called Logwatch (used alot in RHEL or CentOS) to monitor the server itself. The program sends mail to the root user account on the machine, which I can check and see, and within the program conf file, I can add an external email address, but it never sends.

I'm familiar with the SMTP concept of sending mail, outgoing mail server authentication, etc. I don't care to run this box as an SMTP server, but I understand that I need some sort of SMTP or MTA program to send mail into the real world. I tried Postfix but couldn't get that to work, and the Logwatch program wants to use sendmail, so I installed that but I am having the same issue. I am sure it is a step I am missing.

I also can't figure out how to get the 'mail' cmd from Terminal to work. I use this command:
Code:
mail -s "test" | /usr/sbin/mail myemail@domain.com

it follows through the subject, CC, body, but when I try to hit either . or CTRL-D, it never sends the email, in fact is does nothing.

I also tried sendmail with this command:
Code:
sendmail -v my@email.com < /dev/null

I was just trying to send a test email. It logs into my SMTP mail server, which I already configured, and it tells me to type out the mail, then end with a "." by itself on a single line. I try this and it just sits there.

I am missing SOMETHING when trying to actually send the mail. I can get it written with subject and body, connected, but it never sends and I am probably missing a / or something.

I did find and follow these instructions, but it still isn't working with sendmail. If I need to go back to Postfix, I can do that, I don't honestly care what I use, I just want some programs such as Logwatch to be able to email me.
http://stackoverflow.com/questions/1...mail-on-ubuntu

Sendmail Is Not Working

Hi all,

I am trying to configure sendmail on my OEL 6.5 running on VM.

I did below to set it :

1. # yum install m4 telnet mailx
2. # yum install sendmail sendmail-cf
3. # ps -ef | grep -v grep | grep -i sendmail
root 3805 1 0 05:58 ? 00:00:00 sendmail: accepting connections
smmsp 3815 1 0 05:58 ? 00:00:00 sendmail: Queue runner@01:00:00 for /var/spool/clientmqueue

4. # netstat -an | grep :25 | grep tcp
tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN

5. vi /etc/mail/sendmail.mc

From:
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl

To
dnl DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl

6. # m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf

7. # service sendmail restart

8. # vi /etc/mail/local-host-names
oracle.com

Now if I am sending mail from 1 user (root) to other user (oracle)

$ mail -s "Test mail from root" oracle
Hello this is the test mail
.
EOT

and checking mail log under /var/mail/oracle, its passing successfully.

But when trying to send the same from root user to my company outlook account not gtting any mail.

mail -s "Test mail from root" abc.xyz@aaaa.com (trying to send to my outlook account)

Getting below error on /var/log/maillog :

May 13 10:47:47 mydb sendmail[6306]: t4DEllUD006306: from=oracle, size=244, class=0, nrcpts=1, msgid=<201505131447.t4DEllUD006306@mydb.oracle.com>, relay=root@localhost
May 13 10:47:47 mydb sendmail[6307]: t4DEllxo006307: from=<oracle@mydb.oracle.com>, size=506, class=0, nrcpts=1, msgid=<201505131447.t4DEllUD006306@mydb.oracle.com>, proto=ESMTP, daemon=MTA, relay=localhost [127.0.0.1]
May 13 10:47:47 mydb sendmail[6306]: t4DEllUD006306: to=abc.xyz@aaaa.com, ctladdr=oracle (600/601), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30244, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (t4DEllxo006307 Message accepted for delivery)
May 13 10:47:49 mydb sendmail[6309]: STARTTLS=client, relay=mail1.nic.aaaa.com., version=TLSv1/SSLv3, verify=FAIL, cipher=AES256-SHA, bits=256/256
May 13 10:47:50 mydb sendmail[6309]: t4DEllxo006307: to=<abc.xyz@aaaa.com>, ctladdr=<oracle@mydb.oracle.com> (600/601), delay=00:00:03, xdelay=00:00:03, mailer=esmtp, pri=120506, relay=mail1.nic.aaaa.com. [192.240.6.6], dsn=2.0.0, stat=Sent (1uc8dar1s7-1 Message accepted for delivery)

Please suggest if something I missed out or any other problem

Thanks,

Sendmail Queries

Hi,

We have a sendmail gateway supported by Solaris 10.

Not sure when this had happened that mails are clogged in the queue and never send out. I have to run "sendmail -OTimeout.hoststatus=0m -q -v" manually to flush the queues.

Note that some mails are not able to deliver even I ran the command (sendmail -OTimeout.hoststatus=0m -q -v).

Any advise is appreciated. Thanks in advance.

Qmail Help

Hi All,
We have qmail server running on RHEL6.5. We have already made sure that our server is not acting as an open relay with the help of http://mxtoolbox.com/diagnostic.aspx.
But still anyone can telnet to our domain and send fake emails to anybody@ourdomain.com. For example Code:
telnet mail.ourdomain.com 25
helo mail.ourdomain.com
mail from: unknown@anyname.com
rcpt to: anyemailid@ourdomain.com
data
from: "Any Unknow name" <unknown@anyname.com>
to: "Some user Name" <anyemailid@ourdomain.com>
subject: Testing MTA with telnet

Hi,
This way anybody can fool us.

Regards,

.
quit

So can anybody pls help me to prevent this. I meant to say, we should not block port 25, instead it should verify whether or not "from email id" is exist in our domain, if it is exist then it should ask for the password also or if it is not exist then also it should not take us to next step. Because as per above example anybody can fool us as the mail is coming from outside but it is just from our domain to our domain without any authentication!!!
Expecting your kind help to block sending mails in this way.

Rsync Script Problem

Hi all,

I am trying to write a script that syncs files from source to destination. I have one centralized server that can ssh to any servers without pw. Now when I run the script, it can ssh to source server perfectly fine, but you need to enter password for destination server. Was wondering how I can clean this up before I start using case statements

Below is a sample I wrote

#!/bin/bash

#This scripts syncs shit

echo "Type in ID: "
read ID

echo "Type in Server : " #source server
read S

echo "Type in Destination Server: "
read DS

if [ $S == 9 ]; then
ssh -t "root@"$S"webserver1" "rsync -av /home/rlui/"$ID "root@"$DS"webserver2:/home/rlui/";
ssh -t "root@"$S"webserver1" "rsync -av /home/rlui/tmp/"$ID "root@sl"$DS"webserver2:/home/rlui/tmp/"
exit 1

where S and DS are cluster numbers

I apologize in advance if I am not clear on anything

Bash More Commands In One Function

hello

first year of learning linux and bash script
Now i wrote a bash script with a function.
Today i recieved a email from my teacher that 1 function only can have 1 command and no more then 1?

thats a part of the script

Code:
function tx_unreachable_msg()
{
LOGLINE="[$DATE] no ip service unreachable"
typewriter "$NOIPSERVICE niet bereikbaar" .1
sleep 1 
typewriter "Mail wordt verzonden naar $email" .1
mail -s "NO ip mail error" "$email"<<EOF
dynupdate.no-ip.com niet bereikbaar @ $DATE
EOF
}

it's part dutch part english but the point is that the first LOGLINE is forbidden in the function because i use the functie to send a mail end not to write a logline but that's a part of the command in my case?

So what does this function?
If the no ip service is unreachable then it's write to /etc/var/log/no-ip and after the sleep it's send a simpel mail to the adres in the variabele mail.

i read here at the first line:
Quote:
Shell functions are a way to group commands for later execution using a single name for the group.
so is it true that my function is wrong and so no can someone point me to a website where it's say that more commands are allow in 1 function0

grts b

Sending Mails With Port Number 587 Bash Script Help

Hi All,
We have some shell scripts which will send emails about backup, alerts etc using mail command. Example.
Code:
echo "Test Mail" | mail -s "Test" me@mydomain.com

I guess the above command just connect port number 25 of our mail server even if we do not define any port number. Now I would like add smtp port number as 587 in all of the bash scripts. I googled for this but could not get whatever I am expecting. So expecting your kind reply to define smtp port number as 587 in all of the bash scripts.

Thanks in advance.

Bash Scrip Running On Remote Server

This is my script and the syntax to run this script is give ip and next will be the file or script you want to perform on remote server



#!/bin/bash

# The private key used to identify this machine
IDENTITY_KEY=/home/adnew.pem

syntax()
{
echo "Syntax: Ec2.sh server_ip scriptFile]"
echo "For example: ./Ec2.sh server_ip scriptFile"
exit 1
}

if [ $# -ne 2 ]
then
echo not enough arguments
syntax
fi


echo "Running script $2 on $1"
ssh -ttq -i $IDENTITY_KEY ec2-user@$1 sudo -i 'bash -s' < $2
exit
exit
echo "Done"



on script file i have give for testing

touch /root/test
ls /root/test
exit
exit

it makes the file but do not show the ls output by giving error


tcgetattr: Inappropriate ioctl for device

exit


what I have to do ??

Problem With .bashrc Entry

I need to execute this .bashrc string:

alias lml='grep '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' mail.log | grep "relay=" | awk '{print $8}'' #list mail log

I have tried enclosing the string in alias as lml="..." and alias lml=`...` to no avail. The problem is apparently with the grep "relay=" in that it has to be enclosed in "", as well as the awk that has to be enclosed in ''.

Any ideas on how to get this setup? Thanks.

What Is A Good Linux Script For Changing An IP Address Statically In Ubuntu?

I have a shell script that currently changes the mac address of eth0 repeatedly. However, it does not change the public IP address, confirmed by wget -qO- ipinfo.io/ip .

PERIOD=10

while [ 1 ]
do
echo "Changing mac address..."
let lastup=`date +%s`
macchanger -A eth0
let diff=`date +%s`-$lastup
if [ "$diff" -lt "$PERIOD" ]
then
sleep $(($PERIOD-$diff))
echo "Changed mac address successfully."
echo
elif [ "$diff" -gt "$PERIOD" ]
then
echo "Command took longer than iteration period of $PERIOD seconds!"
fi
done

The script needs to change the IP Address statically.

Also, ultimately, what I am trying to accomplish, for security reasons, is to frequently and automatically change a computer's public IP address and mac address. This way, my office's computers, when using the Internet, has an additional form of protection.