Stubby ile DNS-over-TLS nasıl yapılandırılır?

8.8.8.8 için DNS over TLS‘in duyurulmasının ardından, stubby kullanarak kullanıcı tarafında nasıl yapılandırılacağını inceliyoruz.

Öncelikle stubby‘yi Ubuntu 18 yazılım deposundan kuralım;

sudo apt install stubby

Stubby kendi içinde gelen ön tanımlı ayarlar ile doğrudan çalışmaya başlayacak. Google DNS 8.8.8.8’i eklemek için aşağıdaki satırları ayar dosyasına ekleyelim;

/etc/stubby/stubby.yml
# Google
- address_data: 8.8.8.8
  tls_auth_name: "dns.google"
  tls_pubkey_pinset:
    - digest: "sha256"
      value: nxmRHK4Oq08HNWWYZwakeCHmiKvsDsEaBPS3blQ+nSE=
- address_data: 8.8.4.4
  tls_auth_name: "dns.google"
  tls_pubkey_pinset:
    - digest: "sha256"
      value: nxmRHK4Oq08HNWWYZwakeCHmiKvsDsEaBPS3blQ+nSE=

Pinsetin doğrulaması aşağıdaki komut çalıştırılarak yapılabilir;

openssl s_client -connect '8.8.8.8:853' 2>/dev/null | openssl x509 -pubkey -noout | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | openssl enc -base64

Stubby‘nin 53 portunu dinlediğinden emin olduktan sonra ağ ayarlarımızdan DNS tanımını 127.0.0.1 olarak değiştirerek kriptolu DNS kullanmaya başlayabiliriz.

sudo netstat -lnptu | grep stubby

11 Ocak 2019

Posted In: lkd, teknik, tr

Ses Kartından Tam Performans Alalım

Kullandığım masaüstü bilgisayarın ana kartında (GA-Z68MA-D2H-B3) tümleşik çalışan ses kartının (RealTek ALC889), High-Resolution (24bit/192kHz) ses yeteneği olduğunu bugün farkettim. Anakartın dokümanlarında HD audio yeteneği olduğu yazıyordu fakat bu seviyede kaliteli bir ürünü anakart üzerinde sunacaklarını düşünmemiştim. Ayrıca dokümanda DAC (Digital-to-Analog Converter) yetenekleri yazmıyordu. Sonrasında şu metni okudum “GIGABYTE strongly believes that in 2011, HD audio playback is a standard specification”. E hal böyle olunca Ubuntu ve Windows‘da HD sesin nasıl ayarlanacağını anlatan bir blog yazısı ile sevincimi taçlandırmaya karar verdim. Bu yeteneklerin varsayılan olarak açık gelmediğinin altını çizmek gerekiyor. HD sesin farkını anlamak için kaliteli bir ses sistemine ihtiyacınız var, ben YAMAHA HSM80 kullanıyorum ve ses kalitesindeki farkın keyfini sürmeye başladım.

Ubuntu HD ses tanımlama;
Öncelikle şuanda kullanmakta olduğunuz Sample Spec değerlerini aşağıdaki komut ile kontrol edin;

pacmd list-sinks

Muhtemelen şuna benzer bir satır göreceksiniz, “sample spec: s16le 2ch 44100Hz“. Kullanmakta olduğum kart 32bit 192kHz desteklemesine karşın, 16bit 44100Hz seviyesinde çıkış veriyor.

/etc/pulse/daemon.conf dosyasına aşağıdaki satırları ekleyin. “;” ile yorum satırı haline gelmediğinden emin olun;

default-sample-format = s24le
default-sample-rate = 192000

Dosyaya tanımları ekledikten sonra aşağıdaki komutla pulseaudio’yu yeniden başlatın;

pulseaudio -k

Sample Spec değerini tekrar kontrol ettiğinizde farkı görmeniz gerekiyor.

