Vidarebefodra "You have mail"-indikation till gmail?

Trädvy Permalänk
Medlem
Registrerad
Jun 2006

Vidarebefodra "You have mail"-indikation till gmail?

Hej!

Varje gång man logga in på sin server så ser man "You have mail." Man kollar detta genom att skriva "mail" så ser man felmeddelanden och annat. Jag skulle vilja ha detta vidarebefordrat till min gmail. Finns det något enkelt sätt att göra detta? Kör Ubuntu server 16.04.

Skulle gärna vilja kunna inaktivera vissa saker som skickas till /var/mail/"filen". Till exempel cron job som utförs en gång per dag. Vill bara få error meddelanden men inga underhållsmeddelanden.

Nån som vet eller kan länka till någon bra guide? Jag verkar kass på att googla märker jag...

§3.1
Trädvy Permalänk
Medlem
Plats
Strängnäs
Registrerad
Okt 2012
Skrivet av Defcon:

Hej!

Varje gång man logga in på sin server så ser man "You have mail." Man kollar detta genom att skriva "mail" så ser man felmeddelanden och annat. Jag skulle vilja ha detta vidarebefordrat till min gmail. Finns det något enkelt sätt att göra detta? Kör Ubuntu server 16.04.

Skulle gärna vilja kunna inaktivera vissa saker som skickas till /var/mail/"filen". Till exempel cron job som utförs en gång per dag. Vill bara få error meddelanden men inga underhållsmeddelanden.

Nån som vet eller kan länka till någon bra guide? Jag verkar kass på att googla märker jag...

Inte mycket till hjälp, men jag kom och tänka på den här
https://xkcd.com/1728/

Skickades från m.sweclockers.com

Chassi: FD Arc mini R2 | PSU: CM700V | MB: Asus Maximus V Gene Z77 | CPU: I5-3570K | RAM: 16GB Corsair LP | GPU: MSI Radeon RX580 Armor 8GB | SSD: Crucial MX300 750GB | Input: CM Quick Fire TK, Roccat Kone Pure Optical, Steam Controller | OS: Kubuntu 18.04 LTS & KDE Neon User Edition

Trädvy Permalänk
Medlem
Registrerad
Jun 2006
Skrivet av Lembritt:

Inte mycket till hjälp, men jag kom och tänka på den här
https://xkcd.com/1728/

Skickades från m.sweclockers.com

hehe, det där är mig i ett nötskal
Jag har använt Linux som mitt primära OS i 10-15 år men har kunskapshål stora som bermudatriangeln. Anledningen till mitt intresse för att få den här infon till min mail är för att jag nyligen fixat en ny server. Tänkte att det kanske var bra att kolla diskarnas hälsa innan jag flyttar över dem till nya servern. Upptäckte då att en av mina diskar inte var frisk. Hade jag kollat mail-meddelandet så hade jag sett det långt tidigare. Nu hade jag bara tur att den inte hade rasat totalt.

Trädvy Permalänk
Medlem
Registrerad
Dec 2002
Skrivet av Defcon:

hehe, det där är mig i ett nötskal
Jag har använt Linux som mitt primära OS i 10-15 år men har kunskapshål stora som bermudatriangeln. Anledningen till mitt intresse för att få den här infon till min mail är för att jag nyligen fixat en ny server. Tänkte att det kanske var bra att kolla diskarnas hälsa innan jag flyttar över dem till nya servern. Upptäckte då att en av mina diskar inte var frisk. Hade jag kollat mail-meddelandet så hade jag sett det långt tidigare. Nu hade jag bara tur att den inte hade rasat totalt.

Ska du skicka maila så kolla på postfix kanske? https://www.digitalocean.com/community/tutorials/how-to-insta...

Du kan ju också använda din externa mailserver, ex gmail eller dylikt för att skicka mailen.

[size="1"]*signatur raderad*, referrallänkar behöver vi inte gömma i signaturer (§8 marknadsföring)[/size] Till MOD: Ditt smartskafft, man gömmer inte något som är helt synligt!

Trädvy Permalänk
Medlem
Registrerad
Jun 2006
Skrivet av fragwolf:

Ska du skicka maila så kolla på postfix kanske? https://www.digitalocean.com/community/tutorials/how-to-insta...

Du kan ju också använda din externa mailserver, ex gmail eller dylikt för att skicka mailen.

Det jag söker är under punkt #4 i den där guiden tror jag. Får kolla i morgon när jag har mindre rom i mig

Trädvy Permalänk
Medlem
Registrerad
Jul 2005

sudo apt-get install mailutils
sudo apt-get install postfix
sudo apt-get install ssmtp

