Webmin Panele SPF kaydı ekleme


Merhabalar, bu yazımda yine karşılaştığım bir sorunla ve çözümüyle ilgili bilgi vermeye çalışacağım.

Daha önce yandex kurumsal mail hesabı açmayla ve MX kaydı eklemeyle ilgili bir yazı yazmıştım. Orada Centos Web Panel kullanıyordum. Bu kez benzer bir işlem için Webmin Panel kullanacağız.

Bu kez sorunumuz biraz farklı. Yandex kurumsal mail kullanırken, Gmail hesabı olan birine mail atamıyorduk. Daha doğrusu attığımız mailler aşağıdaki gibi bir hatayla geri dönüyordu.

Action: failed
Status: 5.7.1
Remote-MTA: dns; gmail-smtp-in.l.google.com
Diagnostic-Code: smtp; 550-5.7.1  Our system has
detected that this 550-5.7.1 message is likely unsolicited mail. To reduce
the amount of spam sent 550-5.7.1 to Gmail, this message has been blocked.
Please visit 550-5.7.1
https://support.google.com/mail/?p=UnsolicitedMessageError 550 5.7.1 for
more information.

Burada kısaca mailimizin spam olarak algılandığını ve engellendiğini bildiriyor.

Bu hatanın kaynağını öğrenebilmek için, daha ayrıntılı bir açıklamasının bulunduğu Google Support sayfalarını inceledim. Eğer size gelen farklı bir hata mesajı varsa, bu sayfaları incelemek sorunu anlamaya yardımcı olabilir:
https://support.google.com/a/answer/3221692

https://support.google.com/a/answer/3726730?hl=tr&ref_topic=1355150

Ayrıca şuradan domaininiz için MX kayıtları ile ilgili sorunları sorgulatabilirsiniz:

https://toolbox.googleapps.com/apps/checkmx/

Burada sorgu yaptığımda SPF TXT kayıtlarıyla ilgili bir sorun olduğunu gördüm ve bu kayıtları nereden düzelteceğimi buldum. Sunucu ayarlarını yaptığımız yönetim panelimizden bu kayıtları düzeltebiliyoruz ve bu senaryoda panelimiz Webmin.

Eğer başka bir panel kullanıyorsanız, hangi paneli kullandığınızı öğrenin ve “DNS Zone” kayıtlarına nasıl ulaşacağınızı araştırın.

Webmin için süreç şöyle işliyor; giriş yaptıktan sonra soldaki menüden “Servers” altındaki “BIND DNS Server” başlığına tıklıyoruz. Açılan sayfada “Existing DNS Zones” başlığı altında bir bölüm göreceksiniz. Burada alanadınız.com (alanadınız yerinde kendi sitenizin alan adı olacak şekilde) olarak görünen dünya simgesine tıklıyorsunuz. Açılan sayfada “Edit Zone Records File” butonuna tıklıyoruz. Açılan dosya, bizim DNS kayıtlarımızı tuttuğumuz sayfa olduğundan burada yaptığımız değişikliklerle ilgili kesinlikle dikkatli olalım ve değiştirmeden önce isterseniz bir yedek alabilirsiniz.

Bu dosyada eğer aşağıdakine benzer bir kayıt görmüyorsanız, bu satırı dosyanın sonuna ekleyin; görüyorsanız o satırı silin ve yerine bu satırı ekleyin:

siteniz.com.tr. IN TXT “v=spf1 +a +mx +ip4:SUNUCU-ANA-IP +ip4:SITE-IP ~all”

Burada dikkat etmeniz gereken nokta, “siteniz.com.tr.” kısmı sizin sitenizin alan adı gelecek şekilde düzenlenecek. Ayrıca “SUNUCU-ANA-IP” ve “SITE-IP” kısımları da sizin sitenize göre değişecek kısımlar. Buraya ben sadece site ip’sini ekledim, yani ayrı ayrı iki ip eklemedim, o da yeterli oldu. Ayrıca yandex kurumsal mail kullandığım için de onu da ekleyip şu şekilde düzenledim:

