آگهی
article

جلوگیری از بلاک یا ارسال ایمیل به اسپم با SPF

web-mail-spf

شاید برای شما هم اتفاق افتاده باشد وقتی از حساب ایمیل شخصی یا شرکت خود که تحت دامنه ای مستقل است به سایر سرویس های عمومی (مانند Yahoo، Gmail و...) یا حتی سایر سرورهای شخصی یا سازمانی، ایمیلی ارسال کرده باشید و با کمال تعجب مشاهده کنید که ایمیل برگشت داده شده و یا در خوشبینانه ترین حالت به فولدر اسپم ها منتقل و احتمالا توسط مخاطب مد نظر شما خوانده نیز نشود، البته که این حالت به هیچ وجه خوشایند نیست و علاوه بر ارسال نشدن راحت و صحیح پیام شما، به نوعی اعتبار مضاعف و اطمینانی را که می توان از طریق ارسال مستقیم ایمیل به فولدر Inbox مخاطب به دست آورد، از دست می دهیم، از این رو در یادداشت پیش رو مکانیزمی را معرفی خواهیم کرد که شاید یکی از موثرترین روش ها برای خلاص شدن از شر بلاک یا ارسال ایمیل های شما به فولدر اسپم ها باشد، این مکانیزم SPF (مخفف Sender Policy Framework) نام دارد که در ادامه در مورد آن بیشتر خواهیم گفت.

صورت مسئله، بلاک یا ارسال ایمیل به فولدر اسپم ها!


از زمان پیدایش پروتکل SMTP (مخفف Simple Mail Transfer Protocol) که در سال 1982 میلادی جهت ارسال نامه های الکترونیکی (در استاندار RFC 821) تعریف شد تا کنون، در کنار استفاده های متداول، همواره این قابلیت جهت ارسال هرزنامه ها، ایمیل های تبلیغاتی بدون درخواست کاربر، برنامه های مخرب و...  مورد سوء استفاده افراد سودجو و فرصت طلب نیز قرار گرفته که اگر نبود روش هایی برای شناسایی ایمیل های حقیقی از سایر موارد ناخواسته، شاید استفاده از امکان ایمیل در وب اگرنه غیرممکن اما لااقل بسیار ملال آور می شد، با توجه به این مسئله هرچند سیستم های کنترل کننده برای تجزیه تحلیل و تفکیک ایمیل ها عموما از روش های مختلفی استفاده می کنند، اما به دلیل استفاده سودجویان از آدرس های جعلی و روش های پیچیده تر، نیاز به راهنمایی از طرف ارسال کننده ایمیل و اطمینان سنجی دو طرفه (سرور ارسال کننده و دریافت کننده) احساس شد، در غیر این صورت ظاهرا ترجیح سرویس های ایمیل این است که اصل بر عدم اطمینان است، مگر اینکه خلافش ثابت شود و لذا ایمیل های کمی مشکوک روانه فولدر اسپم ها و ایمیل های کمی بیش تر مشکوک، بلاک شده و به ارسال کننده ارجاع داده می شوند!، از این رو پروژه ای تحت عنوان SPF یا Sender Policy Framework جهت تدوین استانداردی مشخص در زمینه تشخیص آدرس ایمیل های حقیقی از موارد جعلی آغاز گردید که ماحصل آن نسخه کلاسسیک یا نسخه 1 استاندارد SPF شد.

SPF چیست؟


همان طور که گفتیم SPF یک روش استاندارد یا پروتکل جهت شناسایی ایمیل های جعلی از حقیقی است، کارکرد اصلی این روش ارائه راهکاری به صاحبان دامنه های وب است تا مشخص کنند کدام ایمیل به طور حقیقی متعلق به دامنه آنها است و کدام یک به صورت جعلی از نام دامنه آنها سوء استفاده می کند، این کار نیز با افزودن اطلاعاتی به DNS دامنه انجام می شود (در اصطلاح فنی به این اطلاعات Reverse MX یا MX معکوس گفته می شود، در حالت عادی MX اطلاعاتی است که مشخص می کند چه سروری ایمیل ارسال شده را دریافت کرده است و حالت عکس آن مشخص کننده این است که چه سروری ایمیل را ارسال کرده است)، به این ترتیب سایت دریافت کننده ایمیل می تواند آدرس ارسال کننده را با موارد معتبر در اطلاعات DNS دامنه اصلی تطبیق داده و از معتبر بودن حساب ایمیل ارسال کننده اطمینان حاصل کند.