gksudo gedit /etc/ssmtp/ssmtp.conf

Citat:

root=dittanvändarnamn@gmail.com
mailhub=smtp.gmail.com:587
rewriteDomain=
hostname=smtp.gmail.com:587
UseSTARTTLS=YES
AuthUser=dittanvändarnamn_igen@gmail.com
AuthPass=dittlösenord
#FromLineOverride=YES # optional

sudo service postfix restart

Lägg in detta inuti /etc/profile

Citat:

notifications=`cat /var/mail/johndoe`
echo "$notifications" | mail -s "Notification" anyUser@anyDomain.com
echo "" > /var/mail/johndoe #rensa, om du vill

Logga in på ditt gmail konto, och aktivera mindre säkerhet genom att gå hit: https://www.google.com/settings/security/lesssecureapps

Så,
Varje gång någon loggar in så skicka mail som tillhör användaren /var/mail/johndoe till anyUser@anyDomain.com

Provade själv det, fungerade kanon, du kommer att få ett mail från användaren root i inboxen dit du vidarebefordrat till.
OBS. du kan inte ha specialtecken i ditt gmail lösenord, då kommer detta inte att fungera, av någon knäpp anledning

Trädvy Permalänk
Medlem
Registrerad
Jun 2006

Åh, tack för den fina guiden!! Ska testa detta snart. Återkommer med hur det funkar.

Trädvy Permalänk
Medlem
Registrerad
Jun 2006
Skrivet av Lexdale:

sudo apt-get install mailutils
sudo apt-get install postfix
sudo apt-get install ssmtp

gksudo gedit /etc/ssmtp/ssmtp.conf

sudo service postfix restart

Lägg in detta inuti /etc/profile

Logga in på ditt gmail konto, och aktivera mindre säkerhet genom att gå hit: https://www.google.com/settings/security/lesssecureapps

Så,
Varje gång någon loggar in så skicka mail som tillhör användaren /var/mail/johndoe till anyUser@anyDomain.com

Provade själv det, fungerade kanon, du kommer att få ett mail från användaren root i inboxen dit du vidarebefordrat till.
OBS. du kan inte ha specialtecken i ditt gmail lösenord, då kommer detta inte att fungera, av någon knäpp anledning

Har tagit lite tid då jag har installerat om servern och detta är det sista jag vill göra nu då. Efter min ominstallation av Ubuntu Server så får jag nu inga mail alls till root. antingen för att det inte finns några errors att rapportera eller att Postfix inte fungerar av någon anledning. Nu vill jag gärna ha denna funktion, och också att dessa mails skickas min egna gmail.

Tänkte köra igenom efter guide du gjorde här. Installerar jag "ssmtp" vill den avinstallera "postfix", så det funkar inte.

Kan jag på något sätt kontrollera att Postfix tar emot meddelanden från cron, eller andra program som vill skicka meddelanden till root?
Undrar också om alla cronjob, både lyckade och misslyckade per default skickas till mail?

Trädvy Permalänk
Medlem
Registrerad
Jul 2005
Skrivet av Defcon:

Har tagit lite tid då jag har installerat om servern och detta är det sista jag vill göra nu då. Efter min ominstallation av Ubuntu Server så får jag nu inga mail alls till root. antingen för att det inte finns några errors att rapportera eller att Postfix inte fungerar av någon anledning. Nu vill jag gärna ha denna funktion, och också att dessa mails skickas min egna gmail.

Tänkte köra igenom efter guide du gjorde här. Installerar jag "ssmtp" vill den avinstallera "postfix", så det funkar inte.

Kan jag på något sätt kontrollera att Postfix tar emot meddelanden från cron, eller andra program som vill skicka meddelanden till root?
Undrar också om alla cronjob, både lyckade och misslyckade per default skickas till mail?

Ledsen för sent svar, det var ett tag sen jag tittade i detta forum.

Tips är att alltid prova allting virtuellt i virtualbox innan du gör det i verkligheten är mitt tips om det är första gången du gör det. Jag brukar alltid göra så, så att jag vet att de blir "clean" och ordentligt sedan när jag applicerar det till verkligheten.

jag installerade precis en helt ny Mint 18.1 dist i virtualbox duplicerade det jag gjorde tidigare:

sudo apt-get update; sudo apt-get upgrade -y
sudo apt-get install gedit -y

sudo apt-get install mailutils -y
sudo apt-get install ssmtp -y

gksudo gedit /etc/ssmtp/ssmtp.conf

Citat:

