Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
elearning:workbooks:lpic:12:500:l108 [2023/06/30 15:01] – admin | elearning:workbooks:lpic:12:500:l108 [2024/12/11 10:26] (Version actuelle) – admin | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
~~PDF: | ~~PDF: | ||
- | **Version** : 2023.01 | + | **Version** : 2024.01 |
Dernière mise-à-jour : ~~LASTMOD~~ | Dernière mise-à-jour : ~~LASTMOD~~ | ||
Ligne 9: | Ligne 9: | ||
=====Contenu du Module===== | =====Contenu du Module===== | ||
- | * **LCF208 - Gestion de la Journalisation** | + | * **Topic 108: Essential System Services** |
* Contenu du Module | * Contenu du Module | ||
- | * Le Serveur d' | + | |
- | * Introduction | + | * Introduction |
- | * Le fichier ntp.conf | + | * Le fichier ntp.conf |
* Gestion de la Journailisation | * Gestion de la Journailisation | ||
* Présentation | * Présentation | ||
Ligne 54: | Ligne 54: | ||
* Consultation des Journaux d'une Plage de Dates ou d' | * Consultation des Journaux d'une Plage de Dates ou d' | ||
* Consultation des Journaux en Live | * Consultation des Journaux en Live | ||
- | * Consultation des Journaux avec des Mots Clefs | + | * Consultation des Journaux avec des Mots Clefs |
+ | * Gestion d'un Serveur de Messagerie | ||
+ | * Présentation | ||
+ | * Configuration de votre Machine Virtuelle | ||
+ | * Modification du Fichier / | ||
+ | * Modification du FQDN | ||
+ | * Modification de SELinux | ||
+ | * Configurer firewalld | ||
+ | * LAB #1 - Installation de postfix, de Dovecot et de Cyrus-Imapd | ||
+ | * LAB #2 - Configuration de Base de Postfix | ||
+ | * Le fichier / | ||
+ | * La Commande postconf | ||
+ | * Le Commande sendmail de Postfix | ||
+ | * Tester la Configuration de Postfix | ||
+ | * Terminer la Configuration | ||
+ | * LAB #3 - Tester le Serveur SMTP Sortant | ||
+ | * LAB #4 - Définition des Aliases | ||
+ | * Cups | ||
+ | * Protocoles | ||
+ | * Paquets | ||
+ | * Daemon | ||
+ | * Le fichier / | ||
+ | * Filtres | ||
+ | * Backends | ||
+ | * Journaux | ||
+ | * Imprimantes | ||
+ | * Administration | ||
+ | * La Commande lpstat | ||
+ | * La Commande lpadmin | ||
+ | * Les Commandes accept et cupsenable | ||
+ | * Classe d' | ||
+ | * Le fichier / | ||
+ | * Le fichier / | ||
+ | * La Commande cancel | ||
+ | * La Commande lpmove | ||
+ | * L' | ||
=====Le Serveur d' | =====Le Serveur d' | ||
Ligne 64: | Ligne 99: | ||
Le protocole utilisé s' | Le protocole utilisé s' | ||
- | <WRAP center round important> | + | <WRAP center round important |
**Important** - La commande **ntpdate**, | **Important** - La commande **ntpdate**, | ||
</ | </ | ||
Ligne 171: | Ligne 206: | ||
</ | </ | ||
- | <WRAP center round important> | + | <WRAP center round important |
Les directives ci-dessus sont souvent suivies par deux options : **server 0.rhel.pool.ntp.org iburst dynamic**. L' | Les directives ci-dessus sont souvent suivies par deux options : **server 0.rhel.pool.ntp.org iburst dynamic**. L' | ||
</ | </ | ||
Ligne 342: | Ligne 377: | ||
La majorité des journaux du système et des applications se trouve dans le répertoire **/ | La majorité des journaux du système et des applications se trouve dans le répertoire **/ | ||
- | <WRAP center round important> | + | <WRAP center round important |
**Important** : Il est conseillé de déplacer le point de montage du répertoire **/ | **Important** : Il est conseillé de déplacer le point de montage du répertoire **/ | ||
</ | </ | ||
Ligne 987: | Ligne 1022: | ||
</ | </ | ||
- | <WRAP center round important> | + | <WRAP center round important |
**Important** : Pour plus d' | **Important** : Pour plus d' | ||
</ | </ | ||
Ligne 1112: | Ligne 1147: | ||
| SYSLOGD_OPTIONS=" | | SYSLOGD_OPTIONS=" | ||
- | <WRAP center round important> | + | <WRAP center round important |
**Important** : Notez que l' | **Important** : Notez que l' | ||
</ | </ | ||
Ligne 1307: | Ligne 1342: | ||
</ | </ | ||
- | <WRAP center round important> | + | <WRAP center round important |
**Important** : Les deux directives **$ModLoad imudp.so** et **$UDPServerRun 514** crée un ** Écouteur** sur le port UDP/514 tandis que les deux directives **$ModLoad imtcp.so** et **$InputTCPServerRun 514** crée un Écouteur sur le port TCP/514. Le port 514 est le port standard pour les Écouteurs de rsyslog. Cependant il est possible de modifier le port utilisé en modifiant la valeur dans la directive **$UDPServerRun** ou **$InputTCPServerRun**. Par exemple : **$InputTCPServerRun 1514**. | **Important** : Les deux directives **$ModLoad imudp.so** et **$UDPServerRun 514** crée un ** Écouteur** sur le port UDP/514 tandis que les deux directives **$ModLoad imtcp.so** et **$InputTCPServerRun 514** crée un Écouteur sur le port TCP/514. Le port 514 est le port standard pour les Écouteurs de rsyslog. Cependant il est possible de modifier le port utilisé en modifiant la valeur dans la directive **$UDPServerRun** ou **$InputTCPServerRun**. Par exemple : **$InputTCPServerRun 1514**. | ||
</ | </ | ||
Ligne 1335: | Ligne 1370: | ||
</ | </ | ||
- | <WRAP center round important> | + | <WRAP center round important |
**Important** : Ces directives utilisent le protocole TCP. Le serveur distant doit donc être configuré pour ce mode de communication.La directive ***.* @@remote-host: | **Important** : Ces directives utilisent le protocole TCP. Le serveur distant doit donc être configuré pour ce mode de communication.La directive ***.* @@remote-host: | ||
</ | </ | ||
Ligne 1383: | Ligne 1418: | ||
Une Action peut s' | Une Action peut s' | ||
- | <WRAP center round important> | + | <WRAP center round important |
**Important** : Une Action précédée par le signe **-** est entreprise d'une manière **asynchrone**. Dans le cas ou l' | **Important** : Une Action précédée par le signe **-** est entreprise d'une manière **asynchrone**. Dans le cas ou l' | ||
</ | </ | ||
Ligne 1500: | Ligne 1535: | ||
La deuxième partie du fichier concerne des configurations spécifiques pour certains fichiers journaux. | La deuxième partie du fichier concerne des configurations spécifiques pour certains fichiers journaux. | ||
- | <WRAP center round important> | + | <WRAP center round important |
**Important** : Notez que la compression des fichiers de journalisation n'est pas activée par défaut. | **Important** : Notez que la compression des fichiers de journalisation n'est pas activée par défaut. | ||
</ | </ | ||
Ligne 1550: | Ligne 1585: | ||
</ | </ | ||
- | <WRAP center round important> | + | <WRAP center round important |
**Important** : Journald ne peut pas envoyer les traces à un autre ordinateur. Pour utiliser un serveur de journalisation distant il faut donc inclure la directive **ForwardToSyslog=yes** dans le fichier de configuration de journald, **/ | **Important** : Journald ne peut pas envoyer les traces à un autre ordinateur. Pour utiliser un serveur de journalisation distant il faut donc inclure la directive **ForwardToSyslog=yes** dans le fichier de configuration de journald, **/ | ||
</ | </ | ||
Ligne 1592: | Ligne 1627: | ||
</ | </ | ||
- | <WRAP center round important> | + | <WRAP center round important |
**Important** : Notez que les messages importants sont en gras, par exemple les messages de niveaux **notice** ou **warning** et que les messages graves sont en rouge. | **Important** : Notez que les messages importants sont en gras, par exemple les messages de niveaux **notice** ou **warning** et que les messages graves sont en rouge. | ||
</ | </ | ||
Ligne 1609: | Ligne 1644: | ||
</ | </ | ||
- | <WRAP center round important> | + | <WRAP center round important |
**Important** : Rappelez-vous que sous RHEL/CentOS 7 le répertoire **/sbin** est un lien symbolique vers **/ | **Important** : Rappelez-vous que sous RHEL/CentOS 7 le répertoire **/sbin** est un lien symbolique vers **/ | ||
</ | </ | ||
Ligne 1651: | Ligne 1686: | ||
</ | </ | ||
- | <WRAP center round important> | + | <WRAP center round important |
**Important** : Notez que vous pouvez consulter les messages des démarrages précédents, | **Important** : Notez que vous pouvez consulter les messages des démarrages précédents, | ||
</ | </ | ||
Ligne 1731: | Ligne 1766: | ||
</ | </ | ||
- | <WRAP center round important> | + | <WRAP center round important |
**Important** : Le format de la date est **2015-09-29 18:38:00**. Il est possible d' | **Important** : Le format de la date est **2015-09-29 18:38:00**. Il est possible d' | ||
</ | </ | ||
Ligne 1781: | Ligne 1816: | ||
</ | </ | ||
- | <WRAP center round important> | + | <WRAP center round important |
**Important** : Notez la présence de la dernière ligne. | **Important** : Notez la présence de la dernière ligne. | ||
</ | </ | ||
Ligne 1817: | Ligne 1852: | ||
</ | </ | ||
- | ----- | + | =====Gestion d'un Serveur de Messagerie===== |
- | Copyright © 2023 Hugh Norris. | + | ====Présentation==== |
+ | La messagerie utilise les protocols suivants : | ||
+ | |||
+ | * **SMTP** ([[https:// | ||
+ | * **POP** ([[https:// | ||
+ | * **IMAP** ([[https:// | ||
+ | |||
+ | Lors de l' | ||
+ | |||
+ | Un serveur SMTP est appelé un **MTA** ([[https:// | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Dans un système Linux, le mail est stocké pour chaque utilisateur soit dans le répertoire **/ | ||
+ | |||
+ | Les quatre MTA les plus utilisés sous Linux sont : | ||
+ | |||
+ | * **[[http:// | ||
+ | * **[[http:// | ||
+ | * **[[http:// | ||
+ | * **[[http:// | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | **Important** - Postfix est considéré d' | ||
+ | </ | ||
+ | |||
+ | Les MDA les plus utilisés sous Linux sont : | ||
+ | |||
+ | * **[[http:// | ||
+ | * **[[http:// | ||
+ | * **[[http:// | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | **Important** - Fetchmail remplit un rôle spécifique et n'est utilisé que quand le serveur n'est pas connecté en permanence à Internet. | ||
+ | </ | ||
+ | |||
+ | Les quatre MUA les plus utilisés sous Linux sont : | ||
+ | |||
+ | * **[[http:// | ||
+ | * **[[http:// | ||
+ | * **[[http:// | ||
+ | * **[[http:// | ||
+ | |||
+ | Deux utilitaires simples permettent la lecture des spools de mail locaux en ligne de commande aussi bien que l' | ||
+ | |||
+ | * **mail**, | ||
+ | * **nail**. | ||
+ | |||
+ | La commande **nail** diffère de la commande **mail** par le fait qu' | ||
+ | |||
+ | La commande mail est souvent un lien symbolique ver la commande **mailx** : | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# ls -l /bin/mail | ||
+ | lrwxrwxrwx. 1 root root 5 Jan 14 08:17 /bin/mail -> mailx | ||
+ | </ | ||
+ | |||
+ | Les options de la commande mailx sont : | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# mailx --help | ||
+ | mailx: illegal option -- - | ||
+ | Usage: mailx -eiIUdEFntBDNHRVv~ -T FILE -u USER -h hops -r address -s SUBJECT -a FILE -q FILE -f FILE -A ACCOUNT -b USERS -c USERS -S OPTION users | ||
+ | </ | ||
+ | |||
+ | La syntaxe de la commande mailx dans le cas d'un envoie est : | ||
+ | |||
+ | < | ||
+ | mailx [-s objet ] [-c ccadresse ] [-b bccadresse ] adresse_destinataire | ||
+ | </ | ||
+ | |||
+ | Lors de la lecture du spool de mail local, la syntaxe est la suivante : | ||
+ | |||
+ | < | ||
+ | mailx [-f [ spool de mail local ] | -u nom_utilisateur ] | ||
+ | </ | ||
+ | |||
+ | Par exemple : | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# mail -s " | ||
+ | This is a test message | ||
+ | [^D] | ||
+ | EOT | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# su - trainee | ||
+ | Last login: Mon Jan 14 10:28:37 CET 2019 from 10.0.2.2 on pts/0 | ||
+ | [trainee@centos7 ~]$ mail | ||
+ | Heirloom Mail version 12.5 7/ | ||
+ | "/ | ||
+ | >N 1 root Mon Jan 14 10:30 19/ | ||
+ | & 1 | ||
+ | Message | ||
+ | From root@centos7.fenestros.loc | ||
+ | Return-Path: | ||
+ | X-Original-To: | ||
+ | Delivered-To: | ||
+ | Date: Mon, 14 Jan 2019 10:30:46 +0100 | ||
+ | To: root@centos7.fenestros.loc | ||
+ | Subject: test message | ||
+ | Cc: trainee@centos7.fenestros.loc | ||
+ | User-Agent: Heirloom mailx 12.5 7/5/10 | ||
+ | Content-Type: | ||
+ | From: root@centos7.fenestros.loc (root) | ||
+ | Status: R | ||
+ | |||
+ | This a test massage | ||
+ | |||
+ | & q | ||
+ | Held 1 message in / | ||
+ | </ | ||
+ | |||
+ | Il est aussi possible d' | ||
+ | |||
+ | < | ||
+ | [trainee@centos7 ~]$ echo fenestros > mail.txt | ||
+ | You have mail in / | ||
+ | [trainee@centos7 ~]$ mail -s "test message back" < mail.txt root | ||
+ | [trainee@centos7 ~]$ su - | ||
+ | Password: | ||
+ | Last login: Mon Jan 14 10:28:46 CET 2019 on pts/0 | ||
+ | [root@centos7 ~]# mail | ||
+ | Heirloom Mail version 12.5 7/ | ||
+ | "/ | ||
+ | >N 1 trainee@centos7.fene | ||
+ | | ||
+ | | ||
+ | | ||
+ | & q | ||
+ | Held 4 messages in / | ||
+ | </ | ||
+ | |||
+ | ====Configuration de votre Machine Virtuelle==== | ||
+ | |||
+ | ===Modification du Fichier / | ||
+ | |||
+ | Comme vous allez utiliser le nom de domaine **mail.i2tch.com** pour votre serveur postfix, modifiez votre fichier **/ | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# vi /etc/hosts | ||
+ | [root@centos7 ~]# cat /etc/hosts | ||
+ | ... | ||
+ | 10.0.2.51 mail.i2tch.com | ||
+ | </ | ||
+ | |||
+ | ===Modification du FQDN=== | ||
+ | |||
+ | Modifiez le FQDN de votre VM : | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# nmcli g hostname mail.i2tch.com | ||
+ | [root@centos7 ~]# hostname | ||
+ | mail.i2tch.com | ||
+ | </ | ||
+ | |||
+ | ===Modification de SELinux=== | ||
+ | |||
+ | < | ||
+ | [root@mail ~]# setenforce permissive | ||
+ | [root@mail ~]# vi / | ||
+ | [root@mail ~]# cat / | ||
+ | |||
+ | # This file controls the state of SELinux on the system. | ||
+ | # SELINUX= can take one of these three values: | ||
+ | # | ||
+ | # | ||
+ | # | ||
+ | SELINUX=permissive | ||
+ | # SELINUXTYPE= can take one of three two values: | ||
+ | # | ||
+ | # | ||
+ | # mls - Multi Level Security protection. | ||
+ | SELINUXTYPE=targeted | ||
+ | </ | ||
+ | |||
+ | ===Configurer firewalld=== | ||
+ | |||
+ | Pour ouvrir les ports en relation avec nos serveurs de méssagerie, | ||
+ | |||
+ | < | ||
+ | [root@mail ~]# firewall-cmd --permanent --add-port=25/ | ||
+ | [root@mail ~]# firewall-cmd --permanent --add-port=465/ | ||
+ | [root@mail ~]# firewall-cmd --permanent --add-port=587/ | ||
+ | [root@mail ~]# firewall-cmd --permanent --add-port=995/ | ||
+ | [root@mail ~]# firewall-cmd --permanent --add-port=993/ | ||
+ | [root@mail ~]# firewall-cmd --permanent --add-port=143/ | ||
+ | [root@mail ~]# firewall-cmd --permanent --add-port=110/ | ||
+ | [root@mail ~]# firewall-cmd --reload | ||
+ | </ | ||
+ | |||
+ | ==== LAB #1 - Installation de postfix, de Dovecot et de Cyrus-Imapd ==== | ||
+ | |||
+ | Installez le MTA **postfix**, | ||
+ | |||
+ | < | ||
+ | [root@mail ~]# yum install postfix procmail dovecot cyrus-imapd | ||
+ | </ | ||
+ | |||
+ | ==== LAB #2 - Configuration de Base de Postfix ==== | ||
+ | |||
+ | ===Le fichier / | ||
+ | |||
+ | Utilisez les commandes suivantes pour voir les directives actives dans le fichiers **/ | ||
+ | |||
+ | < | ||
+ | [root@mail ~]# cd /tmp ; grep -E -v ' | ||
+ | [root@mail tmp]# cat main.cf | ||
+ | </ | ||
+ | |||
+ | A l' | ||
+ | |||
+ | <file text main.cf> | ||
+ | queue_directory = / | ||
+ | command_directory = /usr/sbin | ||
+ | daemon_directory = / | ||
+ | data_directory = / | ||
+ | mail_owner = postfix | ||
+ | inet_interfaces = localhost | ||
+ | inet_protocols = all | ||
+ | mydestination = $myhostname, | ||
+ | unknown_local_recipient_reject_code = 550 | ||
+ | alias_maps = hash:/ | ||
+ | alias_database = hash:/ | ||
+ | |||
+ | | ||
+ | debug_peer_level = 2 | ||
+ | debugger_command = | ||
+ | PATH=/ | ||
+ | ddd $daemon_directory/ | ||
+ | sendmail_path = / | ||
+ | newaliases_path = / | ||
+ | mailq_path = / | ||
+ | setgid_group = postdrop | ||
+ | html_directory = no | ||
+ | manpage_directory = / | ||
+ | sample_directory = / | ||
+ | readme_directory = / | ||
+ | </ | ||
+ | |||
+ | Ce fichier comporte des directives au formats suivants : | ||
+ | |||
+ | * paramètre = valeur | ||
+ | * autre_paramètre = $paramètre | ||
+ | |||
+ | Sauvegardez votre fichier main.cf en main.old | ||
+ | |||
+ | < | ||
+ | [root@mail tmp]# cd ~ | ||
+ | [root@mail ~]# cp / | ||
+ | </ | ||
+ | |||
+ | Téléchargez le fichier main.cf suivant et placez-le dans le répertoire **/ | ||
+ | |||
+ | <file text main.cf> | ||
+ | ############# | ||
+ | myhostname = mail.i2tch.com | ||
+ | mydomain= i2tch.com | ||
+ | myorigin = $mydomain | ||
+ | mynetworks = 10.0.2.0/ | ||
+ | mydestination = $myhostname, | ||
+ | smtpd_banner = $myhostname ESMTP $mail_name ($mail_version) | ||
+ | delay_warning_time = 4h | ||
+ | recipient_delimiter = + | ||
+ | owner_request_special = no | ||
+ | inet_interfaces = all | ||
+ | unknown_local_recipient_reject_code = 450 | ||
+ | ############# | ||
+ | # relayhost = smtp.bbox.fr | ||
+ | ############# | ||
+ | mail_owner = postfix | ||
+ | setgid_group = postdrop | ||
+ | ############# | ||
+ | alias_maps = hash:/ | ||
+ | alias_database = hash:/ | ||
+ | ############ | ||
+ | debugger_command = | ||
+ | | ||
+ | xxgdb $daemon_directory/ | ||
+ | ############ | ||
+ | mailbox_command = / | ||
+ | sendmail_path = / | ||
+ | newaliases_path = / | ||
+ | mailq_path = / | ||
+ | ############ | ||
+ | mail_spool_directory = / | ||
+ | manpage_directory = / | ||
+ | sample_directory = / | ||
+ | readme_directory = / | ||
+ | queue_directory = / | ||
+ | command_directory = /usr/sbin | ||
+ | daemon_directory = / | ||
+ | </ | ||
+ | |||
+ | Les directives dans l' | ||
+ | |||
+ | ^ Directive ^ Description ^ | ||
+ | | myhostname | Le nom de machine Internet de ce système de messagerie. | | ||
+ | | mydomain | Le nom de domaine Internet du système de messagerie. | | ||
+ | | myorigin | Le domaine par défaut utilisé pour les messages postés localement. | | ||
+ | | mynetworks | La liste des clients SMTP " | ||
+ | | mydestination | Liste des domaines livrés par le transporteur de messages. | | ||
+ | | smtpd_banner | Texte qui suit le code de statut 220 dans la bannière d' | ||
+ | | delay_warning_time | Temps au delà duquel l' | ||
+ | | recipient_delimiter | Le délimiteur système de l' | ||
+ | | owner_request_special | Applique un traitement particulier aux parties locales des adresses de listes de propriétaires ou de requêtes. | | ||
+ | | inet_interfaces | Les adresses réseau par lesquelles le système de messagerie reçoit les messages. | | ||
+ | | unknown_local_recipient_reject_code | Code numérique de réponse du serveur SMTP de Postfix lorsque le destinataire n'est pas trouvé. | | ||
+ | | relayhost | La machine par défaut où livrer le courrier extérieur. | | ||
+ | | mail_owner | Le compte du système qui possède la file d' | ||
+ | | setgid_group | Le groupe propriétaire des commandes set-gid de Postfix et des répertoires en écriture pour le groupe. | | ||
+ | | alias_maps | La base de données des alias utilisée pour la livraison locale. | | ||
+ | | alias_database | La base de données des alias pour la livraison locale. | | ||
+ | | debugger_command | La commande externe à exécuter lorsqu' | ||
+ | | mailbox_command | Commande externe optionnelle que l' | ||
+ | | sendmail_path | Indique l' | ||
+ | | newaliases_path | Indique l' | ||
+ | | mailq_path | Indique où est installée la commande Postfix mailq. Cette commande peut être utilisée pour afficher la file d' | ||
+ | | mail_spool_directory | Le répertoire où les boîtes-aux-lettres locales sont stockées. | | ||
+ | | manpage_directory | Emplacement des pages de manuel de Postfix. | | ||
+ | | sample_directory | Emplacement des exemples de fichiers de configuration de Postfix. | | ||
+ | | readme_directory | Emplacement des fichiers README de Postfix. | | ||
+ | | queue_directory | Emplacement du répertoire racine de la file d' | ||
+ | | command_directory | Emplacement des commandes administratives de Postfix. | | ||
+ | | daemon_directory | Emplacement des démons Postfix. | | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | **Important** | ||
+ | </ | ||
+ | |||
+ | <WRAP center round todo 60%> | ||
+ | **A Faire** : Pour plus d' | ||
+ | </ | ||
+ | |||
+ | ===La Commande postconf=== | ||
+ | |||
+ | La commande **postconf** peut vous être très utile. Grâce à l' | ||
+ | |||
+ | < | ||
+ | [root@mail ~]# postconf -d | more | ||
+ | 2bounce_notice_recipient = postmaster | ||
+ | access_map_defer_code = 450 | ||
+ | access_map_reject_code = 554 | ||
+ | address_verify_cache_cleanup_interval = 12h | ||
+ | address_verify_default_transport = $default_transport | ||
+ | address_verify_local_transport = $local_transport | ||
+ | address_verify_map = btree: | ||
+ | address_verify_negative_cache = yes | ||
+ | address_verify_negative_expire_time = 3d | ||
+ | address_verify_negative_refresh_time = 3h | ||
+ | address_verify_poll_count = ${stress? | ||
+ | address_verify_poll_delay = 3s | ||
+ | address_verify_positive_expire_time = 31d | ||
+ | address_verify_positive_refresh_time = 7d | ||
+ | address_verify_relay_transport = $relay_transport | ||
+ | address_verify_relayhost = $relayhost | ||
+ | address_verify_sender = $double_bounce_sender | ||
+ | address_verify_sender_dependent_default_transport_maps = $sender_dependent_defau | ||
+ | lt_transport_maps | ||
+ | address_verify_sender_dependent_relayhost_maps = $sender_dependent_relayhost_map | ||
+ | --More-- | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | [root@mail ~]# postconf -n | more | ||
+ | alias_database = hash:/ | ||
+ | alias_maps = hash:/ | ||
+ | broken_sasl_auth_clients = yes | ||
+ | command_directory = /usr/sbin | ||
+ | config_directory = / | ||
+ | daemon_directory = / | ||
+ | debugger_command = PATH=/ | ||
+ | n_directory/ | ||
+ | delay_warning_time = 4h | ||
+ | inet_interfaces = all | ||
+ | mail_owner = postfix | ||
+ | mail_spool_directory = / | ||
+ | mailbox_command = / | ||
+ | mailq_path = / | ||
+ | manpage_directory = / | ||
+ | mydestination = $myhostname, | ||
+ | mydomain = i2tch.com | ||
+ | myhostname = mail.i2tch.com | ||
+ | mynetworks = 10.0.2.0/ | ||
+ | myorigin = $mydomain | ||
+ | --More-- | ||
+ | </ | ||
+ | |||
+ | ====Le Commande sendmail de Postfix==== | ||
+ | |||
+ | Les options les plus importantes de la commande sendmail de postfix sont : | ||
+ | |||
+ | < | ||
+ | -Am (ignored) | ||
+ | |||
+ | -Ac (ignored) | ||
+ | Postfix sendmail uses the same configuration file regardless | ||
+ | whether or not a message is an initial submission. | ||
+ | |||
+ | -B body_type | ||
+ | The message body MIME type: 7BIT or 8BITMIME. | ||
+ | |||
+ | | ||
+ | executing the " | ||
+ | |||
+ | -bh (ignored) | ||
+ | |||
+ | -bH (ignored) | ||
+ | Postfix has no persistent host status database. | ||
+ | |||
+ | | ||
+ | |||
+ | | ||
+ | the default mode of operation. | ||
+ | |||
+ | | ||
+ | |||
+ | | ||
+ | input, and write responses to standard output. | ||
+ | SMTP server | ||
+ | disabled by default. To enable them, run the process | ||
+ | mail_owner user. | ||
+ | |||
+ | This mode of operation is implemented by running the smtpd(8) | ||
+ | daemon. | ||
+ | |||
+ | | ||
+ | report | ||
+ | for testing address rewriting and routing configurations. | ||
+ | |||
+ | This feature is available in Postfix version 2.1 and later. | ||
+ | </ | ||
+ | |||
+ | ===Tester la Configuration de Postfix=== | ||
+ | |||
+ | Testez votre fichier de configuration avec la commande **postfix** : | ||
+ | |||
+ | < | ||
+ | [root@mail ~]# postfix check | ||
+ | [root@mail ~]# | ||
+ | </ | ||
+ | |||
+ | <WRAP center round todo 60%> | ||
+ | **A Faire** : Consultez le manuel de la commande postfix pour connaître ses options et ses arguments. | ||
+ | </ | ||
+ | |||
+ | ===Terminer la Configuration=== | ||
+ | |||
+ | Modifiez maintenant les droits sur le répertoire **/ | ||
+ | |||
+ | < | ||
+ | [root@mail ~]# chmod 1777 / | ||
+ | </ | ||
+ | |||
+ | Re-démarrez le serveur postfix : | ||
+ | |||
+ | < | ||
+ | [root@mail ~]# systemctl restart postfix | ||
+ | [root@mail ~]# systemctl status postfix | ||
+ | ● postfix.service - Postfix Mail Transport Agent | ||
+ | | ||
+ | | ||
+ | Process: 7755 ExecStop=/ | ||
+ | Process: 7768 ExecStart=/ | ||
+ | Process: 7766 ExecStartPre=/ | ||
+ | Process: 7764 ExecStartPre=/ | ||
+ | Main PID: 7840 (master) | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | Jan 14 11:46:43 mail.i2tch.com systemd[1]: Stopped Postfix Mail Transport Agent. | ||
+ | Jan 14 11:46:43 mail.i2tch.com systemd[1]: Starting Postfix Mail Transport Agent... | ||
+ | Jan 14 11:46:44 mail.i2tch.com postfix/ | ||
+ | Jan 14 11:46:44 mail.i2tch.com systemd[1]: Started Postfix Mail Transport Agent. | ||
+ | </ | ||
+ | |||
+ | Installez maintenant telnet : | ||
+ | |||
+ | < | ||
+ | [root@mail ~]# yum install telnet | ||
+ | </ | ||
+ | |||
+ | Testez maintenant le serveur smtp de postfix en envoyant un message de root à trainee : | ||
+ | |||
+ | < | ||
+ | [root@mail ~]# telnet localhost 25 | ||
+ | Trying 127.0.0.1... | ||
+ | Connected to localhost. | ||
+ | Escape character is ' | ||
+ | 220 mail.i2tch.com ESMTP Postfix (2.10.1) | ||
+ | Helo me | ||
+ | 250 mail.i2tch.com | ||
+ | MAIL from: root@i2tch.com | ||
+ | 250 2.1.0 Ok | ||
+ | RCPT to: trainee@i2tch.com | ||
+ | 250 2.1.5 Ok | ||
+ | DATA | ||
+ | 354 End data with < | ||
+ | Subject : Test email | ||
+ | Ceci est un test | ||
+ | . | ||
+ | 250 2.0.0 Ok: queued as E68953344BC3 | ||
+ | QUIT | ||
+ | 221 2.0.0 Bye | ||
+ | Connection closed by foreign host. | ||
+ | </ | ||
+ | |||
+ | Notez : | ||
+ | |||
+ | * le code **[[http:// | ||
+ | * le déroulement de la conversation : | ||
+ | * **HELO me** sert à vous identifier, | ||
+ | * **MAIL from: root@i2tch.com** indique l' | ||
+ | * **RCPT to: trainee@i2tch.com** indique le destinataire, | ||
+ | * **DATA** indique que ce qui suit est le message, | ||
+ | * le code **[[http:// | ||
+ | * le point sur une ligne vide indique la fin de la section DATA. | ||
+ | |||
+ | Consultez maintenant le fichier **/ | ||
+ | |||
+ | < | ||
+ | [root@mail ~]# tail / | ||
+ | Jan 14 11:46:43 centos7 postfix/ | ||
+ | Jan 14 11:46:44 centos7 postfix/ | ||
+ | Jan 14 11:46:44 centos7 postfix/ | ||
+ | Jan 14 11:48:46 centos7 postfix/ | ||
+ | Jan 14 11:49:13 centos7 postfix/ | ||
+ | Jan 14 11:49:42 centos7 postfix/ | ||
+ | Jan 14 11:49:42 centos7 postfix/ | ||
+ | Jan 14 11:49:42 centos7 postfix/ | ||
+ | Jan 14 11:49:42 centos7 postfix/ | ||
+ | Jan 14 11:49:51 centos7 postfix/ | ||
+ | </ | ||
+ | |||
+ | ====LAB #3 - Tester le Serveur SMTP Sortant==== | ||
+ | |||
+ | Envoyez un message en utilisant telnet à hugh.norris@hugh-norris.info avec comme **Subject: | ||
+ | |||
+ | < | ||
+ | [root@mail ~]# telnet localhost 25 | ||
+ | Trying ::1... | ||
+ | telnet: connect to address ::1: Connection refused | ||
+ | Trying 127.0.0.1... | ||
+ | Connected to localhost. | ||
+ | Escape character is ' | ||
+ | 220 mail.i2tch.com ESMTP Postfix (2.6.6) | ||
+ | HELO me | ||
+ | 250 mail.i2tch.com | ||
+ | MAIL from: root@i2tch.com | ||
+ | 250 2.1.0 Ok | ||
+ | RCPT to: hugh.norris@hugh-norris.info | ||
+ | 250 2.1.5 Ok | ||
+ | DATA | ||
+ | 354 End data with < | ||
+ | Subject : root | ||
+ | Message de Test | ||
+ | . | ||
+ | 250 2.0.0 Ok: queued as AF03C70A3 | ||
+ | QUIT | ||
+ | 221 2.0.0 Bye | ||
+ | Connection closed by foreign host. | ||
+ | </ | ||
+ | |||
+ | Consultez maintenant la fin du fichier **/ | ||
+ | |||
+ | < | ||
+ | ... | ||
+ | May 1 10:54:17 mail postfix/ | ||
+ | May 1 10:54:50 mail postfix/ | ||
+ | May 1 10:55:04 mail postfix/ | ||
+ | May 1 10:55:04 mail postfix/ | ||
+ | May 1 10:55:04 mail postfix/ | ||
+ | May 1 10:55:04 mail postfix/ | ||
+ | May 1 10:55:08 mail postfix/ | ||
+ | </ | ||
+ | |||
+ | Il est possible a tout moment de visualiser le contenu du spool de mail en utilisant la commande **mailq** qui est équivalente à la commande **sendmail bp** : | ||
+ | |||
+ | < | ||
+ | [root@mail ~]# mailq | ||
+ | Mail queue is empty | ||
+ | </ | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | **Important** : Il est également possible de visualiser le contenu d'un message en utilisant la commande **postcat -vq [message-id]**. | ||
+ | </ | ||
+ | |||
+ | ==== LAB #4 - Définition des Aliases ==== | ||
+ | |||
+ | Les deux lignes suivantes, issues du fichier **/ | ||
+ | |||
+ | < | ||
+ | ... | ||
+ | alias_maps = hash:/ | ||
+ | alias_database = hash:/ | ||
+ | ... | ||
+ | </ | ||
+ | |||
+ | Voici le contenu du fichier **/ | ||
+ | |||
+ | < | ||
+ | [root@mail ~]# cat / | ||
+ | # | ||
+ | # Aliases in this file will NOT be expanded in the header from | ||
+ | # Mail, but WILL be visible over networks or from /bin/mail. | ||
+ | # | ||
+ | # | ||
+ | # >> NOTE >> | ||
+ | # | ||
+ | # | ||
+ | |||
+ | # Basic system aliases -- these MUST be present. | ||
+ | mailer-daemon: | ||
+ | postmaster: | ||
+ | |||
+ | # General redirections for pseudo accounts. | ||
+ | bin: root | ||
+ | daemon: | ||
+ | adm: root | ||
+ | lp: root | ||
+ | sync: root | ||
+ | shutdown: | ||
+ | halt: root | ||
+ | mail: root | ||
+ | news: root | ||
+ | uucp: root | ||
+ | operator: | ||
+ | games: | ||
+ | gopher: | ||
+ | ftp: root | ||
+ | nobody: | ||
+ | radiusd: | ||
+ | nut: root | ||
+ | dbus: root | ||
+ | vcsa: root | ||
+ | canna: | ||
+ | wnn: root | ||
+ | rpm: root | ||
+ | nscd: root | ||
+ | pcap: root | ||
+ | apache: | ||
+ | webalizer: | ||
+ | dovecot: | ||
+ | fax: root | ||
+ | quagga: | ||
+ | radvd: | ||
+ | pvm: root | ||
+ | amandabackup: | ||
+ | privoxy: | ||
+ | ident: | ||
+ | named: | ||
+ | xfs: root | ||
+ | gdm: root | ||
+ | mailnull: | ||
+ | postgres: | ||
+ | sshd: root | ||
+ | smmsp: | ||
+ | postfix: | ||
+ | netdump: | ||
+ | ldap: root | ||
+ | squid: | ||
+ | ntp: root | ||
+ | mysql: | ||
+ | desktop: | ||
+ | rpcuser: | ||
+ | rpc: root | ||
+ | nfsnobody: | ||
+ | |||
+ | ingres: | ||
+ | system: | ||
+ | toor: root | ||
+ | manager: | ||
+ | dumper: | ||
+ | abuse: | ||
+ | |||
+ | newsadm: | ||
+ | newsadmin: | ||
+ | usenet: | ||
+ | ftpadm: | ||
+ | ftpadmin: | ||
+ | ftp-adm: | ||
+ | ftp-admin: | ||
+ | www: | ||
+ | webmaster: | ||
+ | noc: root | ||
+ | security: | ||
+ | hostmaster: | ||
+ | info: | ||
+ | marketing: | ||
+ | sales: | ||
+ | support: | ||
+ | |||
+ | |||
+ | # trap decode to catch security attacks | ||
+ | decode: | ||
+ | |||
+ | # Person who should get root's mail | ||
+ | # | ||
+ | </ | ||
+ | |||
+ | Il est important de spécifier un utilisateur existant qui recevra le mail de root et ceci pour des raisons légales liées à la boîte de mail **postmaster**, | ||
+ | |||
+ | Il est aussi possible de créer des aliases pour harmoniser les adresses email de l' | ||
+ | |||
+ | < | ||
+ | ... | ||
+ | prénom.nom: | ||
+ | ... | ||
+ | </ | ||
+ | |||
+ | Modifiez donc la fin de ce fichier ainsi : | ||
+ | |||
+ | < | ||
+ | [root@mail ~]# vi / | ||
+ | [root@mail ~]# tail / | ||
+ | |||
+ | |||
+ | # trap decode to catch security attacks | ||
+ | decode: | ||
+ | |||
+ | # Person who should get root's mail | ||
+ | root: | ||
+ | |||
+ | # Employee Accounts | ||
+ | mickey.mouse: | ||
+ | </ | ||
+ | |||
+ | Afin de prendre en compte la nouvelle liste d' | ||
+ | |||
+ | < | ||
+ | [root@mail ~]# newaliases | ||
+ | </ | ||
+ | |||
+ | et demander à postfix de relire ses fichiers de configuration : | ||
+ | |||
+ | < | ||
+ | [root@mail ~]# systemctl reload postfix | ||
+ | </ | ||
+ | |||
+ | En utilisant telnet, envoyez un message de **trainee** à **mickey.mouse**. Ce message arrivera dans la bôite de réception de trainee grâce à l' | ||
+ | |||
+ | < | ||
+ | [root@mail ~]# telnet localhost 25 | ||
+ | Trying 127.0.0.1... | ||
+ | Connected to localhost. | ||
+ | Escape character is ' | ||
+ | 220 mail.i2tch.com ESMTP Postfix (2.10.1) | ||
+ | HELO me | ||
+ | 250 mail.i2tch.com | ||
+ | MAIL from: trainee@i2tch.com | ||
+ | 250 2.1.0 Ok | ||
+ | RCPT to: mickey.mouse@i2tch.com | ||
+ | 250 2.1.5 Ok | ||
+ | DATA | ||
+ | 354 End data with < | ||
+ | Subject : test | ||
+ | Message de test | ||
+ | . | ||
+ | 250 2.0.0 Ok: queued as B46C23344BC3 | ||
+ | QUIT | ||
+ | 221 2.0.0 Bye | ||
+ | Connection closed by foreign host. | ||
+ | </ | ||
+ | |||
+ | Consultez maintenant le journal **/ | ||
+ | |||
+ | < | ||
+ | [root@mail ~]# tail / | ||
+ | Jan 14 11:49:51 centos7 postfix/ | ||
+ | Jan 14 12:42:34 centos7 postfix/ | ||
+ | Jan 14 12:42:34 centos7 postfix/ | ||
+ | Jan 14 12:43:08 centos7 postfix/ | ||
+ | Jan 14 12:43:41 centos7 postfix/ | ||
+ | Jan 14 12:44:09 centos7 postfix/ | ||
+ | Jan 14 12:44:09 centos7 postfix/ | ||
+ | Jan 14 12:44:09 centos7 postfix/ | ||
+ | Jan 14 12:44:09 centos7 postfix/ | ||
+ | Jan 14 12:44:12 centos7 postfix/ | ||
+ | </ | ||
+ | |||
+ | Notez la présence de la ligne suivante : | ||
+ | |||
+ | < | ||
+ | Jan 14 12:44:09 centos7 postfix/ | ||
+ | </ | ||
+ | |||
+ | Cette ligne démontre que l' | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | **Important** : Un utilisateur peut transférer son email vers un autre utilisateur du système ou bien vers une adresse email valide en inscrivant le nom ou l' | ||
+ | </ | ||
+ | |||
+ | =====Cups===== | ||
+ | |||
+ | Le logiciel **C**ommon **U**nix **P**rinting **S**ystem est un système de gestion des impressions conçu pour Unix. | ||
+ | |||
+ | ====Protocoles==== | ||
+ | |||
+ | Cups utilise le protocole **IPP** sur les ports udp/631 et tcp/ | ||
+ | |||
+ | Ce protocole : | ||
+ | |||
+ | * est une extension du protocole HTTP | ||
+ | * permet d' | ||
+ | * permet de décrire les spools d' | ||
+ | |||
+ | Cups peut aussi utiliser les deux protocoles suivants : | ||
+ | |||
+ | * **tcp/515** - Protocole BSD | ||
+ | * **tcp/ | ||
+ | |||
+ | ====Daemon==== | ||
+ | |||
+ | **cupsd** est le daemon principal du système CUPS. Quand cupsd traite une impression, il transmet les données à un **filtre** en fonction du modèle d' | ||
+ | |||
+ | ====Le Fichier / | ||
+ | |||
+ | Le fichier de configuration de CUPS est **/ | ||
+ | |||
+ | * le port d' | ||
+ | * les comptes utilisateur et groupe sous lesquels s' | ||
+ | * le niveau de journalisation | ||
+ | * la configuration du serveur **Browse**, c' | ||
+ | * les ACL d' | ||
+ | * les ACL d' | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# cat / | ||
+ | MaxLogSize 0 | ||
+ | # | ||
+ | # "$Id: cupsd.conf.in 7888 2008-08-29 21:16:56Z mike $" | ||
+ | # | ||
+ | # Sample configuration file for the CUPS scheduler. | ||
+ | # complete description of this file. | ||
+ | # | ||
+ | |||
+ | # Log general information in error_log - change " | ||
+ | # for troubleshooting... | ||
+ | LogLevel warn | ||
+ | |||
+ | # Only listen for connections from the local machine. | ||
+ | Listen localhost: | ||
+ | Listen / | ||
+ | |||
+ | # Show shared printers on the local network. | ||
+ | Browsing On | ||
+ | BrowseLocalProtocols dnssd | ||
+ | |||
+ | # Default authentication type, when authentication is required... | ||
+ | DefaultAuthType Basic | ||
+ | |||
+ | # Web interface setting... | ||
+ | WebInterface Yes | ||
+ | |||
+ | # Restrict access to the server... | ||
+ | < | ||
+ | Order allow,deny | ||
+ | </ | ||
+ | |||
+ | # Restrict access to the admin pages... | ||
+ | < | ||
+ | Order allow,deny | ||
+ | </ | ||
+ | |||
+ | # Restrict access to configuration files... | ||
+ | < | ||
+ | AuthType Default | ||
+ | Require user @SYSTEM | ||
+ | Order allow,deny | ||
+ | </ | ||
+ | |||
+ | # Set the default printer/job policies... | ||
+ | <Policy default> | ||
+ | # Job/ | ||
+ | JobPrivateAccess default | ||
+ | JobPrivateValues default | ||
+ | SubscriptionPrivateAccess default | ||
+ | SubscriptionPrivateValues default | ||
+ | |||
+ | # Job-related operations must be done by the owner or an administrator... | ||
+ | <Limit Create-Job Print-Job Print-URI Validate-Job> | ||
+ | Order deny,allow | ||
+ | </ | ||
+ | |||
+ | <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job Cancel-My-Jobs Close-Job CUPS-Move-Job CUPS-Get-Document> | ||
+ | Require user @OWNER @SYSTEM | ||
+ | Order deny,allow | ||
+ | </ | ||
+ | |||
+ | # All administration operations require an administrator to authenticate... | ||
+ | <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default CUPS-Get-Devices> | ||
+ | AuthType Default | ||
+ | Require user @SYSTEM | ||
+ | Order deny,allow | ||
+ | </ | ||
+ | |||
+ | # All printer operations require a printer operator to authenticate... | ||
+ | <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After Cancel-Jobs CUPS-Accept-Jobs CUPS-Reject-Jobs> | ||
+ | AuthType Default | ||
+ | Require user @SYSTEM | ||
+ | Order deny,allow | ||
+ | </ | ||
+ | |||
+ | # Only the owner or an administrator can cancel or authenticate a job... | ||
+ | <Limit Cancel-Job CUPS-Authenticate-Job> | ||
+ | Require user @OWNER @SYSTEM | ||
+ | Order deny,allow | ||
+ | </ | ||
+ | |||
+ | <Limit All> | ||
+ | Order deny,allow | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | # Set the authenticated printer/job policies... | ||
+ | <Policy authenticated> | ||
+ | # Job/ | ||
+ | JobPrivateAccess default | ||
+ | JobPrivateValues default | ||
+ | SubscriptionPrivateAccess default | ||
+ | SubscriptionPrivateValues default | ||
+ | |||
+ | # Job-related operations must be done by the owner or an administrator... | ||
+ | <Limit Create-Job Print-Job Print-URI Validate-Job> | ||
+ | AuthType Default | ||
+ | Order deny,allow | ||
+ | </ | ||
+ | |||
+ | <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job Cancel-My-Jobs Close-Job CUPS-Move-Job CUPS-Get-Document> | ||
+ | AuthType Default | ||
+ | Require user @OWNER @SYSTEM | ||
+ | Order deny,allow | ||
+ | </ | ||
+ | |||
+ | # All administration operations require an administrator to authenticate... | ||
+ | <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default> | ||
+ | AuthType Default | ||
+ | Require user @SYSTEM | ||
+ | Order deny,allow | ||
+ | </ | ||
+ | |||
+ | # All printer operations require a printer operator to authenticate... | ||
+ | <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After Cancel-Jobs CUPS-Accept-Jobs CUPS-Reject-Jobs> | ||
+ | AuthType Default | ||
+ | Require user @SYSTEM | ||
+ | Order deny,allow | ||
+ | </ | ||
+ | |||
+ | # Only the owner or an administrator can cancel or authenticate a job... | ||
+ | <Limit Cancel-Job CUPS-Authenticate-Job> | ||
+ | AuthType Default | ||
+ | Require user @OWNER @SYSTEM | ||
+ | Order deny,allow | ||
+ | </ | ||
+ | |||
+ | <Limit All> | ||
+ | Order deny,allow | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | # | ||
+ | # End of "$Id: cupsd.conf.in 7888 2008-08-29 21:16:56Z mike $". | ||
+ | # | ||
+ | </ | ||
+ | |||
+ | ====Filtres==== | ||
+ | |||
+ | Les filtres disponibles au système CUPS se trouvent dans le répertoire **/ | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# ls / | ||
+ | bannertopdf | ||
+ | commandtocanon | ||
+ | commandtoepson | ||
+ | commandtoescpx | ||
+ | commandtopclx | ||
+ | commandtops | ||
+ | gstopxl | ||
+ | </ | ||
+ | |||
+ | ====Backends==== | ||
+ | |||
+ | Les Backends disponibles au système CUPS se trouvent dans le répertoire **/ | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# ls / | ||
+ | dnssd | ||
+ | failover | ||
+ | </ | ||
+ | |||
+ | La liste des backends reconnus par CUPS peut être obtenue en saisissant la commande suivante : | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# lpinfo -v | ||
+ | network lpd | ||
+ | network http | ||
+ | network socket | ||
+ | network https | ||
+ | network ipp | ||
+ | network ipps | ||
+ | </ | ||
+ | |||
+ | Il y a un type de backend par liaison locale d' | ||
+ | |||
+ | ^ Backend ^ Description ^ | ||
+ | | IPP | Client IPP | | ||
+ | | LPD | Client LPD | | ||
+ | | SMB | Client SMB | | ||
+ | | Socket | Client %%JetDirect%% sur port tcp/9100 | | ||
+ | | Pap/cap | Client %%AppleTalk%% | | ||
+ | |||
+ | ====Journaux==== | ||
+ | |||
+ | Les journaux de CUPS se trouvent dans **/ | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# ls -l / | ||
+ | total 8 | ||
+ | -rw-------. 1 root lp 1394 Oct 29 10:04 access_log | ||
+ | -rw-------. 1 root lp 1740 Oct 26 15:41 access_log-20151026 | ||
+ | -rw-------. 1 root lp 0 Mar 8 2015 error_log | ||
+ | -rw-------. 1 root lp 0 Mar 8 2015 page_log | ||
+ | </ | ||
+ | |||
+ | ====Imprimantes==== | ||
+ | |||
+ | La commande suivante liste les imprimantes connues de CUPS : | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# lpinfo -m | more | ||
+ | drv:/// | ||
+ | drv:/// | ||
+ | drv:/// | ||
+ | drv:/// | ||
+ | drv:/// | ||
+ | drv:/// | ||
+ | drv:/// | ||
+ | drv:/// | ||
+ | drv:/// | ||
+ | drv:/// | ||
+ | drv:/// | ||
+ | drv:/// | ||
+ | gutenprint.5.2:// | ||
+ | gutenprint.5.2:// | ||
+ | Simplified | ||
+ | gutenprint.5.2:// | ||
+ | gutenprint.5.2:// | ||
+ | Simplified | ||
+ | gutenprint.5.2:// | ||
+ | gutenprint.5.2:// | ||
+ | Simplified | ||
+ | gutenprint.5.2:// | ||
+ | gutenprint.5.2:// | ||
+ | --More-- | ||
+ | </ | ||
+ | |||
+ | ====Administration==== | ||
+ | |||
+ | Le serveur CUPS est administré en ligne de commande par l' | ||
+ | |||
+ | ^ Commande ^ Description ^ | ||
+ | | lpadmin | Principale commande d' | ||
+ | | accept | Autorise le dépôt de requêtes dans un spool | | ||
+ | | reject | Interdit le dépôt de requêtes dans un spool | | ||
+ | | cupsenable | Autorise le traitement des requêtes dans un spool | | ||
+ | | cupsdisable | Interdit le traitement des requêtes dans un spool | | ||
+ | | lpstat | Liste des travaux en attente | | ||
+ | | cancel | Supprime des requêtes | | ||
+ | | lpmove | Déplace des travaux en attente d'un spool à un autre | | ||
+ | | lpinfo | Affiche la liste des filtres ou backends disponibles | | ||
+ | | lppasswd | Gère les comptes et les mots de passe pour l' | ||
+ | |||
+ | ===La Commande lpstat=== | ||
+ | |||
+ | Pour consulter la liste des files d' | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# lpstat -t | ||
+ | scheduler is running | ||
+ | no system default destination | ||
+ | lpstat: No destinations added. | ||
+ | lpstat: No destinations added. | ||
+ | lpstat: No destinations added. | ||
+ | lpstat: No destinations added. | ||
+ | </ | ||
+ | |||
+ | ===La Commande lpadmin=== | ||
+ | |||
+ | Créez maintenant une file d' | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# lpadmin -p imp1 -v socket:// | ||
+ | </ | ||
+ | |||
+ | Les options de cette commande sont les suivantes : | ||
+ | |||
+ | ^ Options ^ Description ^ | ||
+ | | -p | Le nom de la file | | ||
+ | | -v | L' | ||
+ | | -m | Le modèle à utiliser (un fichier ayant une extension **ppd** qui identifie l' | ||
+ | |||
+ | Les types de URL possible sont : | ||
+ | |||
+ | ^ URL ^ Description ^ | ||
+ | | file:/ | ||
+ | | %%http:// | ||
+ | | %%lpd:// | ||
+ | | %%ipp:// | ||
+ | | %%smb:// | ||
+ | | %%socket:// | ||
+ | | %%serial:/ | ||
+ | | %%parallel:/ | ||
+ | |||
+ | Vérifiez la création de la file d' | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# lpstat -t | ||
+ | scheduler is running | ||
+ | no system default destination | ||
+ | device for imp1: socket:// | ||
+ | imp1 not accepting requests since Thu 29 Oct 2015 10:06:57 AM CET - | ||
+ | reason unknown | ||
+ | printer imp1 disabled since Thu 29 Oct 2015 10:06:57 AM CET - | ||
+ | reason unknown | ||
+ | </ | ||
+ | |||
+ | ===Les Commandes accept, cupsenable=== | ||
+ | |||
+ | Il est maintenant possible d' | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# accept imp1 | ||
+ | [root@centos7 ~]# lpstat -t | ||
+ | scheduler is running | ||
+ | no system default destination | ||
+ | device for imp1: socket:// | ||
+ | imp1 accepting requests since Thu 29 Oct 2015 10:06:57 AM CET | ||
+ | printer imp1 disabled since Thu 29 Oct 2015 10:06:57 AM CET - | ||
+ | reason unknown | ||
+ | [root@centos7 ~]# cupsenable imp1 | ||
+ | [root@centos7 ~]# lpstat -t | ||
+ | scheduler is running | ||
+ | no system default destination | ||
+ | device for imp1: socket:// | ||
+ | imp1 accepting requests since Thu 29 Oct 2015 10:08:13 AM CET | ||
+ | printer imp1 is idle. enabled since Thu 29 Oct 2015 10:08:13 AM CET | ||
+ | </ | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | **Important** : Notez que les deux commandes **accept** et **cupsenable** ont leurs opposées : **reject** et **cupsdisable**. | ||
+ | </ | ||
+ | |||
+ | Pour nommer une imprimante en tant que la **destination** par défaut, il convient d' | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# lpadmin -d imp1 | ||
+ | [root@centos7 ~]# lpstat -t | ||
+ | scheduler is running | ||
+ | system default destination: | ||
+ | device for imp1: socket:// | ||
+ | imp1 accepting requests since Thu 29 Oct 2015 10:08:13 AM CET | ||
+ | printer imp1 is idle. enabled since Thu 29 Oct 2015 10:08:13 AM CET | ||
+ | </ | ||
+ | |||
+ | Vous allez mainteant créer une fille d' | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# lpadmin -p Imprimante1 -E -v parallel:/ | ||
+ | [root@centos7 ~]# lpstat -t | ||
+ | scheduler is running | ||
+ | system default destination: | ||
+ | device for imp1: socket:// | ||
+ | device for Imprimante1: | ||
+ | imp1 accepting requests since Thu 29 Oct 2015 10:08:13 AM CET | ||
+ | Imprimante1 accepting requests since Thu 29 Oct 2015 10:09:31 AM CET | ||
+ | printer imp1 is idle. enabled since Thu 29 Oct 2015 10:08:13 AM CET | ||
+ | printer Imprimante1 is idle. enabled since Thu 29 Oct 2015 10:09:31 AM CET | ||
+ | </ | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | **Important** : Notez que l' | ||
+ | </ | ||
+ | |||
+ | Sous RHEL/CentOS la file d' | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# ls -l /dev/lp0 | ||
+ | crw-rw----. 1 root lp 6, 0 Oct 28 09:40 /dev/lp0 | ||
+ | </ | ||
+ | |||
+ | Testez maintenant votre imprimante fictive : | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# echo "Test Printer File" > / | ||
+ | [root@centos7 ~]# lpadmin -d Imprimante1 | ||
+ | [root@centos7 ~]# lpstat -t | ||
+ | scheduler is running | ||
+ | system default destination: | ||
+ | device for imp1: socket:// | ||
+ | device for Imprimante1: | ||
+ | imp1 accepting requests since Thu 29 Oct 2015 10:08:13 AM CET | ||
+ | Imprimante1 accepting requests since Thu 29 Oct 2015 10:09:31 AM CET | ||
+ | printer imp1 is idle. enabled since Thu 29 Oct 2015 10:08:13 AM CET | ||
+ | printer Imprimante1 is idle. enabled since Thu 29 Oct 2015 10:09:31 AM CET | ||
+ | |||
+ | [root@centos7 ~]# lp / | ||
+ | request id is Imprimante1-1 (1 file(s)) | ||
+ | </ | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | **Important** : Notez que l' | ||
+ | </ | ||
+ | |||
+ | Créez maintenant une deuxième file d' | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# lpadmin -p Imprimante2 -E -v parallel:/ | ||
+ | [root@centos7 ~]# lpstat -t | ||
+ | scheduler is running | ||
+ | system default destination: | ||
+ | device for imp1: socket:// | ||
+ | device for Imprimante1: | ||
+ | device for Imprimante2: | ||
+ | imp1 accepting requests since Thu 29 Oct 2015 10:08:13 AM CET | ||
+ | Imprimante1 accepting requests since Thu 29 Oct 2015 10:15:42 AM CET | ||
+ | Imprimante2 accepting requests since Thu 29 Oct 2015 10:29:52 AM CET | ||
+ | printer imp1 is idle. enabled since Thu 29 Oct 2015 10:08:13 AM CET | ||
+ | printer Imprimante1 now printing Imprimante1-1. | ||
+ | Printer not connected; will retry in 30 seconds. | ||
+ | printer Imprimante2 is idle. enabled since Thu 29 Oct 2015 10:29:52 AM CET | ||
+ | Imprimante1-1 | ||
+ | </ | ||
+ | |||
+ | ===Classe d' | ||
+ | |||
+ | Une **classe** est un **ensemble ordonné** d' | ||
+ | |||
+ | Pour créer une classe il convient d' | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# lpadmin -p Imprimante1 -c classe1 | ||
+ | [root@centos7 ~]# lpadmin -p Imprimante2 -c classe1 | ||
+ | </ | ||
+ | |||
+ | Vérifiez la création de la classe : | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# lpstat -t | ||
+ | scheduler is running | ||
+ | system default destination: | ||
+ | members of class classe1: | ||
+ | Imprimante1 | ||
+ | Imprimante2 | ||
+ | device for classe1: ///dev/null | ||
+ | device for imp1: socket:// | ||
+ | device for Imprimante1: | ||
+ | device for Imprimante2: | ||
+ | classe1 not accepting requests since Thu 29 Oct 2015 10:30:45 AM CET - | ||
+ | reason unknown | ||
+ | imp1 accepting requests since Thu 29 Oct 2015 10:08:13 AM CET | ||
+ | Imprimante1 accepting requests since Thu 29 Oct 2015 10:15:42 AM CET | ||
+ | Imprimante2 accepting requests since Thu 29 Oct 2015 10:29:52 AM CET | ||
+ | printer classe1 disabled since Thu 29 Oct 2015 10:30:45 AM CET - | ||
+ | reason unknown | ||
+ | printer imp1 is idle. enabled since Thu 29 Oct 2015 10:08:13 AM CET | ||
+ | printer Imprimante1 now printing Imprimante1-1. | ||
+ | Printer not connected; will retry in 30 seconds. | ||
+ | printer Imprimante2 is idle. enabled since Thu 29 Oct 2015 10:29:52 AM CET | ||
+ | Imprimante1-1 | ||
+ | </ | ||
+ | |||
+ | ===Le fichier / | ||
+ | |||
+ | La configuration globale des files d' | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# cat / | ||
+ | # Printer configuration file for CUPS v1.6.3 | ||
+ | # Written by cupsd on 2015-10-29 10:30 | ||
+ | # DO NOT EDIT THIS FILE WHEN CUPSD IS RUNNING | ||
+ | <Printer imp1> | ||
+ | UUID urn: | ||
+ | Info imp1 | ||
+ | DeviceURI socket:// | ||
+ | State Idle | ||
+ | StateTime 1446109693 | ||
+ | Type 4 | ||
+ | Accepting Yes | ||
+ | Shared Yes | ||
+ | JobSheets none none | ||
+ | QuotaPeriod 0 | ||
+ | PageLimit 0 | ||
+ | KLimit 0 | ||
+ | OpPolicy default | ||
+ | ErrorPolicy stop-printer | ||
+ | </ | ||
+ | < | ||
+ | UUID urn: | ||
+ | Info Imprimante1 | ||
+ | MakeModel HP Color LaserJet Series PCL 6 CUPS | ||
+ | DeviceURI parallel:/ | ||
+ | State Idle | ||
+ | StateTime 1446110142 | ||
+ | Type 8400972 | ||
+ | Accepting Yes | ||
+ | Shared Yes | ||
+ | JobSheets none none | ||
+ | QuotaPeriod 0 | ||
+ | PageLimit 0 | ||
+ | KLimit 0 | ||
+ | OpPolicy default | ||
+ | ErrorPolicy stop-printer | ||
+ | </ | ||
+ | <Printer Imprimante2> | ||
+ | UUID urn: | ||
+ | Info Imprimante2 | ||
+ | MakeModel HP Color LaserJet Series PCL 6 CUPS | ||
+ | DeviceURI parallel:/ | ||
+ | State Idle | ||
+ | StateTime 1446110992 | ||
+ | Type 8400972 | ||
+ | Accepting Yes | ||
+ | Shared Yes | ||
+ | JobSheets none none | ||
+ | QuotaPeriod 0 | ||
+ | PageLimit 0 | ||
+ | KLimit 0 | ||
+ | OpPolicy default | ||
+ | ErrorPolicy stop-printer | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ===Le fichier / | ||
+ | |||
+ | La configuration globale des classes se trouve dans le fichier **/ | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# cat / | ||
+ | # Class configuration file for CUPS v1.6.3 | ||
+ | # Written by cupsd on 2015-10-29 10:31 | ||
+ | # DO NOT EDIT THIS FILE WHEN CUPSD IS RUNNING | ||
+ | <Class classe1> | ||
+ | UUID urn: | ||
+ | Info classe1 | ||
+ | State Stopped | ||
+ | StateTime 1446111045 | ||
+ | Accepting No | ||
+ | Shared Yes | ||
+ | JobSheets none none | ||
+ | Printer Imprimante1 | ||
+ | Printer Imprimante2 | ||
+ | QuotaPeriod 0 | ||
+ | PageLimit 0 | ||
+ | KLimit 0 | ||
+ | OpPolicy default | ||
+ | ErrorPolicy retry-current-job | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ===La Commande cancel=== | ||
+ | |||
+ | Pour annuler l' | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# lpstat | ||
+ | Imprimante1-1 | ||
+ | [root@centos7 ~]# cancel imprimante1-1 | ||
+ | [root@centos7 ~]# lpstat | ||
+ | [root@centos7 ~]# | ||
+ | </ | ||
+ | |||
+ | ===La Commande lpmove=== | ||
+ | |||
+ | La commande **lpmove** permet de déplacer tous les jobs d'une file à une autre. | ||
+ | |||
+ | Déclarez l' | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# lpadmin -d imp1 | ||
+ | </ | ||
+ | |||
+ | Créez ensuite une nouvelle impression : | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# lp / | ||
+ | request id is imp1-2 (1 file(s)) | ||
+ | [root@centos7 ~]# lpstat | ||
+ | imp1-2 | ||
+ | </ | ||
+ | |||
+ | Déplacer ce job vers la classe1 : | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# lpmove imp1 classe1 | ||
+ | [root@centos7 ~]# lpstat | ||
+ | classe1-2 | ||
+ | </ | ||
+ | |||
+ | Pour retirer une file d'une classe, il convient d' | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# lpadmin -p Imprimante1 -r classe1 | ||
+ | [root@centos7 ~]# lpadmin -p Imprimante2 -r classe1 | ||
+ | [root@centos7 ~]# lpstat -t | ||
+ | scheduler is running | ||
+ | system default destination: | ||
+ | device for imp1: socket:// | ||
+ | device for Imprimante1: | ||
+ | device for Imprimante2: | ||
+ | imp1 accepting requests since Thu 29 Oct 2015 10:38:22 AM CET | ||
+ | Imprimante1 accepting requests since Thu 29 Oct 2015 10:36:49 AM CET | ||
+ | Imprimante2 accepting requests since Thu 29 Oct 2015 10:29:52 AM CET | ||
+ | printer imp1 is idle. enabled since Thu 29 Oct 2015 10:38:22 AM CET | ||
+ | The printer is not responding. | ||
+ | printer Imprimante1 is idle. enabled since Thu 29 Oct 2015 10:36:49 AM CET | ||
+ | Printer not connected; will retry in 30 seconds. | ||
+ | printer Imprimante2 is idle. enabled since Thu 29 Oct 2015 10:29:52 AM CET | ||
+ | </ | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | **Important** : Notez que la classe est **automatiquement supprimée** quand elle est vide. | ||
+ | </ | ||
+ | |||
+ | Pour supprimer les files créées il convient de nouveau à utiliser la commande lpadmin : | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# lpadmin -x Imprimante1 | ||
+ | [root@centos7 ~]# lpadmin -x Imprimante2 | ||
+ | [root@centos7 ~]# lpadmin -x imp1 | ||
+ | [root@centos7 ~]# lpstat -t | ||
+ | scheduler is running | ||
+ | no system default destination | ||
+ | lpstat: No destinations added. | ||
+ | lpstat: No destinations added. | ||
+ | lpstat: No destinations added. | ||
+ | lpstat: No destinations added. | ||
+ | </ | ||
+ | |||
+ | ====L' | ||
+ | |||
+ | CUPS peut également être administré en utilisant l' | ||
+ | |||
+ | < | ||
+ | Listen 0.0.0.0:631 | ||
+ | ... | ||
+ | < | ||
+ | Order allow,deny | ||
+ | Allow from 10.0.2.* | ||
+ | </ | ||
+ | ... | ||
+ | </ | ||
+ | |||
+ | Sauvegardez et quittez votre fichier puis redémarrez le service **cups**: | ||
+ | |||
+ | < | ||
+ | [root@centos7 ~]# systemctl restart cups | ||
+ | </ | ||
+ | |||
+ | Dans Guacamole, ouvrez la machine Gateway_10.0.2.40_VNC. Connectez-vous avec l' | ||
+ | |||
+ | Lancez le Navigateur Firefox et saisissez l' | ||
+ | |||
+ | ----- | ||
+ | Copyright © 2024 Hugh Norris. |