Windows HD ses tanımlama;
“Ses ayarları > Hoparlör Özellikleri > Gelişmiş” sekmesi altından çalışma değerleri tanımlanabiliyor.

Hamdi Özcan – ozcan.com

28 Ocak 2017

Posted In: lkd, teknik, tr

Easy-RSA 3 ile kişisel sertifika otoritemizi (CA) kuruyoruz

CAEasy-RSA3, Linux komut satırından çalışan, PKI CA (kök sertifika otoritesi) oluşturulmasını ve yönetilmesini sağlayan bir araç. OpenVPN ile birlikte dağıtıldığından, tanınan bir araç. OpenSSL komut satırı aracının üzerine yazılmış betiklerden oluşmakta. Başlıca özellikleri;

– Kök sertifika oluşturma ve imzalama
– Sertifika istek ve imzalama (request and sign)
– Alt kök sertifika yönetimi ( sub-CAs )
– Sertifika iptal listesi oluşturma ( CRL )

Saydığımız bu özelliklerin kullanım örnekleri aşağıdaki gibi;

Açık anahtar altyapısının (PKI) oluşturulması

Easy-RSA‘nin kullanılabilmesi için öncelikle gerekli klasör yapısının oluşturulması gerekmekte. Farklı klasör isimleri ile birden çok PKI altyapısının yönetilmesi mümkün, varsayılan üst klasör adı PKI. Altyapının ilk kurulumunu aşağıdaki komut ile tamamlayalım;

./easyrsa init-pki

Bu komut her çalıştırıldığında tüm yapı sıfırlanıyor.

Kök sertifikanın oluşturulması

Sertifika isteklerini (CSR) imzalayabilmek için bir sertifika otoritesine (CA) ihtiyacımız var. Kurduğumuz PKI için bir CA anahtar çifti oluşturalım;

./easyrsa build-ca

Sorulduğunda güçlü bir parola girmemiz önemli, PKI yapısında en yüksek güvenlik gerektiren bileşen CA gizli anahtarıdır. Belirlediğimiz bu parolayı daha sonra sertifika imzalarken kullanacağız. Bu adım tamamlandığında bir açık anahtarımız (ca.crt) ve bir gizli anahtarımız (ca.key) oluşturulup PKI klasör yapısındaki yerlerine kopyalanır.

İmza istediğinin CA’ya gönderilmesi

İmzalama isteğinin nasıl oluşturulduğunu “SSL Sertifikası Nasıl Üretilir?” başlıklı yazımda açıklamıştım. Gelen isteklerin CA‘ya iletelim ve sonrasında bu iletilen imzalama isteğini onaylayalım;

./easyrsa import-req istekDosyasi.req istekAdı

İsteğin ayrıntılarını görüntüleyelim;

./easyrsa show-req istekAdı

İsteği imzalarken kullanılabilecek üç farklı parametre bulunuyor. Bunlar CLIENT, SERVER ve CA. İhtiyacımıza uygun sertifika türünü belirleyerek imzalama işlemini tamamlayalım;

./easyrsa sign server istekAdı

Bu adımdan sonra imzalı sertifika PKI yapısındaki ISSUED klasörünün altına kopyalanır. İmzalayacağımız sertifikada CN (common name) alanı tanımlı olmalı.

İmzalanan sertifikanın iptal (revoke) edilmesi ve CRL’nin yayınlanması

Çeşitli nedenlerden dolayı, imzalanan bir sertifikayı iptal edelim;

./easyrsa revoke istekAdı

İptal (revoke) edilen sertifikaları CRL (certificate revoke list) dosya türünde yayına hazır hale getirelim;

./easyrsa gen-crl

Anahtar çifti ve istek oluşturma

Easy-RSA ile tek seferde anahtar oluşturmak ve imza isteğinde bulunmak mümkün. Yukarıda açıkladığım gibi bu isteği CA ile imzalayarak otorite imzalı sertifikayı elde ederiz.

./easyrsa gen-req istekAdı

 

4 Ağustos 2015

