| L | Ma | Me | J | V | S | D |
|---|---|---|---|---|---|---|
| « mai | ||||||
| 1 | 2 | |||||
| 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| 17 | 18 | 19 | 20 | 21 | 22 | 23 |
| 24 | 25 | 26 | 27 | 28 | 29 | 30 |
Posted on février 22nd, 2007 by Océane.
Categories: linux / Unix /openBSD.
Voila en lançant la commande “updatedb“, j’obtiens un message d’erreur sous Mandriva linux 2007
/usr/bin/slocate: option requires an argument — l
la solution :
Lire le manuel de slocate
on y apprend qu’il y a 2 niveaux de sécurité pour la commande slocate:
Voila il suffit de specifier l’argument sécurité pour la commande “updatedb” qui n’est rien d’autre qu’un script qui fait appel à la commande slocate
Voici le contenu de updatedb sur mon système
#!/bin/sh
#
# No need to source /etc/updatedb.conf. Use the -c option, that’s what it’s
# for…source /etc/updatedb.conf
/usr/bin/slocate -u -l”$SECURITY” $@
Maintenant vous savez que vous pouvez specifier le niveau de sécurité en ligne de commande..
par exemple:
[root@localhost oceane]# updatedb 1 &
[1] 6280
[root@localhost oceane]#
Bises a tous !!
Comments Off
Posted on février 20th, 2007 by Océane.
Categories: Memo.
Extreme Networks S48
Nommer le switch: configure snmp sysName “switch_name”
Interface de management activée: show management
Management d’utilisateurs:
Voir les utilisateurs: show accounts
Créer un compte utilisateur: create account user user_name
Créer un acompte administrateur: create account admin user_name
Changer le mot de passe: configure account user_name
Gestion de l’accès à l’administration du switch S48:
Activation de l’administration par Interface Web: enable web
Désactivation administration Web: disable web
Sauvegarder la configuration: save configuration
VLAN administration:
Créer un vlan: create vlan vlan_name
Configurer un vlan: configure vlan ipaddress /netmask_length
Ajouter des ports à un vlan: configure vlan vlan_name add ports port_number
Enlever un port d’un vlan: configure vlan vlan_name delete ports port_number
Afficher l’état des ports: sh ports information
Afficher les informations détaillées sur les vlan: sh vlan detail
enable ipforwarding
configure rip add vlan vlan_name
enable rip
configure rip delete vlan guetali
Pour voir les protocoles: sh protocol
Configurer le protocole IP sur un Vlan: configure vlan vlan_name protocol IP
Creation d’access-lists:
create access-profile “administration” type ipaddress
configure access-profile “administration” mode permit
configure access-profile “administration” add 5 permit ipaddress @Network/mask
configure access-profile “administration” add 10 permit ipaddress @Network/mask
Comments Off
Posted on février 18th, 2007 by Océane.
Categories: linux / Unix /openBSD, Le MTA Postfix.
TP Messagerie Postfix M2
Le 14/11/2006
Postfix
1) Installation de postfix:
Via apt ou avec les sources à partir de http://www.postfix.org
2) Configuration de postfix:
- Où se trouvent les fichiers de configuration et Quels sont-ils ?
/etc/postfix/main.cf et /etc/postfix/master.cf
- Quel est le principal fichier de config ? /etc/postfix/main.cf
- Editez le. Listez les principaux paramètres se trouvant dans ce fichier. A quoi servent-ils ?
- myshotname, mydomain, myrorigin
- Paramétrez myhostname, myorigin, mydestination pour avoir un serveur de messagerie
myhostname=machine.truc.com, (verifier le hostname de la machine?),
mydomain=truc.com
myorigin=$mydomain
mydestination=$myhostname localhost.$myhostname
3) Lancement et fonctionnement du service: la commande postfix
Lancez le service postfix avec la commande postfix. Postfix start/restart/stop
Redémarrez/Arrêtez
Vérifiez que le service se lance au démarrage: vérifier l’existence du script /etc/init.d/postfix et dans les dossiers rc.d
4) Vérification du fonctionnement du service postfix:
Vérifiez que les services master, qmgr et pickup fonctionnent:
- en tant que service: ps aux | grep -i postfix
- au niveau de port d’écoute SMTP: netstat -an | grep 25
5) Créez des comptes utilisateurs pour la messagerie ainsi qu’un groupe d’utilisateurs
6) Les alias:
A quoi servent les alias ? A définir des surnoms aux utilisateurs, faire suivre le courrier vers un autre compte mail, à créer des listes de diffusion
A quoi sert la commande newaliases ? Met à jour les alias
Créez une liste de diffusion: dans /etc/aliases ajouter par exemples:
personnel: toto@societe.fr, jean, paul, …
Faites suivre le courrier d’un utilisateur vers votre boite personnelle:
jean: jean@yahoo.fr
Ne pas oublier la commande newaliases !
7) Installez un serveur POP3/IMAP:
- Quels sont les serveurs existants dans ce domaine ?
- Installer un serveur de votre choix Pop3 et IMAP
courrier-imap par exemple
Vérification du fonctionnement de POP3/IMAP
- Listez les commandes utiliseés et notez les résultats:
- Serveur POP3:
telnet @IP 110
USER username
PASS username-password
LIST
STAT
RETR number
DEL
QUIT
….
- Serveur IMAP:
telnet @IP 143
9) Testez la messagerie
- Envoyer des mails en ligne de commande aux utilisateurs enregistrés sur votre machine:
Comment faites-vous ?
Avec la commande mail: mail user << message.txt
ou via telnet sur le port SMTP(25):
telnet @IP 25
Helo mydomain.fr
mail from: tata@mydomain.fr
recpt to: userlocal
data
Subject: Mail de test
blabloablablabla
.
quit
- Regardez les logs pour voir le cheminement du processus d’envoi et de réception:
checker le champ mail de /etc/syslog.conf et faire tail -f /var/log/maillog
- Le courrier est-il en attente ? Vérifiez avec mailq
mailq
- Détruisez un courrier dans la queue (commande postsuper):
mailq flush pour identiifeir l’id du mail et postsuper mail-id pour effacer un mail avec l’id mail-id
- Votre courrier: Où se trouvent vos mail par défaut ? (chercher dans /var)
-> /var/mail/username
- Lisez vos mail: notez le résultat. Qu’en déduisez-vous quand au mode de stockage de vos messages ?
Cat /var/mail/username
Le stockage est réalisé dans un fichier plat (flat file)
10) Recherche/présentations:
Quels est le paramètre à modifier dans main.cf pour avoir un stockage plus « pratique » dans le profile de l’utilisateur ?
C’est le stockage des mails au format qmail. home_mailbox = Maildir
- Utilisation d’un Webmail. Recherchez un webmail et installez le. Décrivez la procédure d’installation. Testez.
- Qu’est-ce que le SMTP authentifié ? A quoi sert-il?
- Presentez les autres types de serveur de messagerie dans l’OpenSource.
- Le spam et les virus… Quelles sont les solutions dans le domaine du Libre ?
Comments Off
Posted on février 14th, 2007 by Océane.
Categories: FreeBSD.
Raid1 ou Mirroring logiciel avec GEOM sur FreeBSD
Tuto sur le miroitage (mirroring) avec deux disques dur /dev/ad0 et /dev/ad1 sur FreeBSD 6.1
Prérequis :
Pour autoriser le la création d’un miroir, il faut modifier l’état du kernel avec sysctl :
# sysctl kern.geom.debugflags=16
# gmirror label -v -b round-robin gm0 /dev/ad0
Ou -v est le mode verbose, -b pour balance-algorithm, gm0 est le nom du miroir et /dev/ad0 est le disque contenant les données à dupliquer…
Pour activer le mirroring au démarrage :
# echo geom_mirror_load="YES" > /boot/loader.conf
Modification des noms des files système:
# cp /etc/fstab /etc/fstab.ori
# vi /etc/fstab
Modifiez ensuite le path des devices de la façon suivante : /dev/ad0s1a en /dev/mirror/gm0s1a
Avant de rebooter, bien verifier la coherence du fichier /etc/fstab et /boot/loader.conf tant qu’il est encore temps afin d’éviter d’avoir à tout réinstaller.
Après le reboot et un chargement réussi du mirroir, vérifier que les partitions sont bien montées :
# df –h
# swapinfo pour voir la partition swap
Synchronisez le disque miroir :
# gmirror insert gm0 /dev/ad1
Pour suivre l’état de la synchronisation :
# gmirror list | more
ou
# gmirror status
Rebooter le système après la synchronisation
Comments Off
Posted on février 12th, 2007 by Océane.
Categories: FreeBSD.
J’ai installé via les ports les librairies compat4 et compat5 sous FreeBSD.
Voici les messages d’erreur que j’ai eu après le redémarrage de ma FreeBSD 6.1.
WARNING: $compat4x_enable is not set properly - see rc.conf(5).
WARNING: $compat5x_enable is not set properly - see rc.conf(5).
Pour résoudre ce soucis intempestif, il faut rajouter les lignes suivantes dans le fichier /etc/rc.conf:
linux_enable="YES"
compat5x_enable=”YES”
compat4x_enable=”YES”
Redemarrez ensuite votre serveur FreeBSD et tous ces messages alarmants auront disparus…
Comments Off
Posted on février 7th, 2007 by Océane.
Categories: linux / Unix /openBSD.
Voici une méthode qui fonctionne sous Outlook Express pour importer votre carnet d’adresse ou vos contacts sous Horde, le Webmail Open Source.
Exportation sous Outlook Express du carnet d’adresses :
1) Fichier > Exporter > Carnet d’adresses
2) Sélectionnez dans le menu Fichier texte (valeurs sépares par des virgules)
3) Cliquez sur Exporter
4) Enregistrez le fichier au format .txt dans un répertoire
5) Cliquez sur Suivant
6) Sélectionnez les champs que vous souhaitez exporter (vous pouvez laisser par défaut)
7) Cliquez sur Terminer
Importation du fichier de contacts Sous Horde :
Sur Courrier, cliquer sur l’onglet Carnet d’adresses. Cliquez sur Importer/Exporter, Sélectionner le fichier à importer. Faire Suivant.
Faire encore Suivant à l’étape 2.
Sélectionner le champ importé qui lui est associé en disponible et cliquez sur Ajouter une paire.
Cliquez sur suivant
L’import se fait sans soucis, vérifiez ensuite les éventuelles coquilles…
Sous Outlook 2003 l’import n’est pas complètement transparent et optimisé ; on peut le faire de la même façon mais il y a des corrections à appliquer sur les contacts importés sous Horde.
Posted on février 4th, 2007 by Océane.
Categories: Le MTA Postfix.
TP sur Postfix
1. Installation de postfix:
Via apt ou avec les sources à partir de http://www.postfix.org
2. Configuration de postfix:
- Où se trouvent les fichiers de configuration et Quels sont-ils ?
- Quel est le principal fichier de config ?
- Editez le. Listez les principaux paramètres se trouvant dans ce fichier. A quoi servent-ils ?
- Paramétrez myhostname, myorigin, mydestination pour avoir un serveur de messagerie
3. Lancement et fonctionnement du service: la commande postconf
Lancer le service postfix avec la commande postconf.
Redemarrer/Arreter
Vérifiez que le service se lance au démarrage:
Vérification du fonctionnement du service postfix:
4. Vérifiez que les services master, qmgr et pickup fonctionnent:
- en tant que service: …………………………………………
- au niveau de port d’écoute SMTP: ………………………………….
5. Créer des comptes utilisateurs pour la messagerie ainsi qu’un groupe d’utilisateurs
6. Les alias:
A quoi servent les alias ?
A quoi sert la commande newaliases ?
Créez une liste de diffusion:………………………………………………
Faites suivre le courrier d’un utilisateur vers votre boite personnelle:
Ne pas oublier la commande newaliases !
7. Installer un serveur POP3/IMAP:
- Quels sont les serveurs existants dans ce domaine ?
- Installer un serveur de votre choix Pop3 et IMAP
8. Vérification du fonctionnement de POP3/IMAP
- Listez les commandes utiliseés et notez les résultats:
- Serveur POP3:
- Serveur IMAP:
9. La messagerie
- Envoyer des mails en ligne de commande auxutilisateurs enregistrés sur votre machine: Comment faites-vous ?
- Regarder les logs pour voir le cheminement du processus d’envoi et de réception:
- Le courrier est-il en attente ? Vérifiez avec mailq
- Détruisez un courrier dans la queue (commande postsuper):
- Votre courrier: Où se trouvent vos mail par défaut ? (chercher dans /var)
- Lisez vos mail: notez le résultat. Qu’en déduisez-vous quand au mode de stockage de vos messages ?
10. Recherche/présentations:
- Quels est le paramètre à modifier dans main.cf pour avoir un stockage plus « pratique » dans le profile de l’utilisateur ?
- Utilisation d’un Webmail. Recherchez un webmail et installez le. Décrivez la procédure d’installation. Testez.
- Qu’est-ce que le SMTP authentifié ? A quoi sert-il?
- Presentez les autres types de serveur de messagerie dans l’OpenSource.
- Le spam et les virus… Quelles sont les solutions dans le domaine du Libre ?
Posted on février 1st, 2007 by Océane.
Categories: Puremessage Unix.
La politique de filtrage antispam (AntiSpam Policy Rules) de Sophos Puremesssage Unix qui suit permet :
- Suppression les messages ou mails qui ont un taux de probabilité supérieur à 85% que ce soit du spam
- Mise en quarantaine des mails qui ont un taux de spam compris entre 50% et 85%
- Mise en quarantaine, tag et envoie des mails qui ont un taux de spam compris entre 40% et 50%
- On laisse passer tous les messages qui ont un taux de probabilité inférieur à 40%
Bon tuning de puremessage
# ########## Antispam Rules ############## Lorsque le Spam atteint le score de 85% on discard le mail# attr NAME=AntiSpam Rules - Spam over than 85 % - Action : discard mail.if not pmx_spam_prob :under 85 {pmx_mark1 "Spam-With-SpamProb-Over-Than-85";discard;stop;}# Lorsque le Spam est compris entre 50 et 85 on le met en quarantaine# attr NAME=AntiSpam Rules - Spam ranking between 50% and 85%. - Action : Quarantine, Stop.if allof(pmx_spam_prob :over 49,pmx_spam_prob :under 85){pmx_mark1 "Spam-With-SpamProb-Over-Than-50";pmx_add_header "X-PMX-Spam" "Probability=%%PROB%%";pmx_quarantine "Spam";stop;}# Lorsque le Spam est compris entre 40 et 50 on TAG le sujet# attr NAME=AntiSpam Rules - Spam ranking between 40% and 50%. - Action : Copie to quarantine, Subject Notification, Keep.if allof(pmx_spam_prob :under 49,pmx_spam_prob :over 40){pmx_mark1 "Spam-With-SpamProb-Over-Than-40";pmx_replace_header :index 0 "Subject" "[Suspected Spam with prob = %%PROB%%] : %%SUBJECT%%";pmx_file "Spam";keep;}# Lorsque le Spam est compris en dessous de 40 nous laissons passer# attr NAME=AntiSpam Rules - Spam under 40% - Action : Keep messageif not pmx_spam_prob :over 40 {pmx_mark1 "Spam-With-SpamProb-under-40";keep;stop;}# attr NAME=Add X-Header and deliver messageselse {pmx_replace_header :index 0 "X-PerlMx-Spam" "Gauge=%%XGAUGE%%%%IGAUGE%%, Probability=%%PROB%%, Report='%%HITS%%'";stop;}}
Posted on janvier 26th, 2007 by Océane.
Categories: Non classé.
Voila une compilation des commandes les plus utilisées en ssh ou avec le shell linux(bash), elles sont regroupées par nom,description et exemple. Bien entendu cette liste n’est pas exaustive
Commandes SSH ou commandes les plus utilisées avec le shell linux.
ls : liste les fichiers/répertoire dans un répertoire donné, comparable à la commande dir de windows/dos.
ls -al : liste tous les fichiers(les fichiers cachés sont inclus), répertoires, et tous les attributs de ses fichiers/répertoires.
cd : changer de répertoire · · cd /usr/local/apache : vous vous déplacer dans le répertoire /usr/local/apache/
Exemples:
cd ~ : vous allez dans votre r´pertoire home
cd - : vous allez dans le dernier répertoire où vous étiez
cd .. : remonte d’un répertoire dans l’architecture de votre système de fichier
cat : affiche le contenu d’un fichier sur l’ecran
Exemple:
cat nomdefichier.txt : cat affiche le contenu du fichier nomdefichier.txt sur l’ecran
chmod: modifie les droits d’accès à un fichier ou répertoire donné. Leur valeur se lie ou s’entend de gauche vers la droite:
UTILISATEUR - GROUPE - TOUTLEMONDE
0 = — Aucun droit
1 = –X droit d’exécution seulement
2 = -W- droit d’écriture seulement
3 = -WX droit décriture et d’execution
4 = R– droit de lecture seulement
5 = R-X droit de lecture et d’exécution
6 = RW- droit de lecture et d’écriture
7 = RWX droit de lecture, d’écriture et d’execution
Utilisation:
chmod numerodudroit nom de fichier
chmod 000 : Aucun accès au fichier n’est autorisé
chmod 644: souvent utilisé pour les pages web HTML
chmod 755: utilise très souvent pour les scripts CGI
chown: modifie les droits de propriété d’un fichier
The set of 2 go in this order from left to right:
USER - GROUP
chown root myfile.txt : Changes the owner of the file to root
chown root.root myfile.txt : Changes the owner and group of the file to root
tail : like cat, but only reads the end of the file
tail /var/log/messages : see the last 20 (by default) lines of /var/log/messages
tail -f /var/log/messages : watch the file continuously, while it’s being updated
tail -200 /var/log/messages : print the last 200 lines of the file to the screen
more : like cat, but opens the file one screen at a time rather than all at once
more /etc/userdomains : browse through the userdomains file. hit Spaceto go to the next page, q to quit
pico : friendly, easy to use file editor
pico /home/burst/public_html/index.html : edit the index page for the user’s website.
File Editing with VI ssh commands
vi : another editor, tons of features, harder to use at first than pico
vi /home/burst/public_html/index.html : edit the index page for the user’s website.
Whie in the vi program you can use the following useful commands, you will need to hit SHIFT + : to go into command mode
:q! : This force quits the file without saving and exits vi
:w : This writes the file to disk, saves it
:wq : This saves the file to disk and exists vi
:LINENUMBER : EG :25 : Takes you to line 25 within the file
:$ : Takes you to the last line of the file
:0 : Takes you to the first line of the file
grep : looks for patterns in files
grep root /etc/passwd : shows all matches of root in /etc/passwd
grep -v root /etc/passwd : shows all lines that do not match root
ln : create’s “links” between files and directories
ln -s /usr/local/apache/conf/httpd.conf /etc/httpd.conf : Now you can edit /etc/httpd.conf rather than the original. changes will affect the orginal, however you can delete the link and it will not delete the original.
last : shows who logged in and when
last -20 : shows only the last 20 logins
last -20 -a : shows last 20 logins, with the hostname in the last field
w : shows who is currently logged in and where they are logged in from.
who : This also shows who is on the server in an shell.
netstat : shows all current network connections.
netstat -an : shows all connections to the server, the source and destination ips and ports.
netstat -rn : shows routing table for all ips bound to the server.
top : shows live system processes in a nice table, memory information, uptime and other useful info. This is excellent for managing your system processes, resources and ensure everything is working fine and your server isn’t bogged down.
top then type Shift + M to sort by memory usage or Shift + P to sort by CPU usage
ps: ps is short for process status, which is similar to the top command. It’s used to show currently running processes and their PID.
A process ID is a unique number that identifies a process, with that you can kill or terminate a running program on your server (see kill command).
ps U username : shows processes for a certain user
ps aux : shows all system processes
ps aux –forest : shows all system processes like the above but organizes in a hierarchy that’s very useful!
touch : create an empty file
touch /home/burst/public_html/404.html : create an empty file called 404.html in the directory /home/burst/public_html/
file : attempts to guess what type of file a file is by looking at it’s content.
file * : prints out a list of all files/directories in a directory
du : shows disk usage.
du -sh : shows a summary, in human-readble form, of total disk space used in the current directory, including subdirectories.
du -sh * : same thing, but for each file and directory. helpful when finding large files taking up space.
wc : word count
wc -l filename.txt : tells how many lines are in filename.txt
cp : copy a file
cp filename filename.backup : copies filename to filename.backup
cp -a /home/burst/new_design/* /home/burst/public_html/ : copies all files, retaining permissions form one directory to another.
cp -av * ../newdir : Copies all files and directories recurrsively in the current directory INTO newdir
mv : Move a file command
mv oldfilename newfilename : Move a file or directory from oldfilename to newfilename
rm : delete a file
rm filename.txt : deletes filename.txt, will more than likely ask if you really want to delete it
rm -f filename.txt : deletes filename.txt, will not ask for confirmation before deleting.
rm -rf tmp/ : recursively deletes the directory tmp, and all files in it, including subdirectories. BE VERY CAREFULL WITH THIS COMMAND!!!
TAR: Creating and Extracting .tar.gz and .tar files
tar -zxvf file.tar.gz : Extracts the file
tar -xvf file.tar : Extracts the file
tar -cf archive.tar contents/ : Takes everything from contents/ and puts it into archive.tar
gzip -d filename.gz : Decompress the file, extract it
ZIP Files: Extracting .zip files shell command
unzip file.zip
Firewall - iptables commands
iptables -I INPUT -s IPADDRESSHERE -j DROP : This command stops any connections from the IP address
iptables -L : List all rules in iptables
iptables -F : Flushes all iptables rules (clears the firewall)
iptables –save : Saves the currenty ruleset in memory to disk
service iptables restart : Restarts iptables
Apache Shell Commands
httpd -v : Outputs the build date and version of the Apache server.
httpd -l : Lists compiled in Apache modules
httpd status : Only works if mod_status is enabled and shows a page of active connections
service httpd restart : Restarted Apache web server
MySQL Shell Commands
mysqladmin processlist : Shows active mysql connections and queries
mysqladmin drop databasenamehere : Drops/deletes the selected database
mysqladmin create databasenamehere : Creates a mysql database
Restore MySQL Database Shell Command
mysql -u username -p password databasename < databasefile.sql : Restores a MySQL database from databasefile.sql
Backup MySQL Database Shell Command
mysqldump -u username -p password databasename > databasefile.sql : Backup MySQL database to databasefile.sql
kill: terminate a system process
kill -9 PID EG: kill -9 431
kill PID EG: kill 10550
Use top or ps ux to get system PIDs (Process IDs)
EG:
| PID | TTY | TIME | COMMAND |
| 10550 | pts/3 | 0:01 | /bin/csh |
| 10574 | pts/4 | 0:02 | /bin/csh |
| 10590 | pts/4 | 0:09 | APP |
Each line represents one process, with a process being loosely defined as a running instance of a program. The column headed PID (process ID) shows the assigned process numbers of the processes. The heading COMMAND shows the location of the executed process.
Putting commands together
Often you will find you need to use different commands on the same line. Here are some examples. Note that the | character is called a pipe, it takes date from one program and pipes it to another.
> means create a new file, overwriting any content already there.
>> means tp append data to a file, creating a newone if it doesn not already exist.
< send input from a file back into a command.
grep User /usr/local/apache/conf/httpd.conf |more
This will dump all lines that match User from the httpd.conf, then print the results to your screen one page at a time.
last -a > /root/lastlogins.tmp
This will print all the current login history to a file called lastlogins.tmp in /root/
tail -10000 /var/log/exim_mainlog |grep domain.com |more
This will grab the last 10,000 lines from /var/log/exim_mainlog, find all occurances of domain.com (the period represents ‘anything’,
– comment it out with a so it will be interpretted literally), then send it to your screen page by page.
netstat -an |grep :80 |wc -l
Show how many active connections there are to apache (httpd runs on port 80)
mysqladmin processlist |wc -l
Show how many current open connections there are to mysql
Posted on janvier 16th, 2007 by jerry.
Categories: Puremessage Unix.
Bonjour à toutes et à tous. Je vous propose ci-dessous un modèle de policy rules de Puremessage UX qui est en production sur mes MX et qu’on retrouve dans d’autres grosses boîtes qui utilisent Sophos Puremessage en antispam et antivirus de messagerie… Vous pouvez adapter les règles en fonction de vos besoins, cette configuration marche plutôt bien. :=)
La règle antispam suivante est utilisée : Lorsque la probabilité de Spam est supérieur à 50% on TAG le sujet
Source code for the policy script (Sieve)
File: /usr/opt/pmx/etc/policy.siv
require “PureMessage”;
# The 'pmx-test-mark' command is needed for the sample messages sent by the pmx-test program to be recognized. For sites running with high-mail volumes it might be a good idea to disable this actions as it prevents the relay tests from running as early as they otherwise could. See 'perldoc pmx-policy' for details about this command.
pmx_test_mark;
# attr NAME=Mail from internal hosts
if pmx_relay :memberof “internal-hosts” {
# The ‘pmx-mlog-watch’ depends on this to know which messages are outgoing and which are not.
pmx_mark1 “i”;
# attr NAME=Reject mail containing viruses
if pmx_virus {
# attr NAME=Allow unscannable messages to pass through
if pmx_virus_cantscan {
keep;
stop;
}
reject “One or more viruses were detected in the message.”;
stop;
}
}
# attr NAME=Mail from external hosts
else {
pmx_add_header “X-PMX-Version” “%%PMX_VERSION%%”;
pmx_mark “Size” “%%MESSAGE_SIZE%%”;
pmx_mark1 “Mail-Entrant-Externe”;
# attr NAME=Discard mail containing empty mail from
if not envelope :comparator “i;ascii-casemap” :all :matches [”from”]
[”*”]
{
pmx_mark1 “Mail-With-Empty-Mail-From”;
discard;
stop;
}
# attr NAME=Discard mail containing viruses
if pmx_virus {
# attr NAME=If no virus found but scan failed
if pmx_virus_cantscan {
# attr NAME=Allow mail with SOPHOS_SAVI_FILE_ENCRYPTED
if pmx_virus_id :comparator “i;ascii-casemap” :contains [”SOPHOS_SAVI_FILE_ENCRYPTED”] {
pmx_replace_header :index 0 “Subject” “[FILE_ENCRYPTED] %%SUBJECT%%”;
pmx_mark1 “Mail-With-Encrypted-File”;
keep;
stop;
}
# attr NAME=Allow mail with SOPHOS_SAVI_FILE_TIMEOUT
if pmx_virus_id :comparator “i;ascii-casemap” :contains [”SOPHOS_SAVI_FILE_TIMEOUT”] {
pmx_replace_header :index 0 “Subject” “[FILE_TIMEOUT] %%SUBJECT%%”;
pmx_mark1 “Mail-With-File-TIMEOUT”;
keep;
stop;
}
# attr NAME=Allow mail with SOPHOS_SAVI_NOT_SUPPORTED
if pmx_virus_id :comparator “i;ascii-casemap” :contains [”SOPHOS_SAVI_NOT_SUPPORTED”] {
pmx_replace_header :index 0 “Subject” “[NOT_SUPPORTED] %%SUBJECT%%”;
pmx_mark1 “Mail-With–File-Not-Supported”;
keep;
stop;
}
# attr NAME=Allow mail with SOPHOS_SAVI_FILE_PART_VOL
if pmx_virus_id :comparator “i;ascii-casemap” :contains [”SOPHOS_SAVI_FILE_PART_VOL”] {
pmx_replace_header :index 0 “Subject” “[FILE_PART_VOL] %%SUBJECT%%”;
pmx_mark1 “Mail-With-File-Part-Vol”;
keep;
stop;
}
# attr NAME=Allow mail with SOPHOS_SAVI_FILE_CORRUPT
if pmx_virus_id :comparator “i;ascii-casemap” :contains [”SOPHOS_SAVI_FILE_CORRUPT”] {
pmx_replace_header :index 0 “Subject” “[FILE_CORRUPT] %%SUBJECT%%”;
pmx_mark1 “Mail-With-File-Corrupt”;
keep;
stop;
}
# attr NAME=Allow mail with SOPHOS_SAVI_SCAN_ABORTED
if pmx_virus_id :comparator “i;ascii-casemap” :contains [”SOPHOS_SAVI_SCAN_ABORTED”] {
pmx_replace_header :index 0 “Subject” “[SCAN_ABORTED] %%SUBJECT%%”;
pmx_mark1 “Mail-With-File-Scan-Aborded”;
keep;
stop;
}
}
pmx_mark1 “Mails-With-Virus”;
discard;
stop;
}
# attr NAME=Quarantine mail containing suspicious attachments with TFT
if pmx_suspect_attachment :tft :inspect_archives {
pmx_mark1 “Mails-With-Suspect-Attachment-TFT”;
pmx_quarantine “SuspectTFT”;
stop;
}
# attr NAME=Quarantine mail containing suspicious attachments
if pmx_suspect_attachment :inspect_archives {
pmx_mark1 “Mails-With-Suspect-Attachment”;
pmx_quarantine “Suspect”;
stop;
}
# attr NAME=Deliver mail from whitelisted hosts and senders
if anyof(pmx_relay :memberof “whitelisted-hosts”,
address :all :memberof “From” “whitelisted-senders”,
envelope :memberof “From” “whitelisted-senders”,
address :all :memberof “From” “whitelisted-senders-per-user”,
envelope :memberof “From” “whitelisted-senders-per-user”)
{
keep;
stop;
}
# attr NAME=Deliver mail to anti-spam opt-outs
if envelope :memberof “to” “anti-spam-optouts” {
keep;
stop;
}
# attr NAME=Quarantine mail from blacklisted hosts and senders
if anyof(pmx_relay :memberof “blacklisted-hosts”,
address :all :memberof “From” “blacklisted-senders”,
envelope :memberof “From” “blacklisted-senders”,
address :all :memberof “From” “blacklisted-senders-per-user”,
envelope :memberof “From” “blacklisted-senders-per-user”)
{
pmx_quarantine “Blacklisted”;
stop;
}
# import levels here
# ########## Antispam Rules #############
# Lorsque le Spam est supérieur à 50 on TAG le sujet
# attr NAME=AntiSpam Rules - Spam ranking over 50%. - Action : Copie to quarantine, Subject Notification, Keep.
if pmx_spam_prob :over 50 {
pmx_mark1 “Spam-With-SpamProb-Over-Than-50″;
pmx_file “Spam”;
pmx_replace_header :index 0 “Subject” “[Suspected Spam with = %%PROB%%] : %%SUBJECT%%”;
keep;
}
# Lorsque le Spam est compris en dessous de 50 nous laissons passer
# attr NAME=AntiSpam Rules - Spam under 50% - Action : Keep message
if pmx_spam_prob :under 50 {
pmx_mark1 “Spam-With-SpamProb-under-50″;
keep;
stop;
}
# attr NAME=Add X-Header and deliver messages
else {
pmx_replace_header :index 0 “X-PerlMx-Spam” “Gauge=%%XGAUGE%%%%IGAUGE%%, Probability=%%PROB%%, Report=’%%HITS%%’”;
stop;
}
}
Comments Off