Monday, March 26, 2007

DomainKeys - Спамаас хамгаалах арга

Yahoo болон Gmail-рүү явуулсан мэйлүүд BULK-руу орчихоод байвал DomainKey-г хэрэглэж эхлэх цаг болсоных ч байж мэднэ!

Саяхнаас yahoo.co.jp домэйнтой мэйл хаягтай болсон билээ. Хэрэглэж байхдаа нэг анзаарвал зарим мэйл From талбартаа, мэйл хаягныхаа доод талд "
DomainKeys は、このメールが yahoo.com から送信されたことを確認しました。" гэсэн бичиг байна. Монголоор "Энэ мэйл yahoo.com-с ирсэн болохыг DomainKeys шалган тогтоов ." гэсэн үг л дээ. Монголд байхад л DomainKeys гээд яригдаад байсан, нээрээ ингээд хэрэглээд эхэлчихсэн юм байх даа гэсэн бодол толгойд орж ирж байна. Wiki-дээд орхисон Yahoo бүр 2004 оноос хойш DomainKeys ашиглах болсон гэж байна. Хэрэв тийм бол яагаад анзаарайгүй байдаг билээ?...

yahoo.com-ын мэйлүүдэд From хэсэгт мэйл хаягны өмнө "дугтуйн дээрх түлхүүрний тэмдэг" байнуу? Дээр нь хулганаар очвол "This sender is DomainKeys verified" гэж гарч ирж байгаа биз...

DomainKeys гэж юу вэ?
DomainKeys гэдэг нь мэйл үнэхээр "From" хэсэгт бичигдсэн домэйноос ирсэн байнуу гэдгийг шалган тогтоох зориулалттай нэг төрлийн шинэ протокол юм. Хялбарханаар тайлбарлавал: явуулж байгаа тал нь гарын үсгээ зурна, хүлээн авч байгаа тал нь түүнийг шалгана гэсэн үг юм.

Хэрхэн ажиллах вэ?
DomainKeys-г ашиглахын тулд эхлээд private/public хос түлхүүр үүсгэх ёстой. Private түлхүүрийг MTA өөртөө хадгалж, гадагшаа явуулж байгаа бүх мэйлийн header дотор бичнэ. Public хэсгийг админ өөрийн DNS zone file-д,
_domainkey дэд домэйны TXT бичлэг дотор тавьсанаар, хүлээн авч байгаа мэйл сервер энэ түлхүүрийг авч гарын үсгийг шалгах боломжтой болно. Өөрөөр хэлбэл public түлхүүрийг нийтэд тараахдаа DNS hierarchy-г ашиглаж байна гэсэн үг юм. DNS бичлэгийг зөвхөн тухайн домэйны эзэн өөрчлөх эрхтэй тул хос түлхүүрийг заавал гадны CA(Certificate Authority)-р баталгаажуулах шаардлагагүй болсон давуу талтай.

DomainKey-р баталгаажсан мэйлийн header ямар байдаг бол? гэсэн сониуч зандаа хөтлөгдөж байгаа бол мэйлийн full header-г нь нэг нээгээд хараарай.
DomainKey-Signature гэсэн талбар нэмэгдсэн байгаа:

DomainKey-Signature: a=rsa-sha1; c=nofws;
d=gmail.com; s=beta;
h=received:message-id:date:from:to:subject:cc:mime-version:content-type;


Хэрхэн хэрэглэх вэ?
Yahoo, Gmail бүгд DomainKey-г хэрэглээд нэгэнт эхэлчихсэн тул, та эдгээр домэйнуудруу мэйл явуулахын тулд ядаж гарын үсгээ зураад явуулах хэрэгтэй болох байх даа. Одоо яах вэ гэж санаа зовох хэрэггүй. Өргөн хэрэглэгддэг MTA-уудын хувьд patch/шинэ хувилбар/plugin аль хэдийнэ гарчихсан, аваад хэрэглэх л үлдэж дээ:

- Sendmail milter implementation - http://sourceforge.net/projects/dk-milter
- Qmail patch qmail-dk - http://www.qmail.org/top.html
- Exim version - http://duncanthrax.net/exim-experimental
болон бусад MTA-н талаар DomainKeys төслийн хуудаснаас орж үзнэ үү.