Posted In: lkd, teknik, tr

Easy-RSA 3 ile kişisel sertifika otoritemizi (CA) kuruyoruz

CAEasy-RSA3, Linux komut satırından çalışan, PKI CA (kök sertifika otoritesi) oluşturulmasını ve yönetilmesini sağlayan bir araç. OpenVPN ile birlikte dağıtıldığından, tanınan bir araç. OpenSSL komut satırı aracının üzerine yazılmış betiklerden oluşmakta. Başlıca özellikleri;

– Kök sertifika oluşturma ve imzalama
– Sertifika istek ve imzalama (request and sign)
– Alt kök sertifika yönetimi ( sub-CAs )
– Sertifika iptal listesi oluşturma ( CRL )

Saydığımız bu özelliklerin kullanım örnekleri aşağıdaki gibi;

Açık anahtar altyapısının (PKI) oluşturulması

Easy-RSA‘nin kullanılabilmesi için öncelikle gerekli klasör yapısının oluşturulması gerekmekte. Farklı klasör isimleri ile birden çok PKI altyapısının yönetilmesi mümkün, varsayılan üst klasör adı PKI. Altyapının ilk kurulumunu aşağıdaki komut ile tamamlayalım;

./easyrsa init-pki

Bu komut her çalıştırıldığında tüm yapı sıfırlanıyor.

Kök sertifikanın oluşturulması

Sertifika isteklerini (CSR) imzalayabilmek için bir sertifika otoritesine (CA) ihtiyacımız var. Kurduğumuz PKI için bir CA anahtar çifti oluşturalım;

./easyrsa build-ca

Sorulduğunda güçlü bir parola girmemiz önemli, PKI yapısında en yüksek güvenlik gerektiren bileşen CA gizli anahtarıdır. Belirlediğimiz bu parolayı daha sonra sertifika imzalarken kullanacağız. Bu adım tamamlandığında bir açık anahtarımız (ca.crt) ve bir gizli anahtarımız (ca.key) oluşturulup PKI klasör yapısındaki yerlerine kopyalanır.

İmza istediğinin CA’ya gönderilmesi

İmzalama isteğinin nasıl oluşturulduğunu “SSL Sertifikası Nasıl Üretilir?” başlıklı yazımda açıklamıştım. Gelen isteklerin CA‘ya iletelim ve sonrasında bu iletilen imzalama isteğini onaylayalım;

./easyrsa import-req istekDosyasi.req istekAdı

İsteğin ayrıntılarını görüntüleyelim;

./easyrsa show-req istekAdı

İsteği imzalarken kullanılabilecek üç farklı parametre bulunuyor. Bunlar CLIENT, SERVER ve CA. İhtiyacımıza uygun sertifika türünü belirleyerek imzalama işlemini tamamlayalım;

./easyrsa sign server istekAdı

Bu adımdan sonra imzalı sertifika PKI yapısındaki ISSUED klasörünün altına kopyalanır. İmzalayacağımız sertifikada CN (common name) alanı tanımlı olmalı.

İmzalanan sertifikanın iptal (revoke) edilmesi ve CRL’nin yayınlanması

Çeşitli nedenlerden dolayı, imzalanan bir sertifikayı iptal edelim;

./easyrsa revoke istekAdı

İptal (revoke) edilen sertifikaları CRL (certificate revoke list) dosya türünde yayına hazır hale getirelim;

./easyrsa gen-crl

Anahtar çifti ve istek oluşturma

Easy-RSA ile tek seferde anahtar oluşturmak ve imza isteğinde bulunmak mümkün. Yukarıda açıkladığım gibi bu isteği CA ile imzalayarak otorite imzalı sertifikayı elde ederiz.

./easyrsa gen-req istekAdı

 

4 Ağustos 2015

Posted In: lkd, teknik, tr

NFS sunucu portları nasıl sabitlenir?