نمونه اطلاعاتی که به DNS اضافه می شوند


صرفا جهت آشنایی با نمونه اطلاعاتی که به واسطه SPF به DNS اضافه می شوند ، به ذکر یک مثال بسنده می کنیم:
v=spf1 +a +mx +ip4:*.*.*.* +ip4:*.*.*.* ~all
با توجه به دستور بالا، کلیه ایمیل هایی که خارج از دو IP تعریف شده باشند، از نظر دامنه اصلی غیر معتبر عنوان شده اند!

فعال سازی SPF


برای فعال سازی SPF معمولا نیازی به ویرایش دستی اطلاعات DNS نیست (و این کار نیز توصیه نمی شود)، اغلب در برنامه های مدیریت فضای هاست مانند cPanel این امکان از قبل فراهم شده (در قسمت Mail و Authentication، پس از انتخاب این قسمت در سربرگ مربوط به SPF، گزینه Enable را فعال کنید)، در صورتی که این امکان به هر دلیل در دسترس نبود باید با پشتیبانی هاست خود موضوع را مطرح نمائید.

سایت رسمی پروتکل SPF


اگر علاقمند به کسب اطلاعات بیشتری در رابطه با این پروتکل سودمند هستید، می توانید به سایت اصلی آن در آدرس زیر مراجعه کنید:
http://www.openspf.org
نکته 1: لازم به یادآوری است که SPF تنها یک روش تقریبا موثر در رابطه با جلوگیری از ارسال ایمیل به فولدر اسپم ها یا بلاک شدن آن است، با توجه به استفاده سرورهای دریافت کننده ایمیل از روش های گوناگون جهت محافظت در برابر هرزنامه ها، ممکن است به دلایل دیگر (به فرض درج IP سرور ارسال کننده در لیست سیاه)، با وجود استفاده از پروتکل SPF، یک ایمیل بلاک یا به فولدر اسپم ها منتقل شود که خود نیاز به بررسی موردی دارد.
نکته 2: طبق بررسی ما سرویس های عمومی وب نظیر گوگل و یاهو از این استاندارد به طور جدی پیروی می کنند، به طوری که استفاده نکردن از SPF احتمال بلاک شدن ایمیل ارسالی را (مخصوصا برای صاحبان وبسایت های میزبانی شده در سرورهای اشتراکی) به شدت افزایش می دهد.
sectionدسته بندی: مهارتهای وب » دانستنی ها
related مطالب بیشتر:
» لیست کدهای وضعیت HTTP و معنی خطاهای سرور
» حمله DDoS چیست و چگونه از آن جلوگیری کنیم؟
» IP چیست و چه کاربردی دارد؟
» پروتکل امن HTTPS و رمزنگاری SSL چیست؟
» اصطلاحات و مفاهیمی که مدیر سایت باید بداند!
commentنظرات (۲۰ یادداشت برای این مطلب ارسال شده است)
more یادداشت های جدید بر اساس تاریخ ارسال در انتهای یادداشت های موجود نمایش داده می شوند.
نویسنده: mohammad
زمان: ۱۴:۴۶:۰۵ - تاریخ: ۱۳۹۵/۱۱/۲۹
با سلام و خسته نباشید
از اموزشای خوبتون ممنون.
ببخشید که زیاد به پست مربوط نمیشه سوالم اما فکر کردم شاید اولین نظری که سر زده بشه اولین پست باشه.
من یه تابع نوشتم برای اینکه میخام بعد از اخرین اسلش هر چی باشه رو بدست بیارم به این صورت کار میکنه اما وقتی تابع رو فراخوانی میکنم برای یک لینک، فقط مقدارش رو اکو میکنه
و وقتی مثلا میرم رو اون لینک ولی ادرس به این صورته هنوز
localhost/example/facebook.com
اینجا اینطوریه مثلا:
<a href="facebook.com" target="_blank"></a>
ولی وقتی میری روی لینک ادرس و اینطوری نشون میده
localhost/eample/facebook.com
از تابع
$_SERVER['REQUEST_URI']
هم سعی کردم اما نشد.
اینم کدمه:
function text($text)
{
$last_slash=strrpos($text,"/");
$url=substr($text,$last_slash + 1);
return $url;
}
<a href="<?php echo text('/facebook.com');?>" target="_blank"></a>
منتظر پاسختون هستم.
خیلی ممنون.
پاسخ: 
لطفا حتی المقدور در مطالب مرتبط سوالتان را مطرح نمائید.
در مورد مشکل عنوان شده، این حالت عادی است!، زمانی که مقدار href بدون عبارت http (به صورت نسبی) درج شود، آدرس مرورگر به عنوان ریشه لینک در پیش نمایش آن نشان داده می شود، برای حل آن کافی است به ابتدای مقدار موجود در قسمت href پارامتر زیر را اضافه کنید:
http://
به طور مثال خروجی باید به صورت زیر باشد:
<a href="http://facebook.com" target="_blank"></a>
نویسنده: احمد محمدی
زمان: ۰۹:۴۰:۴۱ - تاریخ: ۱۳۹۵/۱۲/۱۶
با سلام و عرض ادب
ببخشید یک سوال داشتم
خیلی از سایت های دانلودی را اگر توجه کنید داخل فایل هایی که برای دانلود میگذارند یک لینک از ادرس اصلی سایت یا یک صفحه خاص داخل فایل فشرده هم قرار میدهند که با کلیک بر روی ان مرورگر به صفحه مورد نظر میرود میخواستم بپرسم چطوری میتوانم از این لینک ها بسازم و در فایل های فشرده بگذارم
ممنون میشوم جواب بدهید
با تشکر
پاسخ: 
در صفحه دستکتاپ ویندوز کلیک راست کرده، از گزینه های موجود قسمت New و سپس قسمت Shortcut را انتخاب کنید، آدرس صفحه مورد نظر را به صورت http://yoursite.com وارد و در ادامه نام مورد نظرتان را تعیین کنید، پس از ذخیره سازی فایل، سایر تنظیمات (مانند انتخاب آیکن و...) با کلیلک راست بر روی آن و انتخاب گزینه Properties قابل تغییر است.
نویسنده: میلاد
زمان: ۱۳:۰۹:۴۱ - تاریخ: ۱۳۹۶/۰۵/۱۸
تشکر فراوان بابت این مطلب مفیدتوووووووووون
عالی بوووود
نویسنده: علی
زمان: ۱۶:۴۷:۴۱ - تاریخ: ۱۳۹۷/۰۴/۰۴
سایت خوبی دارید امیدوارم موفق باشید
نویسنده: مریم
زمان: ۱۱:۱۶:۴۳ - تاریخ: ۱۳۹۸/۰۳/۰۲
سلام
خسته نباشید
ببخشید من میخواستم با استفاده از تابع mail ایمیل ارسال کنم روی لوکال هاست و زمپ آخرین ورژن نصب کردم .
خیلی سرچ کردم تنظیمات مختلفی انجام دادم اما بازم نمیشه !!!!!!!
از جمیل استفاده میکنم .
لطفا راهنماییم کنید .
پاسخ: 
ارسال ایمیل نیاز به وجود سرور ایمیل و انجام تنظیمات مورد نیاز دارد، به همین دلیل عملا تابع mail در لوکال هاست برای ارسال ایمیل جوابگو نیست، استفاده از SMTP گوگل گزینه جایگزین خوبی در لوکال است.
more لطفا پیش از ارسال یادداشت نکات زیر را مد نظر داشته باشید:
- مواردی که به کلی خارج از موضوع این مطلب هستند را در فرم منوی "تماس با ما" مطرح و پاسخ را از طریق ایمیل دریافت کنید.
- به سوالات کلی، مبهم، غیرضروری و مشکلاتی که تلاشی برای رفع آن نکرده باشید پاسخ کوتاه و مختصر داده خواهد شد!
- کدها و اسکریپت های طولانی را ترجیحا در یک صفحه وب آنلاین قرار دهید تا امکان تست و بررسی وجود داشته باشد.
- تمام یادداشت ها بررسی و برای هر کاربر زمان مشخصی جهت پاسخگویی در نظر گرفته می شود، لطفا از طرح سوالات متعدد در بازه زمانی کوتاه خودداری کنید.