root=dittanvändarnamn@gmail.com
mailhub=smtp.gmail.com:587
rewriteDomain=
hostname=smtp.gmail.com:587
UseSTARTTLS=YES
AuthUser=dittanvändarnamn_igen@gmail.com
AuthPass=dittlösenord #siffror och bokstäver ENDAST, inga specialtecken
#FromLineOverride=YES # optional

redo för test (ingen service restart, ingen omstart av OS heller):

echo "meddelande" | mail -s "rubrik" anyUser@anydomain.com

Fungerade utmärkt.

Nu fixa så att du kan maila användare på localhost:
sudo apt-get install postfix
echo "meddelande" | mail -s "rubrik" root@localhost
sudo -s
mail
#tryck 1 för att visa första mailet
#tryck q för att avsluta
exit #exit root

dessvärre så fick jag dock ett felmeddelande i min gmail-inbox när jag försökte att skicka till root@localhost (men mailet fram till root såklart). Ta bort felmeddelandet genom att göra en fuling där du bara lägger till filterblockering på adressen:
mailer-daemon@googlemail.com i din gmail. Smidigare lösning finns säkert, men frågan är om den är värd att lägga energi på.

Automatisering localhost-mail

Lägg in detta inuti /etc/profile

Citat:

notifications=`cat /var/mail/johndoe`
echo "$notifications" | mail -s "Notification" anyUser@anyDomain.com
echo "" > /var/mail/johndoe #rensa, om du vill

Automatisering Cron
gksudo gedit /etc/crontab

Citat:

* * * * * root bash /home/blah.sh

Detta cronjobb körs varje minut, alltid för evigt...ja..du har nog lärt dig att tillverka en automatiserad mailbomb nu om du inte gör nånting åt intervallerna, men det duger för ett experiment.

gksudo gedit /home/blah.sh

Citat:

#!/bin/bash
blablabla /home/blah.txt #replace with touch and exit-status will be 0
STATUS=`echo $?`
#echo $STATUS

if [ $STATUS != 0 ]; then #some error occured
echo $STATUS | mail -s "cron-error" anyUser@anyDomain.com

fi

sudo chmod 700 /home/blah.sh

det finns inget kommando som heter blablabla så det kommer att ge error och utmynna i att ett mail skickas nånstans, kanske till din gmail i detta fallet då.

exit status 0 : allting gick rätt till
exit status 127 : nånting gick snett (skicka mail). detta gäller alla kommandon, tror att det gäller också ifall kommandot utfördes men med vissa avvikelser också.

så detta kan du tillämpa på dina cronjobb.
--------------------------------------------------------------------
eller så går du väg B: övervaka syslog/cron aktivitet

Logga cron-aktivitet till en annan fil än /var/syslog
gksudo gedit /etc/rsyslog.d/50-default.conf

Ta bort kommenteringen:

Citat:

#cron.* /var/log/cron.log

sudo service rsyslog restart
cron-aktivitet loggas nu hit: /var/log/cron.log

sedan taila /var/log/cron.log och filtrera den på på något sätt, men de där med filtrering är absolut inte min starka sida. Och jag gillar inte att taila filer och ha en ständig aktivitet som alltid tuggar på.

Såhär har jag gjort till punkt och pricka, jag tror att jag har skrivit ned varenda steg jag tagit här och allt fungerade till 100%
jag kan inte se på rak arm att jag har gjort något annorlunda i jämförelse med det första inlägget jag skrev dock.

glöm inte att gå hit och välja less security: https://www.google.com/settings/security/lesssecureapps

btw, man får nog tänka att allt är en fil eller går att redirecta output till en fil eller variabel och sedan maila innehållet i den till gmail, ingenting är nog omöjligt.

-----------
OT:
en sak som jag ibland har extremt nytta av är att få reda på ifall det förekommit errors eller avvikelser på kommandon, istället för att ta reda på exit status så brukar jag redirecta alla errors och avvikelser till error.log såhär:

blablabla 2> errors.log

säg att du har filen installera.sh

innehållet är:

Citat:

#!/bin/bash
sudo apt-get install asdf
sudo apt-get install cowsay
sudo apt-get install gnome-paint
sudo apt-get install gimp
sudo apt-get install shotwell
#och 27 andra program

kör:

sudo bash installera.sh 2> errors.sh

så får jag reda på ifall det förekommit errors på vägen, att försöka installera asdf kommer nog att ge errors i error.log, jag har inte provat det, i övrigt så bör det inte blivit några andra errors i loggen efter att ha exekverat "installera.sh"

Trädvy Permalänk
Medlem
Registrerad
Jul 2005

korrigering:

sudo bash installera.sh 2> errors.log