NFS diğer teknolojilere göre ek yükü az, verimli ve hızlı bir dosya paylaşım protokolü. Fakat bilinen güvenlik açıklarından dolayı güvenlik duvarı arkasında çalıştırılması gerekiyor. Ek tanım yapılmadığında sabit 2, değişken 7 port kullanıyor. Firewall kuralı yazılabilmesi için bu portları sabitleyip iptables kuralını yazalım;

/etc/sysconfig/nfs dosyasına eklenmesi gereken satırlar;

RQUOTAD_PORT=875
LOCKD_TCPPORT=32803
LOCKD_UDPPORT=32769
MOUNTD_PORT=892
STATD_PORT=662
STATD_OUTGOING_PORT=2020
RDMA_PORT=20049

iptables kuralı;

iptables -A INPUT -m multiport --dports 662,111,2049,32769,875,892,2020,20049,32769 -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A OUTPUT -m multiport --sports 662,111,2049,32769,875,892,2020,20049,32769 -m state --state ESTABLISHED -j ACCEPT

24 Mart 2015

Posted In: güvenlik, iptables, linux, lkd, nasıl, nfs, nfs server, nfs sunucu, port, port fix, port sabitleme, sevurity, teknik, tr

NFS sunucu portları nasıl sabitlenir?

NFS diğer teknolojilere göre ek yükü az, verimli ve hızlı bir dosya paylaşım protokolü. Fakat bilinen güvenlik açıklarından dolayı güvenlik duvarı arkasında çalıştırılması gerekiyor. Ek tanım yapılmadığında sabit 2, değişken 7 port kullanıyor. Firewall kuralı yazılabilmesi için bu portları sabitleyip iptables kuralını yazalım;

/etc/sysconfig/nfs dosyasına eklenmesi gereken satırlar;

RQUOTAD_PORT=875
LOCKD_TCPPORT=32803
LOCKD_UDPPORT=32769
MOUNTD_PORT=892
STATD_PORT=662
STATD_OUTGOING_PORT=2020
RDMA_PORT=20049

iptables kuralı;

iptables -A INPUT -m multiport --dports 662,111,2049,32769,875,892,2020,20049,32769 -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A OUTPUT -m multiport --sports 662,111,2049,32769,875,892,2020,20049,32769 -m state --state ESTABLISHED -j ACCEPT

23 Mart 2015

Posted In: güvenlik, iptables, linux, lkd, nasıl, nfs, nfs server, nfs sunucu, port, port fix, port sabitleme, sevurity, teknik, tr

2TB’den büyük GPT disk bölümleri nasıl oluşturulur?

32bit‘lik MBR (master boot record) tablolarının sınırı olan 2TB seviyesinin aşılmasıyla 64bit derinliğinde adresleme yeteneğine sahip GPT (GUID Partition Table) disk bölüm tabloları kullanılmaya başlandı.

Linux komut satırında PARTED adlı araç kullanılarak GPT disk bölümleri oluşturulabiliyor. Bu bölümler “FDISK -l” ile görüntülendiğinde, tam uyumlu cevap almak maalesef mümkün değil. 

Kolaylık sağlaması adına disk bölümlerini % değerler vererek oluşturmak mümkün.

En iyi performans için fiziksel disk sektörlerinin başlangıç-bitiş noktalarını, disk bölümlerinin ve dolayısıyla dosya sisteminin başlangıç-bitiş noktalarıyla hizalanması gerekiyor. Bu hizalama işlemi ALIGN komutu ile tamamlanıyor.

PARTED kullanırken ihtiyaç duyulan temel komutlar aşağıdaki gibi. Komutlar genel Linux CLI standartlarında hazırlandığından işlevleri rahatlıkla öngörülebiliyor, bu yüzden açıklama satırı eklemiyorum;

parted
select /dev/sda
mklabel gpt
print
print free
rm 1
mkpart primary 50% 100%
unit <s | MB | GB | TB>
align-check optimal 1
align <optimal | minimal> 1