siteniz.com.tr. IN TXT “v=spf1 +a +mx +ip4:SITE-IP include:_spf.yandex.net ~all”

Eğer yandex mail yerine google mail hizmetlerini kullanıyorsanız aşağıdaki şekilde düzenleyebilirsiniz:

siteniz.com.tr. IN TXT “v=spf1 +a +mx +ip4:SITE-IP include:_spf.google.com ~all”

Sizin için uygun şekilde düzenlenmiş olan satırı ekledikten sonra “Save and Close” diyerek çıkabilirsiniz. Şimdi sorun düzeldiyse, yandex’ten google’a veya google’dan yandex’e mail atabiliyor olmanız gerekiyor. Bazen sorunun giderilmesi 48 saat kadar sürebiliyormuş fakat bende hemen çözüldü, beklemem gerekmedi.

Sorununuz çözülmediyse ya da farklı bir sorunla karşılaşıyorsanız, benzer hatalarla ilgili aşağıdaki linklerden yardım alabilirsiniz.

Yandex için MX, SPF, DKIM kaydı:

https://forum.webdeyazilim.com/web-tasarim/yandex-mail-icin-mx-spf-ve-dkim-kaydi-nasil-yapilir

https://yandex.com.tr/support/connect/dns-editor.html

https://www.hosting.com.tr/bilgi-bankasi/cpanel-yandex-mail-ayarlari/

http://birolkahraman.com/tr/sayfa/mx-ve-spf-kayitlari-nasil-ayarlanir-kurumlar-icin-mail-kurumsal-maillerin-yandex-alt-yapisina-tasinmasi

https://yandex.com/support/domain/troubleshooting/dns.html

Google için makaleler:

https://support.google.com/a/answer/48090

https://support.google.com/a/answer/33786?hl=tr

 

 

 

Yandex Kurumsal Mail için Centos Web Panel Ayarlamaları


Merhaba, bugün Yandex Kurumsal Mail kullanabilmemiz için Centos Web Panel‘den MX kayıtlarını nasıl değiştireceğimizle ilgili bir yazı yazıyorum. Öncesinde Yandex Kurumsal Mail’in değişen yüzüyle nasıl hesap açacağımızı ve bu hizmetten ücretsiz olarak faydalanabileceğimizi göreceğiz.

Öncelikle bir domain‘e yani alan adına sahip olduğumuz ve Centos Web Panel aracılığıyla bir web sitesi kurulumu yaptığımız, her şeyin yolunda gittiği senaryomuzdan bahsedeyim. Benim wordpress kurulumu yaptığım bu panelde MX kayıtlarına ulaşmak biraz zamanımı aldı. Benim gibi daha önce bu paneli kullanmayanlar için yardımı olacaktır diye düşünüyorum. Çünkü bununla ilgili pek yardımcı kaynak bulamadım.

Daha önce Yandex.Domain olarak ulaştığımız ve kurumsal mail için kullandığımız adres şu anda Yandex.Connect olmuş durumda. Sayfaya girdiğinizde sağ üstteki Sign Up butonu aracılığıyla üyelik bilgilerini gireceğimiz sayfa açılıyor ve bilgilerimizi girdikten sonra Register diyoruz.
Tabii onay için önce bizden istediği telefon numarasına bir şifre gönderecek, o yüzden önce Send Code diyerek şifreyi almamız gerekiyor. Sonraki adımda yine bizden birtakım bilgiler isteyecek, bunları dolduruyoruz. Burada bize ait domain bilgilerini de girmiş olacağız. Eğer buradan başarıyla geçtiyseniz aşağıdaki gibi bir sayfa görmüş olacaksınız.

yandexekranalıntısı

Admin tools butonu aracılığıyla admin sayfamızı açıyoruz.

yandexalıntı2

