Pàgines

Es mostren els missatges amb l'etiqueta de comentaris Debian. Mostrar tots els missatges
Es mostren els missatges amb l'etiqueta de comentaris Debian. Mostrar tots els missatges

diumenge, 9 de març del 2014

MTA per a enviar correu electrònic

Un MTA és una eina que permet que un ordinador enviï missatges de correu electrònic. Pot ser útil, per exemple, perquè un servidor ens enviï un missatge quan passen determinats esdeveniments, o que periòdicament, mitjançant cron, ens enviï informes d'estat del servidor, o moltíssimes altres coses.

Per a Debian i derivades, això es pot fer fàcilment amb exim4 i mutt; després d'instal·lar els dos programes, cal configurar exim4; per a fer servir un compte de gmail seria així:
$ sudo dpkg-reconfigure exim4-config

-s’envia a través d’smarthost i es rep via SMTP o fetchmail
-nom del correu del sistema: el de la màquina
-adreça IP on es vincula les connexions d’entrada de l’SMTP: 127.0.0.1 ; ::1
-d’altres destinacions per a les quals s’accepta correu: nom màquina
-ordinadors dels quals sou repetidor: en blanc
-Adreça IP o nom del servidor del «smarthost» de sortida: smtp.gmail.com::587
-Voleu amagar el nom de correu local al correu de sortida? No
-Voleu mantenir el nombre mínim de consultes de DNS possibles (marcatge sota demanda)? No
-Mètode de lliurament per al correu local: format mbox a /var/mail/
-Voleu dividir la configuració en fitxers petits? No

Després cal editar l'arxiu /etc/exim4/passwd.client afegint:

gmail-smtp.l.google.com:elteucompte@gmail.com:contrasenya
*.google.com:elteucompte@gmail.com:contrasenya
smtp.gmail.com:elteucompte@gmail.com:contrasenya

Reiniciem Exim:
$ sudo /etc/init.d/exim4 restart

I ja està.

Per a Manjaro, una solució que m'ha funcionat és msmtp; després d'instal·lar-lo, cal editar l'arxiu de configuració .msmtprc deixant-lo així*:

# Accounts will inherit settings from this section
defaults
auth on
tls on
tls_trust_file /usr/share/ca-certificates/mozilla/Thawte_Premium_Server_CA.crt

# A first gmail address
account gmail
host smtp.gmail.com
port 587
from elvostreusuari@gmail.com
user elvostreusuari@gmail.com
password la_vostra_contrasenya
tls_trust_file /etc/ssl/certs/ca-certificates.crt

# Set a default account
account default : gmail

Aquest fitxer ha de tenir permisos de lectura i escriptura només per al propietari:

$ chmod 600 ~/.msmtprc
* Cal que cada usuari que hagi d'enviar correu tingui aquest fitxer de configuració; no oblidem l'usuari root si n'ha d'enviar

Després cal afegir la línia

set sendmail=/usr/bin/msmtp

al fitxer
/etc/mail.rc

I un últim pas abans de provar que funciona: creem el fitxer, per exemple, prova.msmtp i hi posem el següent:

To: maildestí@domini.cat
From: mailorigen@domini.cat
Subject: prova

Manjaro rulez!

El desem i ja podem fer la prova:
$ cat prova.msmtp | msmtp -a default maildesti@domini.cat
Un cop feta la comprovació, ja podem configurar el cron perquè comenci a enviar correu com un boig :-)

dissabte, 18 de maig del 2013

Programar l'aturada, suspensió i reengegada de l'ordinador

Programar l'aturada en debian o derivades és fàcil:

$ sudo shutdown -h 30
[sudo] password for tomi:

Broadcast message from root@eee-lmde (pts/0) (Sat May 18 21:56:39 2013):

The system is going DOWN for system halt in 30 minutes!


O bé:

$ sudo shutdown -h 23:30

També es pot programar al crontab, per exemple:

00 22 * * * sudo shutdown -h 23:55


Però si el que es vol és programar la suspensió, la cosa ja no és tan obvia. Com que m'ha costat una estona trobar-ho -fins que he fet cap aquí- ho deixo en aquesta xuleta i potser li serveix a algú. És així de fàcil, per exemple, per a programar la suspensió en 10 minuts:

$ sudo sleep 600s; sudo pm-suspend

Òbviament també es pot posar al crontab, en un script que es pot cridar amb una combinació de tecles...
I una altra cosa que es pot fer: suspendre l'ordinador i fer que es desperti en un temps programat, per exemple, al cap de 10 minuts:

$ sudo rtcwake -m mem -s 600

I una combinació de les dues? Fàcil:

$ sudo sleep 600; sudo rtcwake -s 600 -m mem

També es pot programar rtcwake per a una hora concreta, tal com ho expliquen aquí.

I en bonic, amb avís a l'àrea de notificació (requereix el paquet libnotify-bin):

$ sudo sleep 5; export DISPLAY=:0.0; notify-send "ojuT" "que em suspenc"; sleep 7; sudo rtcwake -s30 -m mem

Actualització 18/09/2013:

Em vaig adonar que amb Manjaro l'invent de programar la suspensió no funcionava amb $ sudo sleep 600s; sudo pm-suspend,-segurament per un tema de diferent timeout de la contrasenya del sudo, ja que amb temps més curts sí que funciona- però de seguida algú es va preguntar com fer-ho als fòrums de Manjaro, i aquesta és la solució amb una joguina nova: at:

You can do with an at job.  You'll need to install and start the at service
Code:
sudo pacman -S at
sudo systemctl enable atd.service
sudo systemctl start atd.service

To use at you start by entering the at command followed by the time you want it to run, this opens the at dialogue (at>) where you enter the commands or script you want to run. Pressing ctrl+d tells at that you are done entering commands.

To put the computer to sleep at a specific time, say 11:30 PM enter
Code:
sudo at 23:30
at> pm-suspend 
at> ctrl+d

The at command is really flexible, you can schedule a job at a specific time, midnight, now + x hours and so on.  See this link: http://content.hccfl.edu/pollock/unix/atdemo.htm