Detaylı bilgi için PARTED MAN PAGE.

Disk bölüm tablosu (partition table) oluşturmadan, diskin tamamını kapsayan, tek parça dosya sistemi kullanmak mümkün. Tavsiye edilen bir yöntem olmamasına karşın pratikte bir sorunla karşılaşmadım.

mkfs.ext4 /dev/sda

Hamdi ÖZCAN – ozcan.com

8 Mart 2015

Posted In: align, disk bölümleme, fdisk, gpt, linux, lkd, mbr, parted, partition, teknik, tr

2TB’den büyük GPT disk bölümleri nasıl oluşturulur?

32bit‘lik MBR (master boot record) tablolarının sınırı olan 2TB seviyesinin aşılmasıyla 64bit derinliğinde adresleme yeteneğine sahip GPT (GUID Partition Table) disk bölüm tabloları kullanılmaya başlandı.

Linux komut satırında PARTED adlı araç kullanılarak GPT disk bölümleri oluşturulabiliyor. Bu bölümler “FDISK -l” ile görüntülendiğinde, tam uyumlu cevap almak maalesef mümkün değil. 

Kolaylık sağlaması adına disk bölümlerini % değerler vererek oluşturmak mümkün.

En iyi performans için fiziksel disk sektörlerinin başlangıç-bitiş noktalarını, disk bölümlerinin ve dolayısıyla dosya sisteminin başlangıç-bitiş noktalarıyla hizalanması gerekiyor. Bu hizalama işlemi ALIGN komutu ile tamamlanıyor.

PARTED kullanırken ihtiyaç duyulan temel komutlar aşağıdaki gibi. Komutlar genel Linux CLI standartlarında hazırlandığından işlevleri rahatlıkla öngörülebiliyor, bu yüzden açıklama satırı eklemiyorum;

parted
select /dev/sda
mklabel gpt
print
print free
rm 1
mkpart primary 50% 100%
unit <s | MB | GB | TB>
align-check optimal 1
align <optimal | minimal> 1

Detaylı bilgi için PARTED MAN PAGE.

Disk bölüm tablosu (partition table) oluşturmadan, diskin tamamını kapsayan, tek parça dosya sistemi kullanmak mümkün. Tavsiye edilen bir yöntem olmamasına karşın pratikte bir sorunla karşılaşmadım.

mkfs.ext4 /dev/sda

Hamdi ÖZCAN – ozcan.com

8 Mart 2015

Posted In: align, disk bölümleme, fdisk, gpt, linux, lkd, mbr, parted, partition, teknik, tr

Şifreli e-posta neden yaygınlaşmıyor?

encrypted-emailSayısal iletişimde e-posta önemli servislerden birisi. Şifreleme kullanılmadan yapılan e-posta trafiği, olası kritik verinin açık ve erişilebilir olarak İnternet ortamından geçmesi anlamına geliyor.

Günümüzde e-posta şifreleme yöntemleri karmaşık yapıya sahip ve tek taraflı e-posta şifreleme yöntemi bulunmuyor. Sayısal kimlik tabanlı şifreleme (IBE – Identity Based Encryption) günümüzde ideale en yakın çözümlerden. IBE’de şifreleme, e-postayı yazan ve okuyan taraflara en yakın seviyede başlatılır ve bitirilir. Yasal düzenlemeler ile nitelikli sayısal kimliklere, veri bütünlüğünü kanıtlama, kimlik doğrulama ve inkar edilemezlik özellikleri kazandırılmıştır.

E-posta şifreleme yöntemlerinin tamamı PKI (public key infrastructure) altyapısına dayanmaktadır. Tam bir PKI uygulaması, dijital sertifikaların dağıtılması ve yönetilmesini gerektirir. PKI masraflı ve bilgi birikimi gerektiren bir uygulamadır. PKI altyapısı kullanılarak yapılan e-posta şifrelemede açık anahtarların (public key) güvenli şekilde dağıtılması yapının problemlerindendir. Şifreli e-posta gönderilmek istendiğinde, karşı tarafın açık anahtarının güvenli şekilde önceden temin edilmiş olması gerekliliği, yapının en zayıf noktasıdır. Sayısal kimlik tabanlı e-posta şifreleme bu nedenlerden dolayı yaygınlaşamamaktadır.