8 × 2
 refresh
آخرین دیدگاه ها
more برای دسترسی سریع به یادداشت مربوطه می توانید از لینک مطلب در کادر زیر استفاده کنید.
form مهدی
در:
سلام من از کد زیر استفاده کردم ولی وقتی که اعمال میشه کل css های سایتم میپره.. چه باید بکنم
۰۹:۵۵:۵۰ ۱۳۹۹/۰۴/۲۳

form سلماسی
در:
سلام ایا اگر از وبسایت شخصی کسی بازدید کنیم صاحب وبسایت شماره ی ما را می بیند
۲۱:۳۱:۵۳ ۱۳۹۹/۰۴/۲۲

form mahdi
در:
سلام استاد اگه براتون زحمتی نیست یه نگاه دیگه بهش بندازید ، الان ریموو ادیت درست هستن فقط برای نمایش کلیشون که وقتی رفرش میکنیم...
۱۹:۱۳:۱۵ ۱۳۹۹/۰۴/۲۲

form mahdi
در:
سلام استاد عزیز ، میتونید یه نمونه که فقط با جاوا اسکریپت کار شده نه با فریمورکاش بهم معرفی کنید ببینم؟ من هرچی گشتم پیدا...
۱۴:۴۶:۲۴ ۱۳۹۹/۰۴/۲۲

