OVH Community, your new community space.

Postfix désactivé mais détection de spam


AnonymousCoward
10/03/2015, 12h06
Chez moi, les emails envoyés par PHP sur un serveur Linux sont envoyés via la commande /usr/sbin/sendmail -t -i , configuration par défaut dans le php.ini .

Or, avec Postfix d'installé, la commande sendmail fait appel à la commande postdrop ( /usr/sbin/postdrop ). Si je désactive l'accès aux users de base à la commande postdrop avec un chmod o-x /usr/sbin/postdrop , les utilisateurs non root ne peuvent plus envoyer de mail via la commande sendmail, y compris les scripts PHP :

Code:
moi@babasse:~$ ./sendEMail.sh
sendmail: fatal: execvp /usr/sbin/postdrop: Permission denied
sendmail: warning: command "/usr/sbin/postdrop -r" exited with status 1
sendmail: fatal: moi@babasse.mondomaine.com(1000): unable to execute /usr/sbin/postdrop -r: Success
Après, rien ne vous empêche de bloquer également les ports 25, 465 et 587 . Mais en local via la commande sendmail, Postfix n'utilise pas de connexion TCP, contrairement à Exim.


Sinon, une manière un peu plus propre de faire cela serait de configurer postfix pour interdire à certains utilisateurs d'utiliser la commande sendmail / postdrop. Voir authorized_submit_users .

--
AnonymousCoward

Polnareff
07/03/2015, 21h01
Pour être fixé faut faire un netstat -tanpu on verra bien par où ça passe.

Tchupa
02/03/2015, 15h41
Bonjour,

effectivement quand je coupe apache sa s'arrête , j'ai réussi a trouver d'ou provenez le problème, j'ai plus qu'a vérifier mes scripts a cette endroit afin de débusquer le script malveillant.

Merci pour votre aide.

Cordialement Tchupa.

nowwhat
28/02/2015, 22h43
Citation Envoyé par janus57
...
qui dit qu'il passe par le port 25 ?
Il pourrait très bien utiliser le port 587 ou 465 vers un serveur externe.
Sinon le mieux est de trouver et corriger la faille puis nettoyer le tout.
Comment le mail entre dans le MTA est une question.
Injection par localhost, par le 587, le 465, ou même, quand il s'agit d'un open relay, par le 25.
Mais osef, le MTA (postfix) va déposer tout mail vers un serveur mail "d'ailleurs" (== destination) par son porte '25'.
Or, cette porte-destination est bloqué par le parafeu - la régle de BBR** (porte 25 destination == DROP)

Ceci dit, le localhost (127.0.0.1 ou ::1) porte 25 sur mon serveur, il est non-servi. Même mieux, le script (service) qui large un mail par cet entrée, j’aurais un mail avec son nom, age, sexe et numéro de sécu. Car je sais que ce n'est pas un script à moi ..... donc mayday -mayday .....
C'est du submission (587) partout - ce n'est pas une solution infaillible, mais disons que rajoute un seuil de complexité pour le jour quand ça foire ....



** BBR: postfix n'est pas con. Pense à proposer aussi une régle pour le IPv6
Pour moi, tout continu de fonctionner (plus ou moins) car postfix préfère IPv6 au dessus de IPv4 , et en plus beaucoup de serveurs mails 'grand publique' (pardon: le free-mails) ont un mail host avec un IPv6.
De plus, j'ai l'impression que même avec un R3 le IPv6 n'est pas bloqué pour postfix, de plus, un IPv6 est disponible sur le serveur, ... donc .....
/sbin/ip6tables -A OUTPUT -p tcp -m tcp --dport 25 -j DROP
pour tout couper ....

janus57
28/02/2015, 19h52
Bonjour,

qui dit qu'il passe par le port 25 ?

Il pourrait très bien utiliser le port 587 ou 465 vers un serveur externe.

Sinon le mieux est de trouver et corriger la faille puis nettoyer le tout.

Cordialement, janus57

nowwhat
28/02/2015, 19h16
Citation Envoyé par Tchupa
...
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:25
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:25
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:25
Entre temps, t'as 3 fois la même règle.