Uygulanabilirliği yüksek ve son kullanıcı bilinci gerektirmeyen şifreleme alternatifi, e-posta sunucuları arasında TLS kullanılmasına dayanır. Fakat RFC 2487e göre, İnternet’e açık sunucular sadece TLS bağlantıları kabul edilecek şekilde ayarlanmamalıdır.

DNSSEC’in kullanım alanlarından birisi de güvenli açık anahtar dağıtımı olacak. DNSSEC ile ilgili yazım ilginizi çekebilir, http://ozcan.com/blog/dnssec-nedir/ .

Hamdi ÖZCAN – ozcan.com

6 Kasım 2014

Posted In: açık anahtar altyapısı, dnssec, e-mail, eposta, IBE, ID-based encryption, kripto, lkd, pki, RFC 2487, sayısal kimlik tabanlı şifreleme, şifreleme, teknik, TLS, tr

Şifreli e-posta neden yaygınlaşmıyor?

encrypted-emailSayısal iletişimde e-posta önemli servislerden birisi. Şifreleme kullanılmadan yapılan e-posta trafiği, olası kritik verinin açık ve erişilebilir olarak İnternet ortamından geçmesi anlamına geliyor.

Günümüzde e-posta şifreleme yöntemleri karmaşık yapıya sahip ve tek taraflı e-posta şifreleme yöntemi bulunmuyor. Sayısal kimlik tabanlı şifreleme (IBE – Identity Based Encryption) günümüzde ideale en yakın çözümlerden. IBE’de şifreleme, e-postayı yazan ve okuyan taraflara en yakın seviyede başlatılır ve bitirilir. Yasal düzenlemeler ile nitelikli sayısal kimliklere, veri bütünlüğünü kanıtlama, kimlik doğrulama ve inkar edilemezlik özellikleri kazandırılmıştır.

E-posta şifreleme yöntemlerinin tamamı PKI (public key infrastructure) altyapısına dayanmaktadır. Tam bir PKI uygulaması, dijital sertifikaların dağıtılması ve yönetilmesini gerektirir. PKI masraflı ve bilgi birikimi gerektiren bir uygulamadır. PKI altyapısı kullanılarak yapılan e-posta şifrelemede açık anahtarların (public key) güvenli şekilde dağıtılması yapının problemlerindendir. Şifreli e-posta gönderilmek istendiğinde, karşı tarafın açık anahtarının güvenli şekilde önceden temin edilmiş olması gerekliliği, yapının en zayıf noktasıdır. Sayısal kimlik tabanlı e-posta şifreleme bu nedenlerden dolayı yaygınlaşamamaktadır.

Uygulanabilirliği yüksek ve son kullanıcı bilinci gerektirmeyen şifreleme alternatifi, e-posta sunucuları arasında TLS kullanılmasına dayanır. Fakat RFC 2487e göre, İnternet’e açık sunucular sadece TLS bağlantıları kabul edilecek şekilde ayarlanmamalıdır.

DNSSEC’in kullanım alanlarından birisi de güvenli açık anahtar dağıtımı olacak. DNSSEC ile ilgili yazım ilginizi çekebilir, /blog/dnssec-nedir/ .

Hamdi ÖZCAN – ozcan.com

6 Kasım 2014

Posted In: açık anahtar altyapısı, dnssec, e-mail, eposta, IBE, ID-based encryption, kripto, lkd, pki, RFC 2487, sayısal kimlik tabanlı şifreleme, şifreleme, teknik, TLS, tr

WP Twitter Auto Publish Powered By : XYZScripts.com