Sol taraftaki menüden domains kısmını açtığımızda, bilgilerimizi girerken bizden aldığı domain’ler (alan adları) görünecek. Ve bunlar tabii ki henüz onaylanmamış olacaklar. Çünkü bize ait olduklarını gösteren hiç bir bilgi girmedik. Domain üzerine tıkladığınızda “Domain is not confirmed” yazısını ve altında nasıl onay alabileceğinizle ilgili seçenekler yer alacak. Eğer site ana sayfanıza ulaşmanız en kolay seçenek olacaksa ilkini seçerek, “meta name=..” ile başlayan kodu ana sayfanıza head alanı içine yapıştırabilirsiniz. Bir diğer kolay yöntem olan ikinci seçenekte de, yine kopyalayıp not defterine yapıştırabileceğiniz bir kod bulunuyor. Dosyayı “yandex_…… .html” diye belirttiği şekilde kaydettikten sonra FTP yöntemi ile ulaşabileceğiniz web sitemizin ana dizinine yapıştırıyoruz. Diğer seçenekler daha karmaşık olacağı için hiç girmiyorum. Bunlardan birini yaptıktan sonra “Start verification”a tıklayıp onayın gelmesini bekleyebilirsiniz. Çok zamanınızı almayacak bu işlem hallolurken kendinize bir mola verin.

Onayı aldıktan sonra “Domain confirmed. MX records for this domain have not been set updiye bir mesaj görüyorsanız, bu şu anlama geliyor: “Domain onaylandı fakat daha seninle işimiz var.” Şaka tabi, MX kayıtlarını ayarlamamışsın diyor aslında.

MX kayıtları nedir diyecek olursak; basit anlatımla e-posta hesabına gelen e-postaları kullanıcının e-posta hesaplarını barındırdığı sunucuya yönlendirilmesini sağlayan domain (alan adı) ile ilişkilendirilmiş DNS kayıtları diyebiliriz. Normal şartlarda, bu DNS kayıtları hosting sağlayıcınız tarafından yönetilmekte, yani web sitemizin bulunduğunu sunucuda bu kayıtlar mevcut ve yönetim panelimizden bu kayıtlara erişebiliyoruz.

Ben de kurmuş olduğum Centos Web Panel üzerinden bu kayıtlara “DNS Functions” altında “List DNS Zones” diyerek ulaşıyorum. Listeden “alanadınız.db” şeklinde olanı bulup “Edit Records” diyerek düzenleme sayfasınız açıyoruz. Burada MX kaydınız barındıran satırı bulmanız ve silmeniz gerekiyor. Yerine aşağıdaki gibi yeni kayıt oluşturacağız.

(alanadınız).    /     14400    /     IN     /     MX     /     10    /   mx.yandex.net.

Bu yeni satırı ekledikten sonra Save Changes diyerek kaydediyoruz. En son Reload DNS Zone‘a tıklayıp bitiriyoruz.

İşte buraya kadar gayet güzel olan ve tıkır tıkır işleyen süreç “bundan sonrası patika, yaya devam edeceğiz”e evriliyor. Beni bir kaç gün çileden çıkaran bekleme süresinin sonunda çözümün aslında basit olduğunu ve boş yere çözüm arayışımın sonunun gelmediğini söylemek zorundayım.

Yandex kendi yardım sayfasında da belirttiği üzere MX kayıtlarının yönlendirilmesi 72 saate kadar sürebiliyormuş. Benimki de o kadar sürdü. Ben nerde hata yaptım, neyi yanlış yaptım derken saatlerimi araştırmayla geçirdikten ve doğru yaptığıma ikna olduktan sonra beklemeye başladım. Yönlenmenin gerçekleşip mail alıp gönderebilmenin mümkün olduğunu, başka bir hesabınızdan test maili göndererek anlayabilirsiniz.