form mahdi
در:
سلام استاد عزیز و گرامی ، یه دفتر چه یادداشت با localstorage میخوام بنویسم ولی مشکل دارم، دو تا سوال دارم ممنون میشم راهنماییم...
۱۲:۰۵:۰۷ ۱۳۹۹/۰۴/۲۲

form اریا
در:
سلام و درود بزرگوار چه دستوری باید بنویسیم تا فقط مقدارهای خاصی از ارایه بتونیم نمایش بدیم. مثلا یک ارایه 6 خونه ای...
۱۶:۴۷:۳۱ ۱۳۹۹/۰۴/۲۰

form کافه کتاب
در:
سپاس خیلی وقت بود دنبالش بودم مرسی از سایت عالیتون
۱۴:۵۱:۴۳ ۱۳۹۹/۰۴/۲۰

form سجاد
در:
دمتون گرم. خیلی زحمت کشیدید
۱۳:۴۳:۱۱ ۱۳۹۹/۰۴/۲۰

form KhashayarPrk
در:
سلام. میخوام الگو تمام کلمات داخل پرانتز رو بدون پرانتز بریزه ارایه با این کد فقط یک پرانتز رو جواب میده.
۱۳:۱۳:۴۷ ۱۳۹۹/۰۴/۲۰

form Oliver
در:
چطوری دستور background رو برای جدلمون عکسش رو تنظیم کنیم و بهش طول و عرض بدیم
۱۶:۰۷:۱۷ ۱۳۹۹/۰۴/۱۸

form محمد
در:
با عرض سلام ببخشید چطوری میتونم واسه اشتراک کاربر انقضا بزارم مثلا یک ماه داخل دیتابیس ردیف تایم رو درست کردم البته تاریخ رو تبدیل...
۱۹:۱۴:۵۹ ۱۳۹۹/۰۴/۱۵

form آیدا
در:
سلام من در حال طراحی با html هستم اما طبق فیلم آموزشی پیش میرم از یه جایی به بعد هم تغییرات اعمال نمیشه...
۲۲:۴۷:۴۴ ۱۳۹۹/۰۴/۱۴

form علی
در:
سلام اگه میشه یه تکه کدی بفرستید که کاربر نتونه عکس مورد نظر رو دانلود کنه و با نگه داشتن روی عکس فقط لینکو ببینه...
۰۹:۳۰:۴۹ ۱۳۹۹/۰۴/۱۴

form sina2000
در:
با سلام و خسته نباشید طبق کد زیر استفاده میگه متغیر Pdc برای PDO است لطفا نمونه کد برای لایبرری...
۱۵:۰۳:۵۱ ۱۳۹۹/۰۴/۱۳

