Cron : purger les spams - Codes et scripts - Linux et OS Alternatifs
Marsh Posté le 19-12-2007 à 18:04:02
1. as tu pensé à lire les manpages notament man 5 crontab : http://linux.die.net/man/5/crontab
2. /nospam.sh : ton script est à la racine de ton système de fichier ?
3. rm /var/mail/kinder : tu es sûr de vouloir effacer tous les mails de l'utilisateur kinder ?
Marsh Posté le 19-12-2007 à 21:45:39
o'gure a écrit : 1. as tu pensé à lire les manpages notament man 5 crontab : http://linux.die.net/man/5/crontab |
1.Le probléme des man c'est qu'il ne donne que des exemples et il faut soit meme comprendre le script
Dans le lien que tu m'as donné
Code :
|
ça fait quoi ? $HOME/bin/daily.job ça fait tourner le script daily.job et >> ... 2>&1 ça ve dire que ça supprime
< ça veut dire importer et > exporter (enregistrement) ?
2.bah justement j'ai mis ce qui pouvait etre bon mais pas le chemin complet. Il faut le mettre ou normalement ?
3.et kinder c'est un utilisateur lambda
Marsh Posté le 19-12-2007 à 21:55:45
Bon, il te faut les bases.
http://stardust.3.free.fr/guest/ligne-de-commande.pdf
http://guidelinux.org/
http://abs.traduc.org/
http://www.epons.org/shell-bash-variables.php
Marsh Posté le 20-12-2007 à 10:34:19
Merci sputnick.
c'est ce que je recherchais, je vais pouvoir mieux comprendre les scripts grace au dernier lien
http://www.epons.org/shell-bash-variables.php
Sinon fallait taper quoi sur google pour trouver ça Shell ?
Parce que j'ai tapé cron et crontab avec man aussi devant mais il y avait toujours les memes résultats
Si tu as d'autres liens n'hésite pas
Marsh Posté le 20-12-2007 à 17:23:05
Pour tester j'ai mis dans /etc/crontab
25 16 * * * root rm /var/log/maillog
Quand je vais dans /var/log/cron la commande est bien executé mais ça efface completement le fichier maillog et si c'est le cas pour les utilisateurs mail c'est pas bon puisque je veux juste mettre la taille du repertoire a 0 en fait effacer les spams ou mails qui prennent de la place
Comment effacer comme je le veux ?
Par le imanager je vois bien la taille du repertoire spams mais quand je vais sur le vrai serveur mutualisé en ssh dessus rien
avec ls -la qui affiche les fichier cachés je vois la taille mais elle est plus petite que celle mis sur imanager
Est-ce normal ?
imanager
98288238 Bytes = 93Mo environ
En ssh sur le repertoire puis ls -la
drwxr-xr-x 3 epams espams 512 Nov 14 2006 .
drwxr-xr-x 308 root wheel 6656 Dec 12 12:04 ..
-rw------- 1 espams espams 817 Nov 14 2006 .cshrc
-rw------- 1 espams espams 256 Nov 14 2006 .login
-rw------- 1 espams espams 165 Nov 14 2006 .login_conf
-rw------- 1 espams espams 371 Nov 14 2006 .mail_aliases
-rw------- 1 espams espams 331 Nov 14 2006 .mailrc
-rw------- 1 espams espams 824 Nov 14 2006 .profile
-rw------- 1 espams espams 852 Nov 14 2006 .shrc
drwx------ 2 spam espams 512 May 23 2007 .spamassassin
Les nombres que j'ai mis en gras sont bien la taille
Bref je comprends pas trop si quelqu'un peut m'expliquer
(Je peux passer par le imanager pour mettre le repertoire a 0 mais je prefere faire un cron car je n'ai pas envie de faire ça toutes les semaines en plus si j'oublie il va grossir de plus en plus)
Marsh Posté le 21-12-2007 à 10:52:14
ls -la ne donne pas la taille de ce qui se trouve dans le répertoire. C'est simplement la taille de l'objet qui représente un répertoire pour ton filesystem, c'est à dire en gros un truc une liste de fichiers. Cette taille est plus où moins liée au nombre de fichiers dans ton répertoire, mais pas exactement, et pas à la taille de ces fichiers.
Pour avoir la "taille d'un répertoire" au sens où tu l'endtends, tu peux faire un truc du genre :
find . -type d -maxdepth 1 -exec du -sk {} \; |
Marsh Posté le 25-12-2007 à 19:35:15
pulsarghost a écrit : Pour tester j'ai mis dans /etc/crontab |
J'ai du mal à piger ce que tu écris ! Si tu reformulais en plus clair ?
Mettre la taille d'un répertoire à 0, pour moi c'est faire un rm * dedans ! Pas pour toi ?!
Tu veux virer les spams, mais tu fais un rm sur maillog qui est apparament un fichier de log ! Pas très bien suivi.. les spams sont stockés dans le fichiers de log ??!!
Les 930 Mo sont dans le sous-répertoire caché .spamassassin. Pour avoir la taille de ce répertoire, tapes: du -ks .spamassassin
Marsh Posté le 26-12-2007 à 10:56:00
Joyeuses fetes pour commencer.
Merci d'avoir repondu.
Je fais des test sur le serveur de simulation vmware pour ne pas faire de conneries sur le vrai serveur
En fait, je voulais juste tester sur un fichier ou repertoire mais le problème c'est que pour ce qui concerne les mails ce n'est pas du tout pareil
Je veux juste supprimer les spams comme par le imanager mais avec un cron pour le faire automatiquement chaque semaine.
Sinon comment on peut simuler un spams ?
mail -u root ... ?
Marsh Posté le 26-12-2007 à 11:59:53
pulsarghost a écrit : Joyeuses fetes pour commencer. |
T'es responsable d'un vrai serveur de mail, sur un FreeBSD ?
Marsh Posté le 26-12-2007 à 11:59:56
pulsarghost a écrit : Je veux juste supprimer les spams comme par le imanager mais avec un cron pour le faire automatiquement chaque semaine. |
Bonjour,
Pour envoyer un mail sous Unix, tu peux en effet utiliser la commande mail :
DESTINATAIRES="mami@hardware.fr, papi@grc.com" |
tu peux remplacer le echo par un cat sur un fichier texte qui contuient le corps de ton mail..
Quant à envoyer des spams.. le spam est juste un mail comme les autres. C'est les règles de ton anti-spam (qui peuvent être très subjectives) qui en font un mail malvenu !
Donc si une règle de ton anti-spam dit que si un mail contient le mot "Bonjour" alors il est considéré comme spam, alors le mail envoyé par la commande ci-haut attérira dans le répertoire spam.
Maintenant en ce qui concerne le néttoyage manuel des spams: je ne sais pas ce que c'est que le imanager, mais de deux choses l'une:
- ou bien les mails classées comme spam par ce logiciels attérrissent dans un répertoire donné (éventuellement paramétrable par l'utilisateur), et dans ce cas, il suffit de faire :
5 0 * * * (cd le/répertoire/qui/va/bien/; rm -rf *) |
- ou alors ce n'est pas le cas (ou alors les spams sont stockés dans un format spécial de sorte que tout virer comme une bête peut casser le fonctionnement du soft, bref), on ne peux virer les spams proprement qu'en utilisant imanager.. Dans ce cas:
* ou bien le logiciel ne permet de le faire qu'en cliquant sur un bouton. Là c'est mort ! Pas de possibilité de crontabler le néttoyage ! (mais ça m'étonnerais d'un logiciel Unix !)
* ou alors il propose une interface cli, du genre : imanager --delete-all-spam --user pulsarghost@localhost ..
et là, évidemment, c'est cette commande là qu'il faut mettre en crontab !
5 0 * * * /bin/imanager --delete-all-spam --user pulsarghost@localhost --report-to=root@localhost .. |
Bonne chance !
Marsh Posté le 26-12-2007 à 13:48:28
e_esprit a écrit : T'es responsable d'un vrai serveur de mail, sur un FreeBSD ? |
on dirait
Marsh Posté le 26-12-2007 à 14:02:52
j'ai édité le titre, ça me piquait les yeux
Marsh Posté le 26-12-2007 à 15:19:54
Merci pour ta réponse p-seeker23, je vais tester ça.
bah en fait l'entreprise sous traite tout ou presque donc j'essaye de faire moi meme des trucs.
Je suis en alternance dans une très petite agence de communication. De plus mon tuteur n'est pas responsable réseau
Comme je l'ai deja dit je peux le faire par le imanager mais je prefererais faire un cron pour le faire toutes les semaines si possible
Tu as eu raison d'éditer le titre
Marsh Posté le 26-12-2007 à 15:29:23
Oui non mais c'est très bien de vouloir faire des trucs par toi-même, mais faire ce genre de manip sur un serveur mail de prod, que tu ne maitrises pas, pas plus que l'OS en dessous, c'est très risqué.
Garre aux effets de bords
Marsh Posté le 26-12-2007 à 15:48:34
s/effets de bord/catastrophe
Marsh Posté le 26-12-2007 à 16:10:47
Je sais c'est pourquoi je ne fais rien tant que je ne suis pas sur
Marsh Posté le 26-12-2007 à 16:29:55
Ben deja faudrait savoir quel est le MDA utilisé sur ton serveur.
Faudrait aussi savoir comment sont stockés/mis de coté les spams :
- gobalement
- par utilisateur,
Et si tu précisait ce qu'est aussi imanager parce que je ne connais pas
Ca serait pas plus simple (et sûr surtout) de demander au sous-traitant ?
Parce que sincèrement, admin de messagerie c'est un métier (enfin une partie), ca ne s'improvise pas ou tu vas au devant de très gros dégats (et de nos jours les problèmes de messageries, cela peut etre très bloquant dans une boite).
Que tu tentes sur une VM avant, c'est très bien, mais ca ne t'evitera pas d'avoir des surprises une fois le truc en prod, si tu ne connais pas très bien les outils utilisés (MTA, MDA, etc...) et leur fonctionnement
Marsh Posté le 26-12-2007 à 17:12:32
Merci pour tes réponses
Bah en fait imanager c'est une interface web permettant pas mal de chose comme la creation de compte FTP avec login et mdp ainsi que la purge des spams il faut se connecter en root et mettre enlever dans la boite mail de l'utilisateur sur lequel on veut enlever les mails.
Bref c'est plus parlant en image ça ressemble a ça
On peut dire que c'est une interface web qui permet de faire les memes choses qu'en ligne de commandes mais en clickant
Le problème c'est le support il repond à coté des questions ou donne des solutions et nous disent de le faire nous meme si on arrive pas prestation payante il n'interviennent seulement quand le serveur est down ou qu'il y a un gros problème 3 fois genre une appli qui pompe 95% du CPU
Le pire c'est une fois mon tuteur a demandé a faire installer un logiciel et le serveur a planté du a des problèmes d'incompatibilité
Alors voila quoi
Marsh Posté le 27-12-2007 à 11:06:07
Ne fait rien sur le serveur de prod, sauf à avoir un ordre clair (et tracé) de le faire !
Je suis à 100% pour l'esprit d'intiative et de découverte, mais crois-en mon expérience..
S'il y a le moindre problème sur le serveur de prod après ton intervention, même si c'est à des années lumières de ce que tu as fait (genre innondation dans le local technique ou attaque d'Al Qaida), ce sera de ta faute quand même ! Je sais que c'est dur à croire pour celui qui ne s'est pas déjà fait mordre, mais crois-moi..
Fait joujou sur la machine virtuelle et éclate-toi bien ! Mais n'introduit jamais rien de nouveau sur le serveur de prod sans l'approbation (tracée!) d'un chef.. je suis passé par là..
Marsh Posté le 27-12-2007 à 12:43:48
Merci pour tes conseils et ne t'inquiete pas trop je suis assez prudent.
Pour info j'ai deja fait un stage de 2 mois sur FreeBSD je devais mettre en place un outils de supervision appelé Nagios avec apache pour l'interface web.
D'ailleurs j'avais d'abord demander a faire sur un serveur de test avant de le mettre sur celui de prod.
C'était une masse à faire étant noob sur FreeBSD mais grace au forum et à la perseverance j'ai réussi.
On l'a ensuite mis sur le serveur de prod mon tuteur a du faire des modifs depuis.
Marsh Posté le 27-12-2007 à 14:34:42
oui, ça aussi je connais
Tout va bien dans l'équipe et l'ambiance est sympa et tout.. jusqu'au jour où il faut trouver un fusible.. devine qui serait le mieux placé pour sauter ?
Malheureusement celui qui a le plus de curiosité, de sens de l'initiative.. qu'on qualifira quand ça chauffe par: il a une démangeaison au niveau des mains, il n'arrête de tout triture dans tous les sens..
Mais je n'insiste pas. Il FAUT (malheureusement) une expérience pour piger.. c'est un autre truc que j'ai compris avec le temps..
Marsh Posté le 22-02-2008 à 22:53:30
pulsarghost a écrit : Merci pour tes conseils et ne t'inquiete pas trop je suis assez prudent. |
Je confirme
Marsh Posté le 19-12-2007 à 17:48:25
Bonjour,
Je suis sur VMware sous FreeBSD 6.2 et je tente de faire un cron pour effacer les spams dans certains repertoires
Je tape cette commande pour vérifier que cron est la
ps -aux | grep cron
684 ?? Is 0:00.05 /usr/sbin/cron -s
1008 p0 R+ 0:00.00 grep cron
Par contre je suis noob pour ce qui est des script et je voudrais comme BigBen faire un nettoyage spam
Je veux que ce cron soit fait toutes les semaine
Voici mon début de script
minutes heures jour mois semaine
* /nospam.sh
#!/bin/sh
rm /var/mail/spam && rm /var/mail/kinder > /dev/null
# > /dev/null J'ai compris que cela permettait de ne pas se faire envoyer de mail quand c'est fait
chmod +x nospam.sh
J'ai beaucoup cherché et aucun site n'explique comment faire un script pour cron genre je vois souvent cela
$1>2 ou des truc du genre
Quelqu'un pour eclaircir ces points obscurs ?
Message édité par black_lord le 26-12-2007 à 14:02:34