Pense à ceci:
iptables -L -nv
ce qui te donne combien de fois une règle à été appliqué - donc, entre autre, pour toi, combien de fois un processus à tenté de se connecter à un serveur mail ailleurs.

Citation Envoyé par Tchupa
...Et j'ai pas d'erreur avec la deuxième commande
Pas grave.
La règle que t'as mise est bon - j'ai testé, mon postfix n'arrive plus à sortir des mails vers d'autres serveurs (leur porte 25) dès qu'il est mise en place.

Y'as aussi pu tester avec
telnet -4 gmail-smtp-in.l.google.com 25
T'auras un time-out sur le champs.

Citation Envoyé par Tchupa
...Oui je sais que je dois chercher d'ou vient la faille mais je voudrais d'abord arrêter hémorragie.
QUI te dit que le spammer 'dans ton serveur' utilise postfix ?
Les "trojans-spammeurs" ont souvent leur propre mini-MATA intégré. Ils n'ont pas tous besoin de ton MTA (postfix).

Indice: arrêtre ton serveur web, et t'as un forte chance que serveur spam plus .....
Dès que tu allume le serveur web, ton queue mail va se remplir ....

Tchupa
28/02/2015, 13h37
Voici les règles ip table:

Code:
[root@ns3262521 ~]# iptables -L -n
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
fail2ban-ProFTPD  tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:21
fail2ban-SSH  tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:22
fail2ban-dovecot  tcp  --  0.0.0.0/0            0.0.0.0/0           multiport dports 110,143

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:25
DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:25
DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:25

Chain fail2ban-ProFTPD (1 references)
target     prot opt source               destination
RETURN     all  --  0.0.0.0/0            0.0.0.0/0

Chain fail2ban-SSH (1 references)
target     prot opt source               destination
RETURN     all  --  0.0.0.0/0            0.0.0.0/0

Chain fail2ban-dovecot (1 references)
target     prot opt source               destination
RETURN     all  --  0.0.0.0/0            0.0.0.0/0
Et j'ai pas d'erreur avec la deuxième commande

Oui je sais que je dois chercher d'ou vient la faille mais je voudrais d'abord arrêter hémorragie.

BBR
28/02/2015, 13h23
Faudrait surtout chercher pourquoi ton serveur envoie du spam : hack, etc.

BBR
28/02/2015, 13h22
Code:
iptables -L -n
pour voir tes règles iptables
et tape ceci toujours en ssh
Code:
echo "salut " | mail -s "tester mon envoi de mail" web-knBnt0@mail-tester.com
en principe tu devrais avoir une erreur puisque le port 25 est fermé en sortie

Tchupa
28/02/2015, 12h48
Bonjour BBR,

je viens d’exécuter la commande en SSH mais rien n'indique que cela a été pris en compte.

Tchupa.

BBR
28/02/2015, 12h37
en ssh, tu le fermes :
Code:
/sbin/iptables -A OUTPUT -p tcp -m tcp --dport 25 -j DROP

Tchupa
28/02/2015, 12h04
Salut,

non j'ai pas l'impression d'avoir un port 25 en écoute.

Il y a t-il un moyen de vérifier si celui-ci est bien désactivé?

Merci.

Tchupa.

Freemaster
24/02/2015, 16h00
Citation Envoyé par Tchupa
Normalement si postfix est désactivé , on ne devrait pas pouvoir envoyer des mails à partir de mon serveur ?
si tu lances la commande netstat -ltn, as-tu un port 25 en écoute ?

sinon tu peux vider la queue de postfix avec : postsuper -d ALL

Tchupa
24/02/2015, 14h09
Bonjour,

j'ai postfix qui est désactivé sur mon kimsufi qui tourne avec la release 3 de ovh mais je reçois quand même des avertissements de détection de spam de la part d'ovh.

Et quand je vérifie la queue de postfix effectivement il y 'a des e-mails.

Normalement si postfix est désactivé , on ne devrait pas pouvoir envoyer des mails à partir de mon serveur ?

Merci.

Cordialement.