form محمد امین
در:
سلام ممنون از مطلبتون ببخشید من یه سایتی با شی گرایی کامل زدم الان میخوام آدرسشو بهینه کنم آدرس الان من به این صورته:...
۱۸:۲۸:۲۴ ۱۳۹۹/۰۴/۱۱
form ترنم
در:
سلام وقتتون بخیر ببخشید من کدهای مربوط منو و زیر منو رو نوشتم ولی موقع اجرا منوی اصلی رو میاره ولی زیر منوها رو...
۱۱:۰۶:۲۹ ۱۳۹۹/۰۴/۱۱
form ا
در:
سلام چرا وقتی مطالب مربوط که تو وبلاگم هست رو جستجو میکنم نمیاره ؟؟؟
۲۰:۳۱:۰۸ ۱۳۹۹/۰۴/۰۷
form amir
در:
سلام من اگه بخوام با وارد کردن یه id داخل یک text کل اون ردیف پاک بشن باید چه کنم مثلا یک text دریافت میکنم...
۰۱:۴۸:۰۵ ۱۳۹۹/۰۴/۰۷
form محمدباقر حسیبیان
در:
من این مشکل برام پیش اومده که موقع ورود به پروژه م توی لوکال هاست wamp صفحه سفیده و هیچی رو نشون نمیده و کد...
۱۶:۴۲:۳۸ ۱۳۹۹/۰۴/۰۶
form ...
در:
سلام دو سایت نوشته ای مربوط به من رو چند سال قبل لینک دانلود قرار دادن من ازشون خواستم بردارنش ولی اینکارو نکردن سایت...
۱۷:۲۶:۴۲ ۱۳۹۹/۰۴/۰۵
form مجتبی
در:
سلام میشه یک کد جاوا رو به php تبدیل کرد تا لود سایت سریع تر بشه؟
۱۳:۰۴:۲۳ ۱۳۹۹/۰۴/۰۴
form متین
در:
سلام ؛ من تازه شروع به یادگیری کردم ؛ مطلب بسیار کاربردی بود ؛ ممنون از شما دوست عزیز.
۰۱:۵۰:۰۵ ۱۳۹۹/۰۴/۰۴
form mahdi
در:
سلام استاد عزیز و گرامی امیدوارم که حالتون خوب باشه ، اگه براتون ممکنه لطفا یه آموزش خوب در زمینه وردپرس بهم معرفی کنید ،...
۲۱:۴۸:۱۳ ۱۳۹۹/۰۴/۰۳
form امید
در:
در برنامه نویسی کاربر با چه دستوری میتواند به صفحه اصلی برگردد
۱۹:۰۶:۵۶ ۱۳۹۹/۰۴/۰۳
form ali
در:
با سلام من یک پروژه طراحی کردم میخوام که وقتی کاربر روی ادامه مطلب کلیک کرد در خود صفحه بقیه مطالب را ببینه...
۱۸:۴۷:۲۲ ۱۳۹۹/۰۴/۰۳
form علی
در:
سلام و تشکر از زحمات ارزشمند شما احتراما بنده امروز از یک شماره تلفن ثابت از طریق یک رایانه و یک موبایل به طور...
۱۸:۰۱:۱۰ ۱۳۹۹/۰۴/۰۳
form oscar
در:
درود. اگر بخوایم در نمایش تاریخ و زمان که به صورت لحظه ای خودش در صفحه رفرش میشه، فقط عبارت " Mon Jun 22 2020...
۱۵:۵۹:۳۲ ۱۳۹۹/۰۴/۰۲
form علی
در:
با سلام چطور میشه فقط یک صفحه مورد نظرمون رفرش بشه نه همه صفحات سایت
۰۰:۰۳:۴۱ ۱۳۹۹/۰۳/۳۱
form Farzad
در:
الان وقتی فایل رو میخواد دانلود بکنه از خودش فایل میسازه ، به این صورت یعنی بعد از پوشه file هر پوشه ای باشه...
۱۸:۵۶:۲۱ ۱۳۹۹/۰۳/۳۰
form Farzad
در:
سلام ، خسته نباشید من فایل هایی که در هاست میزارم به این شکل هست: یعنی مشخص نیست فایل ها تو چه پوشه...
۱۳:۳۳:۴۰ ۱۳۹۹/۰۳/۳۰
form شیما طیبی
در:
سلام خیلی مطلب مفیدی بود . همیشه به وبلاگ نویسی به چشم یه کار خسته کننده نگاه میکردم ولی خب یه مقدار نظرم تغییر کرد....
۲۳:۵۲:۳۲ ۱۳۹۹/۰۳/۲۹
form احسان
در:
سلام من یک کد اسکریپت دارم که به صورت عددی تبدیل شده است. میخواستم بپرسم چطوری میتونم اسکریپت به حالت اولیه نوشته شده برگردانم و...
۲۱:۰۲:۱۳ ۱۳۹۹/۰۳/۲۷
form علی
در:
ممنون از پاسختون اما روش بالا جهت دانلود فایل کاربرد داره . من میخواستم به صورت استریم ویدئو پخش بشه اما آدرس مستقیم ویدئو...
۰۰:۳۷:۴۶ ۱۳۹۹/۰۳/۲۷
در انتظار بررسی: ۴