Bu arada mail oluşturmayı veya maillerinizi aktarabileceğiniz bölümü anlatmadım ama yukarıda gördüğünüz menüden en üstte yazan “Organization structure”ye tıklayıp Add>Add Person adımlarını takip ederek mail adresi oluşturabilirsiniz. Var olan mail hesaplarınızı aktarmak isterseniz de menüden Email>Import email adımlarını takip edebilirsiniz.

Yardım alabileceğiniz yandex sayfası (benden daha kısa ve net anlatmış olabilirler) : https://yandex.com.tr/support/kurum/set-mail/mx.html

Sabrınız için teşekkürler, saygılar…

Windows İşletim Sistemi Iso Dosyalarını Yüklemek İçin En Güvenilir Kaynak


Merhabalar, bu kısa hatırlatma yazımda Windows işletim sistemi sürümlerini kurabilmek için gerekli olan iso dosyalarını yükleyebileceğimiz Microsoft linkini paylaşarak bir kez daha lazım olduğunda bulmak için vakit kaybetmeden ulaşmayı hedefliyorum. Iso dosyalarını dvd veya usb vasıtasıyla kurmaya hazır hale getirmek için bir çok kaynak mevcut. Ancak burada paylaşılan windows sürümlerinin düzenlenmiş ve hatta içerisine virüs benzeri programlar yerleştirilmiş olabilir. Bu yüzden dikkatli olmakta fayda var ve olabildiğince resmi kaynaklardan yararlanmak gerek. Bunlardan güvenilir birkaçını da ihtiyacı olabilecekler için aşağıda paylaşacağım.

Iso Dosyaları (Windows 7, 8.1, 10):
https://support.microsoft.com/tr-tr/help/15088/windows-create-installation-media

Yardımcı olabilecek linkler:
https://www.chip.com.tr/haber/windows-7-yi-usb-den-kurun_12496.html

https://www.howtogeek.com/186775/how-to-download-windows-7-8-and-8.1-installation-media-legally/

https://www.microsoft.com/en-us/download/windows-usb-dvd-download-tool#installation

ASP .NET MVC Routing


Merhabalar, bu yazımda sizinle MVC Routing yapısıyla ilgili bilgileri, getirdiği avantajları ve dikkat etmemiz gereken noktaları paylaşmaya çalışacağım.

MVC Routing nedir ve nasıl işler?

URL, web sayfamıza ulaşmak için kullanılan adrestir. Bir nevi bizi istediğimiz sayfaya götüren yoldur. Aslında biz bu yolu kullanarak bir dosyanın fiziki konumuna ulaşmış oluruz.

Örneğin URL’imiz şöyle olsun;

http://www.websitesi.com/dizin/dosya.aspx

Bu URL’e baktığımızda dosya.aspx sayfasının dizin klasörü içerisinde yer aldığını anlayabiliriz. MVC Routing yapısı bize sanal fiziki konumlar oluşturarak bir URL elde etmemizi sağlar. Bu yapıyı kullandığımızda benzer bir URL şöyle görünecektir;             http://www.websitesi.com/dizin/dosya

Bu yapıyı en basit haliyle açıklamak gerekirse, “dizin”in Controller ve “dosya”nın da Action olduğunu söyleyebiliriz. Yani, kullanıcılardan gelen istekler ilgili Controller içinde bulunan Action’lara iletilir ve URL’imizde bu şekilde görürüz.

controller_action_id_2-300x88

Örnekte olduğu gibi “Photo” adlı Controller altındaki  “Display” Action’ını “3” parametresini vererek çağırmış oluyoruz.

Peki biz bunu nerede belirtiyoruz? Bu yönlendirmeleri genel olarak “global.asax.cs” dosyasında RegisterRoutes fonksiyonu içerisinde belirtiriz. Bir Asp.net MVC projesini açtığımızda bize gelen şablonun yapısında da bu yönlendirme kurallarını görebiliriz.

Global.asax.cs dosyasının yapısı

global_asax_cs1

Burada “routes” nesnesi RouteCollection sınıfını temsil eder. MapRoute metodu URL’inizin hangi kurallar dahilinde oluşturulacağı, hangi Controller ve Action’ın çalıştırılacağı bilgisini içeren metoddur.