Холбоосууд:
1. Yahoo Anti-Spam Resource Center-с гаргасан танилцуулга - http://antispam.yahoo.com/domainkeys
2. Yahoo-гаас санхүүжүүлж буй нээлттэй эхийн DomainKeys төсөл - http://domainkeys.sourceforge.net
3. Wikipedia - http://en.wikipedia.org/wiki/DomainKeys

6 comments:

Хүжий said...

Сайн уу, анд минь. Япон явсныг чинь блогоос чинь л мэдлээ. Бид нээрээ өөрсдөө анзаарахгүй ч гэсэн аль хэдийн амьдралынхаа нилээд хэсгийг гипер болгочихжээ гэж бодлоо.

Дээр чиний бичиж байсан DomainKeys-ийн тухай нэг товч бичиглэлийг харж байсан. Энэ удаа дэлгэрэнгүй болсон байна. Миний хувьд анх Банжиг.Нээт ажиллуулж Ил захидал илгээдэг болсноос энд тэндхийн и-мэйл үйлчилгээ үзүүлэгчидтэй мөн ч олон зарга хийсэн дээ. :) Хамгийн их асуудалтай нь Yahoo! Mail байсан. Учир нь байж байгаад л манай серверээс явсан хамаг захиаг Bulk руугаа шидчихдэг юм. Тэгэхээр нь Support-оор нь орж баахан гомдол бичихээр хэд хоноод серверийн мэдээлэл загвар и-мэйлийн толгой энэ тэрийг явуул гэсэн хариу ирнэ. Тэгээд тэрэнд нь хариулаад дахиад 10 орчим хоноод асуудал шийдэгдэнэ.

Саяхан серверээ шинэчилсэн тэгээд одоо DomainKeys үүсгэе гэж бодоод л амжихгүй яваад байна. Тэгж байгаад хийчихээрээ үр дүнг нь мэдээлнээ. Одоо тэгэхгүй бол ил захидал, бусад үйлчилгээний захидал гээд өдөртөө хар мянга ёсөн зуун ерөн есөн захиа серверээс илгээгддэг болохоор хэцүүдэх шинжтэй.

baynaa said...

Hi Хүжий.
Yahoo-тай заргалдаад асуудлаа шийдсэн миний мэдэх анхны хүн чи боллоо :). Би бас тэр хүснэгтийг бөглөөд, мэйлийнхээ толгойг зөндөө явуулсан ямар ч хариу байгаагүй. Тэгээд л Yahoo одоо яах бол гээд л хараад суугаад байхаас өөр аргагүй.

Найзад нь real IP-тай серверээр дураараа тоглох боломж гарвал DomainKeys-г туршиж үзэх хүсэлтэй байгаа. Гэхдээ хэрвээ хийчихвэл тэр талаараа нийтлэл бичээрэй. За амжилт!

Lkhagvaa said...

Sain uu? Minii blog deer yum asuusaniig chini anzaaraagui olon honochihoj. Yuun hun yokohamad baidag ail asuusiin? Bi bol yokohamad amidardag shuu. Asuuh yum baival asuugaarai.

Dulmandakh said...

Баярлалаа. Миний чамаас асууж байсан зүйл бараг мөн байна. Туршиж үзэх л үлдэх шив. Нээрээ liMNux-с чамтай ярилцлага хийе, зөвшөөрөх үү? Тэгвэл асуултуудаа бэлдээд, бас хүмүүсээс хэдэн асуулт аваад мэйлээр явуулчихъя, чи тэгээд хариулчихна биз. Болж байна уу?

baynaa said...

Hi Дөлөө,
liMNux хүмүүстэй ярилцлага хийдэг болж байгаа муу? Надад дургүйцээд байх юу байхав. Тэр талаараа тодорхой мэйл бичээрэй.

Эрхэмээ said...

Хэдэн host хийлгэсэн газруудын мэйлүүд нээрээ надад үнэн түвэг учруулж байнаа.. Угаасаа ч мэйл сервертэй ноцолдох дургүйг ч хэлэх үү... DomainKeys -г Postfix MTA дээр Virtual Host горимтойгоор хийх гээд чадахгүй л байдаг.. Realtime Blacklist нэмэхээр ougoing мэйлүүд бүүр явдаг ч үгүй гэнээ кэкэ :D