This is an old revision of the document!
Pentru a vedea configurația cron a sistemului inspectăm configurațiile din fișierele/directoarele /etc/cron*. Fișierele /etc/cron.d/* și fișierul /etc/crontab conțin configurații standard cron la nivelul sistemului. Liniile de configurare urmează sintaxa crontab așa cum este exemplificată aici.
Pentru a vedea configurația pentru utilizatorul curent folosim comanda
crontab -l
Dacă suntem autentificați ca utilizator privilegiat, putem vizualiza configurația cron pentru un utilizator dat putem folosi comanda
crontab -u <username> -l
unde <username> este numele utilizatorului a cărui configurație dorim să o afișăm.
Pentru a afla job-urile cron active per utilizator putem inspecta, ca utilizator privilegiat, directorul de spooling /var/spool/cron/
sudo tree /var/spool/cron/
În subdirectorul /var/spool/cron/crontabs/ se găsesc job-urile cron active (marcate per utilizator).
Dacă dorim să avem un job care să ruleze periodic vom crea o intrare în crontab-ul utilizatorului curent.
Următorul exercițiu este didactic, ca să putem urmări comportamentul cron.
Comanda de mai jos este folosită pentru a afișa numărul de procese și thread-uri curente la nivelul sistemului:
/bin/echo "Num processes: $(ps -e --no-header | wc -l), num threads: $(ps -eL --no-header | wc -l)"
Folosim calea completă către comanda echo pentru că nu știm cum arată variabila PATH în mediul în care rulează cron.
Adăugați comanda de mai sus să ruleze la fiecare două minute prin alterarea crontab-ului utilizatorului student. După adăugare urmăriți spool-ul cron în /var/spool/cron/crontabs/student.
În urma funcționării corecte, veți primi un e-mail către utilizatorul student cu output-ul comenzii.
mail.
student urmăriți indicațiile de aici.
Actualizați comanda cron de mai sus astfel încât output-ul comenzii să nu mai fie livrat prin e-mail ci să fie adăugat într-un fișier dat. Output-ul să conțină și data la care a fost rulată comanda.
Instalați pachetul debsums. Urmăriți ce configurări de cron sunt adăugate la instalarea pachetului.
dpkg -L <nume-pachet>
</code
unde ''<nume-pachet>'' este numele pachetului.
</note>
===== Configurare serviciu cron de pornire client Bittorrent =====
Instalați un client de Bittorrent care funcționează în linia de comandă, precum ''transmission-cli'' sau ''bittorrent'' sau ''bittornado'' și porniți-l în background (folosind ''nohup'') ca să descarce un anumit conținut Bittorrent. Găsiți un fișier ''.torrrent'' pe Internet și descărcați-l.
Apoi creați un script care să verifice dacă este pornit clientul Bittorrent pentru acel fișier ''.torrent'' și dacă nu este pornit să-l repornească.
Plasați script-ul în crontab cu verificare la 10 minute.
===== Gestionare client de BitTorrent folosind supervisord =====
Folosiți [[http://supervisord.org/|supervisord]] pentru a porni și gestiona clientul BitTorrent de mai sus.
<note tip>
Urmăriți exemplele de configurare din link-urile de mai jos:
  * https://www.digitalocean.com/community/tutorials/how-to-install-and-manage-supervisor-on-ubuntu-and-debian-vps
  * https://serversforhackers.com/monitoring-processes-with-supervisord
</note>
===== Funcționarea NTP =====
===== Configurare server NTP. Sincronizare sisteme =====
===== Demo: Funcționarea dhclient =====
===== Verificare configurare server de DHCP =====
===== Configurare server de DHCP =====
/*
<note important>
Dacă un pachet nu este instalat iar un exercițiu face referire la acesta, instalați-l.
</note>
===== 1. Trimiterea și citirea e-mail-urilor local (2p) =====
  *Comenzi/concepte/fișiere
    *postfix
    *mail
    * /etc/aliases
    *newaliases
    *.forward
==== Tutorial ====
  *Verificați dacă utilitarul ''mail'' este instalat. Comanda ''mail'' (sau ''mailx'') poate fi folosită pentru transmiterea sau recepționarea de email-uri, din linia de comandă.
  *Folosiți ''mail'' pentru a trimite un mesaj din contul utilizatorului ''root'' către ''student''.
<code>
root@mjolnir:~# echo "Hello" | mail -s hello student
student (/var/mail/student).student@mjolnir:~$ ls -l /var/mail/student -rw-rw---- 1 student mail 590 Dec 14 20:45 /var/mail/student student@mjolnir:~$ cat /var/mail/student From root@mjolnir.labs.cs.pub.ro Wed Dec 14 20:45:00 2011 Return-path: <root@mjolnir.labs.cs.pub.ro> Envelope-to: student@mjolnir.labs.cs.pub.ro Delivery-date: Wed, 14 Dec 2011 20:45:00 +0200 Received: from root by mjolnir.labs.cs.pub.ro with local (Exim 4.76) (envelope-from <root@mjolnir.labs.cs.pub.ro>) id 1Ratp6-0002VY-0X for student@mjolnir.labs.cs.pub.ro; Wed, 14 Dec 2011 20:45:00 +0200 To: student@mjolnir.labs.cs.pub.ro Subject: hello Message-Id: <E1Ratp6-0002VY-0X@mjolnir.labs.cs.pub.ro> From: root <root@mjolnir.labs.cs.pub.ro> Date: Wed, 14 Dec 2011 20:45:00 +0200 Hello student@mjolnir:~$ mail Mail version 8.1.2 01/15/2001. Type ? for help. "/var/mail/student": 1 message 1 new >N 1 root@mjolnir.labs Wed Dec 14 20:43 16/590 hello & 1 Message 1: From root@mjolnir.labs.cs.pub.ro Wed Dec 14 20:43:19 2011 Envelope-to: student@mjolnir.labs.cs.pub.ro Delivery-date: Wed, 14 Dec 2011 20:43:19 +0200 To: student@mjolnir.labs.cs.pub.ro Subject: hello From: root <root@mjolnir.labs.cs.pub.ro> Date: Wed, 14 Dec 2011 20:43:19 +0200 Hello & q Saved 1 message in /home/student/mbox
==== Exerciții ====
postfix. Alegți opțiunile implicite în timpul asistentului de instalare.netstat)alice, bob și charlie pe mașina fizică (adăugați utilizatorii în grupuri omonime, creați-le directoare home și specificați /bin/bash ca shell implicit).alice, trimiteți un mail catre bob cu subiectul salutare (Hint: mail, curs slide 19)bob, verificați casuța de mesaje e-mail. Dupa aceasta operatiune, NU inchideti utilitarul mail. (Hint: mail)? - semnul întrebării - pentru un ecran de ajutor)contact care să redirecteze toate mesajele trimise pe adresa sa către utilizatorul alice. (Hint: /etc/aliases, newaliases)contact și verificați că mesajul a ajuns la alice. (Hint: mail)student să ajungă la utilizatorul bob. (Hint: ~/.forward)alice către student, având la CC pe charlie. Verificați conturile de mail ale utilizatorilor student, bob și charlie.===== 2. Configurări Postfix (2p) =====
==== Tutorial ====
==== Exerciții ====
mydestination). Mapați gsr.ro și mail.gsr.ro pe adresa ip 127.0.0.1.student către alice@gsr.ro. Verificați în contul lui alice mesajul primit de la student.myhostname să fie mail.gsr.ro.myorigin să aibă valoarea directivei myhostname. (Hint: $myhostname)alice către bob@gsr.ro.bob. Ce apare trecut în dreptul sursei?===== 3. Configurare Courier IMAP și Maildir (2.5p) =====
==== Tutorial ====
==== Exerciții ====
maildirmake.maildirmake. (Hint: apt-file, grep)courier. Alegeți opțiunile default din asistentul de instalare.home_mailbox = Maildir/mailbox_command =courier-imap. Instalarea lui libgamin este necesară datorită bug-ului descris aici http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=578937.netstat)alice (calea către director va trebui să fie /home/alice/Maildir/) (Hint: maildirmake)Maildir/ trebuie să fie deținut de utilizatorul alice.alice. Mesajele vor fi trimise, de asemenea, folosind MTA-ul local (localhost).Applications → Internet.alice@gsr.ro iar parola va fi cea a utilizatorului alice.gsr.roalice@gsr.ro și verificați că mesajul a ajuns în Thunderbird, în contul lui alice.===== 4. Configurare suport SASL/TLS în Postfix (3p) =====
==== Tutorial ====
==== Exerciții ====
==== 4.1 Configurați SASL pentru a autentifica utilizatorii care trimit mesaje prin Postfix (2.5p) ====
libsasl2-2, sasl2-bin și libsasl2-modules.postconf) pentru a utiliza SASL:smtpd_sasl_local_domain = smtpd_sasl_auth_enable = yes smtpd_sasl_security_options = noanonymous broken_sasl_auth_clients = yes #smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination smtpd_recipient_restrictions = permit_sasl_authenticated,reject_unauth_destination
/etc/sasl2/smtpd.conf - îl creați dacă nu există) configurați ca metodă de autentificare saslauthd:pwcheck_method: saslauthd mech_list: plain login
/var/spool/postfix/var/run/saslauthd. Creați toate componentele căii, dacă acestea nu există./etc/default/saslauthd schimbați /var/run/saslauthd în /var/spool/postfix/var/run/saslauthd./etc/default/saslauthd schimbați START=no în START=yes./etc/default/saslauthd schimbați MECHANISMS=“pam” în MECHANISMS=“shadow”./etc/init.d/saslauthd)dpkg-statoverride --add root sasl 710 /var/spool/postfix/var/run/saslauthd
postfix la grupul sasl./etc/init.d/saslauthd)/etc/init.d/postfix)alice (va trebui să configurați clientul pentru a utiliza autentificarea configurată mai devreme)./home/bob/Maildir/new.==== 4.2 Configurați TLS pentru a deschide conexiuni securizate către Postfix (0.5p) ====
apt-cache)===== 5. Maildrop (1.5p) =====
==== Tutorial ====
==== Exerciții ====
maildrop.whereis maildrop)bob în Thunderbird asociat utilizatorului bob de pe stația locală. Setările sunt aceleași cu ale contului lui alice (imap STARTTLS, postfix SSL/TLS)~/.mailfilter din home-ul utilizatorului bob pentru ca:Maildir/.big.alice@gsr.ro (From: Alice alice@gsr.ro) să fie livrate în directorul Maildir/.alice.test să fie livrate în directorul Maildir/.test.big, alice și test ca subdirectoare ale Inbox în interfața Thunderbird. Consecința este crearea (folosind IMAP) a directoarelor .big, .alice și .test în Maildir/./var/log/mail.log) pentru descoperirea problemelor.===== Bonus =====
gsr-cs.ro și gsr-upb.ro și alias-urile (curs, slide 21):contact@gsr-cs.ro → aliceinfo@gsr-cs.ro → bobsales@gsr-upb.ro → aliceoffice@gsr-upb.ro → bobgsr-rules.ro./usr/local/mail/gsr-rules.ro/.dorin va avea căsuța poștală, format Maildir, în directorul /usr/local/mail/gsr-rules.ro/dorin/.*/