Sendmail traffic

vladinc

New Member
гледам си статистиките аз и изведнъж забелязвам че има скок в сендмайл трафика.. докато преди го нямаше.. това което ме притеснява е от къде идва.. след като нямаше никакъв преди сега е доста увеличен..
мисълта ми е да не е някой да ми ползва впс-а да праща спам..
пуснах един рооткит чекер.. но ми каза че съм чист.. :shock:
sendmail_mailstats-day.pngsendmail_mailtraffic-day1.png
 
От: Sendmail traffic

Може да имаш форум, WordPress. Когато някой пуска спам коментари, обикновено [настройката по подразбиране е да] се праща известие за написан коментар на e-mail. Освен това може да са те налазили ботове, които се регистрират в WordPress/WordPressMU/BuddyPress или форум (при регистрацията се праща e-mail за потвърждение).
 
От: Sendmail traffic

Виж какви настройки си сложил за коментарите - дали ти праща e-mail когато някой напише коментар. Пусни си някаква защитна стена, която да затваря всички портове, освен тези, които ползваш (SSH, http и други).
 
От: Sendmail traffic

Коментари няма .. аскимет-а се грижи за това.. за защитата верно изключих СЕЛинукс-а защото ми правеше проблеми .. но май май ще трябва да се разровя наново :(
мерси
 
От: Sendmail traffic

Ето ти примерен код за firewall:

Код:
#!/bin/bash
# A sample firewall shell script
IPT="/sbin/iptables"
SPAMLIST="blockedip"
SPAMDROPMSG="BLOCKED IP DROP"
SYSCTL="/sbin/sysctl"
BLOCKEDIPS="/root/scripts/blocked.ips.txt"
 
# Stop certain attacks
echo "Setting sysctl IPv4 settings…"
$SYSCTL net.ipv4.ip_forward=0
$SYSCTL net.ipv4.conf.all.send_redirects=0
$SYSCTL net.ipv4.conf.default.send_redirects=0
$SYSCTL net.ipv4.conf.all.accept_source_route=0
$SYSCTL net.ipv4.conf.all.accept_redirects=0
$SYSCTL net.ipv4.conf.all.secure_redirects=0
$SYSCTL net.ipv4.conf.all.log_martians=1
$SYSCTL net.ipv4.conf.default.accept_source_route=0
$SYSCTL net.ipv4.conf.default.accept_redirects=0
$SYSCTL net.ipv4.conf.default.secure_redirects=0
$SYSCTL net.ipv4.icmp_echo_ignore_broadcasts=1
#$SYSCTL net.ipv4.icmp_ignore_bogus_error_messages=1
$SYSCTL net.ipv4.tcp_syncookies=1
$SYSCTL net.ipv4.conf.all.rp_filter=1
$SYSCTL net.ipv4.conf.default.rp_filter=1
$SYSCTL kernel.exec-shield=1
$SYSCTL kernel.randomize_va_space=1
 
echo "Starting IPv4 Firewall…"
$IPT -F
$IPT -X
$IPT -t nat -F
$IPT -t nat -X
$IPT -t mangle -F
$IPT -t mangle -X
 
# load modules
modprobe ip_conntrack
 
[ -f "$BLOCKEDIPS" ] && BADIPS=$(egrep -v -E "^#|^$" "${BLOCKEDIPS}")
 
# interface connected to the Internet
PUB_IF="eth0"
 
#Unlimited traffic for loopback
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT
 
# DROP all incomming traffic
$IPT -P INPUT DROP
$IPT -P OUTPUT DROP
$IPT -P FORWARD DROP
 
if [ -f "${BLOCKEDIPS}" ];
then
# create a new iptables list
$IPT -N $SPAMLIST
 
for ipblock in $BADIPS
do
   $IPT -A $SPAMLIST -s $ipblock -j LOG --log-prefix "$SPAMDROPMSG "
   $IPT -A $SPAMLIST -s $ipblock -j DROP
done
 
$IPT -I INPUT -j $SPAMLIST
$IPT -I OUTPUT -j $SPAMLIST
$IPT -I FORWARD -j $SPAMLIST
fi
 
# Block sync
$IPT -A INPUT -i ${PUB_IF} -p tcp ! --syn -m state --state NEW  -m limit --limit 5/m --limit-burst 7 -j LOG --log-level 4 --log-prefix "Drop Sync"
$IPT -A INPUT -i ${PUB_IF} -p tcp ! --syn -m state --state NEW -j DROP
 
# Block Fragments
$IPT -A INPUT -i ${PUB_IF} -f  -m limit --limit 5/m --limit-burst 7 -j LOG --log-level 4 --log-prefix "Fragments Packets"
$IPT -A INPUT -i ${PUB_IF} -f -j DROP
 
# Block bad stuff
$IPT  -A INPUT -i ${PUB_IF} -p tcp --tcp-flags ALL FIN,URG,PSH -j DROP
$IPT  -A INPUT -i ${PUB_IF} -p tcp --tcp-flags ALL ALL -j DROP
 
$IPT  -A INPUT -i ${PUB_IF} -p tcp --tcp-flags ALL NONE -m limit --limit 5/m --limit-burst 7 -j LOG --log-level 4 --log-prefix "NULL Packets"
$IPT  -A INPUT -i ${PUB_IF} -p tcp --tcp-flags ALL NONE -j DROP # NULL packets
 
$IPT  -A INPUT -i ${PUB_IF} -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
 
$IPT  -A INPUT -i ${PUB_IF} -p tcp --tcp-flags SYN,FIN SYN,FIN -m limit --limit 5/m --limit-burst 7 -j LOG --log-level 4 --log-prefix "XMAS Packets"
$IPT  -A INPUT -i ${PUB_IF} -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP #XMAS
 
$IPT  -A INPUT -i ${PUB_IF} -p tcp --tcp-flags FIN,ACK FIN -m limit --limit 5/m --limit-burst 7 -j LOG --log-level 4 --log-prefix "Fin Packets Scan"
$IPT  -A INPUT -i ${PUB_IF} -p tcp --tcp-flags FIN,ACK FIN -j DROP # FIN packet scans
 
$IPT  -A INPUT -i ${PUB_IF} -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j DROP

# Allow full outgoing connection but no incomming stuff
$IPT -A INPUT -i ${PUB_IF} -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPT -A OUTPUT -o ${PUB_IF} -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
 
# Allow ssh
$IPT -A INPUT -i ${PUB_IF} -p tcp --destination-port 22 -j ACCEPT

 
# Allow http / https (open port 80 / 443)
$IPT -A INPUT -i ${PUB_IF} -p tcp --destination-port 80 -j ACCEPT
$IPT -A INPUT -i ${PUB_IF} -p tcp --destination-port 443 -j ACCEPT


# Allow webmin 
$IPT -A INPUT -i ${PUB_IF} -p tcp --destination-port 10000 -j ACCEPT
# usermin
$IPT -A INPUT -i ${PUB_IF} -p tcp --destination-port 20000 -j ACCEPT
 
# allow incomming ICMP ping pong stuff
$IPT -A INPUT -i ${PUB_IF} -p icmp --icmp-type 8 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
#$IPT -A OUTPUT -o ${PUB_IF} -p icmp --icmp-type 0 -m state --state ESTABLISHED,RELATED -j ACCEPT
 
# Allow port 53 tcp/udp (DNS Server)
#$IPT -A INPUT -i ${PUB_IF} -p udp --dport 53 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
#$IPT -A OUTPUT -o ${PUB_IF} -p udp --sport 53 -m state --state ESTABLISHED,RELATED -j ACCEPT
 
#$IPT -A INPUT -i ${PUB_IF} -p tcp --destination-port 53 -m state --state NEW,ESTABLISHED,RELATED  -j ACCEPT
#$IPT -A OUTPUT -o ${PUB_IF} -p tcp --sport 53 -m state --state ESTABLISHED,RELATED -j ACCEPT
 
# Open port 110 (pop3) / 143
#$IPT -A INPUT -i ${PUB_IF} -p tcp --destination-port 110 -j ACCEPT
#$IPT -A INPUT -i ${PUB_IF} -p tcp --destination-port 143 -j ACCEPT
 
##### Add your rules below ######
#
#
##### END your rules ############
 
# Do not log smb/windows sharing packets - too much logging
$IPT -A INPUT -p tcp -i ${PUB_IF} --dport 137:139 -j REJECT
$IPT -A INPUT -p udp -i ${PUB_IF} --dport 137:139 -j REJECT
 
# log everything else and drop
$IPT -A INPUT -j LOG
$IPT -A FORWARD -j LOG
$IPT -A INPUT -j DROP
 
exit 0

Внимавай, защото този скрипт блокира DNS и pop3. Ако искаш да ги разрешиш, махни "#" от съответните редове. Блокира и всичко останало, което не е изрично разрешено. Изходящия трафик обаче не се блокира, само входящия е блокиран (за всички портове, освен изрично изброените като разрешени). FTP също е блокиран, не би трябвало изобщо да ползваш този остарял протокол. За прехвърляне на файлове се ползва SSH (sftp). Блокират се и IP адресите от файла /root/scripts/blocked.ips.txt (ако има такъв файл).
 
Ехее, чак firewall, който всъщност нищо няма да направи за да спре изпращането на спам, генериран от машината ти през някоя форма или скрипт.

Първото нещо, което трябва да направиш е да прегледаш какви мейли се пращат през машината ти. Това можеш да направиш като прегледаш /var/log/maillog

В този лог файл се описва всеки получен или изпратен мейл. От него можеш да разбереш какви мейли и кой ги праща, което ще ти помогне да се ориентираш дали е спам или нормални мейли от някоя твоя услуга.
 
От: Sendmail traffic

Код:
Dec 26 11:55:02 5 sendmail[27313]: qBQGt1Ho027313: from=<[email protected]>, size=924, class=0, nrcpts=1, msgid=<[email protected]>, proto=ESMTP, daemon=MTA, relay=localhost [127.0.0.1]
Dec 26 11:55:02 5 sendmail[27269]: qBQGt1Sd027269: to=root, ctladdr=root (0/0), delay=00:00:01, xdelay=00:00:01, mailer=relay, pri=30677, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (qBQGt1Ho027313 Message accepted for delivery)
Dec 26 11:55:02 5 sendmail[27327]: qBQGt1Ho027313: to=<[email protected]>, ctladdr=<[email protected]> (0/0), delay=00:00:00, xdelay=00:00:00, mailer=local, pri=31118, dsn=2.0.0, stat=Sent

ей с това е пълно.. :shock:
 
Случайно 5.135.206.226 да е IP адреса на същата машина? Изглеждат ми като писма генерирани от root до root - видя ли съобщенията, които е получил root акаунта?
 
От: Sendmail traffic

Може да е от много неща. От както си си взел VPS карашм целия форум да гледа на боб, леща, кафе, стъклено кълбо и прочие. Тази машина логове няма ли? Влез в /var/log директорията и изпълни командата

Код:
 ls -al
за да видим какво имаш като логове.

Друга възможна причина е някоя задача с отложен старт да генерира този трафик - виж, че е ритмичен на равни интервали. Какво получаваш от командата:

Код:
 crontab -l -u root
 
От: Sendmail traffic

От както си си взел VPS карашм целия форум да гледа на боб, леща, кафе, стъклено кълбо и прочие.

ми карам .. защо да не .. като не знаеш питаш..

crontab -l -u root е празно

за /var/log има маиллог като съдържа същото което съм постнал по-горе..
майче е майлове от руут до руут .. ам за какво ги пуска .. ще видя ако мога да я изключа тази функция
 
От: Sendmail traffic

ми карам .. защо да не .. като не знаеш питаш..

:D или четеш и се учиш, а може и да наемеш някой да ти го оправи. Хем искаш помощ, хем не даваш изхода от командата с директорията с логове, не знам какво тайно имаш там, след като съвсем безотговорно си плесна IP адреса на всеобщо внимание.

Код:
 ls -al /var/spool/cron/
 
От: Sendmail traffic

ам има доста неща.. не че е тайна .. съвсем напротив.. извинявам се

Код:
[root@5 ~]# ls -al /var/spool/cron/
total 16
drwx------ 2 root root 4096 Dec  2 11:38 .
drwxr-xr-x 9 root root 4096 Dec  2 11:37 ..
-rw------- 1 root root   74 Dec  2 11:38 root
[root@5 ~]#

Код:
[root@5 log]# ls -la
total 10528
drwxr-xr-x 12 root   root     4096 Dec 26 04:02 .
drwxr-xr-x 20 root   root     4096 Dec 10 11:00 ..
-rw-------  1 root   root    22023 Sep 13 11:28 anaconda.syslog
-rw-------  1 root   root    32428 Sep 13 11:28 anaconda.xlog
-rw-------  1 root   root        0 Dec 24 04:02 boot.log
-rw-------  1 root   root        0 Dec 16 04:02 boot.log.1
-rw-------  1 root   root        0 Dec  9 04:02 boot.log.2
-rw-------  1 root   root        0 Nov 26 14:34 boot.log.3
-rw-------  1 root   utmp   342528 Dec 23 05:24 btmp
-rw-------  1 root   root   145479 Dec 26 14:25 cron
-rw-------  1 root   root   385886 Dec 24 04:02 cron.1
-rw-------  1 root   root   371212 Dec 16 04:02 cron.2
-rw-------  1 root   root   151127 Dec  9 04:02 cron.3
drwxr-xr-x  2 lp     sys      4096 Dec 24 04:02 cups
-rw-r--r--  1 root   root    12498 Dec 23 15:59 dmesg
-rw-------  1 root   root    12024 Dec 10 10:32 faillog
drwxr-xr-x  2 root   root     4096 Feb 22  2012 gdm
drwx------  2 root   root     4096 Dec 24 04:02 httpd
-rw-r--r--  1 root   root   146292 Dec 26 14:27 lastlog
drwxr-xr-x  2 root   root     4096 Nov 28 02:54 mail
-rw-------  1 root   root   514860 Dec 26 14:25 maillog
-rw-------  1 root   root   254061 Dec 24 03:55 maillog.1
-rw-------  1 root   root    22743 Dec 15 16:56 maillog.2
-rw-------  1 root   root    16351 Dec  3 19:22 maillog.3
-rw-------  1 root   root       42 Dec 24 04:02 messages
-rw-------  1 root   root  1079690 Dec 23 16:00 messages.1
-rw-------  1 root   root  2246626 Dec 16 03:56 messages.2
-rw-------  1 root   root  2564588 Dec  9 04:01 messages.3
-rw-------  1 root   root    37328 Dec 23 16:01 monit
drwxrwxr-x  2 apache munin    4096 Dec 26 04:02 munin
-rw-r-----  1 mysql  mysql   69560 Dec 23 16:00 mysqld.log
drwx------  2 nx     root     4096 Nov 28 03:18 nx
drwxr-xr-x  2 root   root     4096 Sep 13 11:27 pm
drwx------  2 root   root     4096 Jan 20  2009 ppp
drwxr-xr-x  2 root   root     4096 Dec  3 04:02 prelink
-rw-r--r--  1 root   root    23912 Dec 26 04:02 rpmpkgs
-rw-r--r--  1 root   root    23709 Dec 21 04:02 rpmpkgs.1
-rw-r--r--  1 root   root    23709 Dec 15 04:02 rpmpkgs.2
-rw-r--r--  1 root   root    21886 Dec  8 04:02 rpmpkgs.3
drwxr-xr-x  2 root   root     4096 Dec 26 00:00 sa
-rw-r--r--  1 root   root    62161 Nov 28 03:13 scrollkeeper.log
-rw-------  1 root   root   217611 Dec 26 14:28 secure
-rw-------  1 root   root   727983 Dec 24 04:01 secure.1
-rw-------  1 root   root   726014 Dec 16 04:01 secure.2
-rw-------  1 root   root   134925 Dec  9 02:58 secure.3
-rw-------  1 root   root        0 Dec 24 04:02 spooler
-rw-------  1 root   root        0 Dec 16 04:02 spooler.1
-rw-------  1 root   root        0 Dec  9 04:02 spooler.2
-rw-------  1 root   root        0 Nov 26 14:34 spooler.3
-rw-rw-r--  1 root   utmp   213120 Dec 26 14:27 wtmp
-rw-r--r--  1 root   root    34713 Dec 21 10:37 yum.log
[root@5 log]#
 
От: Sendmail traffic

Явно не е спам. Можеш да прочетеш някой от мейлите в /var/spool/mail/root и да разбереш какво съдържат, респективно какво ги генерира.
 
От: Sendmail traffic

Поща към роот обикновено е скрипт, крон или грешно конфигуриран сървър. Ако е крон, който пускам аз, обикновено просто спирам mail report-a на crond за него (или там какъвто cron manager ползвам).

Нито си написал какво има на vps-a нито нищо, нямаме кристална топка.
 
От: Sendmail traffic

Поща към роот обикновено е скрипт, крон или грешно конфигуриран сървър. Ако е крон, който пускам аз, обикновено просто спирам mail report-a на crond за него (или там какъвто cron manager ползвам).

Нито си написал какво има на vps-a нито нищо, нямаме кристална топка.

Прав си. Мързи те да четеш. Виж по-горе какво е написано за ls -a /var/spool/cron/ :D
 

Горе