MVC uygulamasında bir URL ile istek geldiğinde “global.asax.cs” dosyası içerisindeki uygun MapRoute metodu seçilir ve bu MapRoute’da belirlenen kurallara göre Controller içerisindeki ilgili Action devreye girer.

MapRoute yapısı

Maproute_yapisi

MapRoute’ta çağırılan HomeController’n yapısı

homecontroller

MVC Routing Yapısının Avantajları

MVC Routing yapısını genel olarak açıklamış olduk, şimdi bize ne gibi faydaları olacağından bahsedelim. Gördüğümüz üzere URL’imiz kendi isimlendirdiğimiz parametrelerden oluşuyor ve bu parametrelerin hangilerinin URL’i oluşturacağını da kendimiz belirliyoruz. Yani istersek Controller ya da Action’dan yalnızca birinin URL’de yer almasını sağlayabiliriz.

Parametrelerin isimlerini sayfa içeriğine uygun olacak şekilde belirlemek sayfalarımızın kolay bulunabilirliğini ve hatırlanabilirliğini sağlayacaktır. URL’in anlamlı olması, arama motorlarında daha üst sıralarda yer almamızı da sağlayacaktır. Böylece sayfamızın ziyaret sayısı artış gösterecektir.

İkinci olarak sayfalarımızın güvenliği için de bu yapıyı kullanmak faydalı olacaktır. Çünkü bizim belirlediğimiz yönlendirme kuralları dışında sayfalarımıza erişmek mümkün olmayacaktır.

Dikkat Etmemiz Gereken Önemli Noktalar

Peki bu yapıyı kullanırken nelere dikkat etmemiz gerekir? Öncelikle, “global.asax.cs” dosyasında Route tanımlarken, Default’tan önce tanımlamaya dikkat etmeliyiz. Yani, yeni yönlendirme kuralımız Default yönlendirilmesinden önce gelmeli. Aksi halde URL’i Default üzerinden yönlendirmeye çalışacaktır ve bu da hataya sebep olacaktır.

onemlinoktalar

İkinci olarak Route tanımlarken parametreler arasında kullandığımız karakterlere dikkat etmeliyiz. Yanda görüldüğü üzere parametreler arasına herhangi bir karakter koymazsak hatalı bir yazım yapmış oluruz.

Son olarak, Route isimlerinin benzersiz olması gerekiyor. Kullanılan bir route ismi tekrarlandığında aşağıdaki gibi bir hata alırız.

hata

Bu bahsettiğimiz noktaları göz önünde bulundurarak yönlendirme kurallarımızı doğru bir şekilde uyguladıktan sonra, URL’i oluşturan üyelerden herhangi biri için yanlış parametreler girildiğinde hata alabiliriz. Bu durumu önlemek için de bazı kısıtlama kurallarını bilmemiz ve uygulamamız gerekir. Örneğin, URL’in çağırdığı Action’ın parametresi tarih formatında olması gerekirken metin girildiğinde hatayla karşılaşırız. Bunu önlemek için parametremize kısıtlama kuralları koymamız gerekir. Bunu yapmanın birkaç yöntemi var, bunlar;

1. Düzenli İfadeler (Regular Expressions) kullanmak
2. Http method kısıtlayıcıları (HttpMethodConstraint) kullanmak
3. Özel kısıtlama kuralları tanımlamak

Bu kısıtlama yöntemlerini de daha sonra detaylandırmaya çalışırız.

Bu makalemizde ASP.NET MVC Routing yapısına bir giriş yaparak Routing hakkında genel bir bilgilendirme yapmış olduk. Şimdilik bu kadar, umarım faydalı olmuştur. Diğer makalelerde görüşmek üzere…

– See more at: http://kodluyorum.com/index.php/asp-net-mvc-routing/#sthash.cqUFzMr6.dpuf

asp_net_mvc_routing