XFS Filesystem has duplicate UUID – can’t mount

Daha önce Bilgio A.Ş / Linux Akademi blogunda yayınladığım XFS ile ilgili bir ipucu içeren yazıyı, buradan da yayınlıyorum.

Gerek müşterilerimiz gerekse kendimizin AWS üzerinde barındırdığımız sanal sunucularımızda klasik olarak RHEL 7 kullanıyoruz. Red Hat ve türevlerinin 7 sürümü ile birlikte default olarak gelmeye başlayan XFS dosya sistemi ile formatlanmış diskleri farklı sunuculara mount etmek istediğiniz zaman – ki böyle bir durum özellikle AWS için problematic sistemlerin ebs disklerini recovery amacı ile bir başka ec2 instance’ına bağlamak sureti ile cereyan eden bir durumdur – aşağıdaki mount hatası ile işlem başarısız olabilir:

mount: wrong fs type, bad option, bad superblock on /dev/xvdf2,
       missing codepage or helper program, or other error

       In some cases useful info is found in syslog - try
       dmesg | tail or so.

Bu durumda detay almak için aşağıdaki komut ile

 journalctl -k

komutu ile kernel tarafından üretilen loglara baktığınızda sistem üzerindeki iki disk bölümünün aynı uuid’ye sahip olduğu gerekçesi ile mount işleminin yapılamadığını belirtir aşağıdaki hata mesajını görürsünüz:

[  789.411840] XFS (xvdf2): Filesystem has duplicate UUID 6785eb86-c596-4229-85fb-4d30c848c6e8 - can't mount

Bu durumda önünüzde iki seçenek bulunuyor.

Birincisi diski aşağıdaki örnekte olduğu gibi nouuid parametresi ile mount etmektir:

# mount -t xfs -o nouuid /dev/xvdf2 /disk2

Bu yöntem disk üzerinde herhangi bir değişiklik yapmadığı için özellikle ilgili diski ilgili sisteme geçici olarak mount edecekseniz ilk tercih edilebilecek yoldur.

İkinci opsiyon ise, ilgili disk için aşağıdaki komut ile yeni bir uuid üretip diski bu şekilde mount etmektir:

# xfs_admin -U generate /dev/xvdf2
# sudo mount /dev/xvdf2 /disk2/ -t xfs

Bu şekilde disk sorunsuz olarak mount edilecek ve erişilir duruma gelecektir.

Kategori: ipucu | (Henüz Yorumlanmamış) |

systemd ile Sistem ve Servis Yönetimi

Linux Akademi blogunda yayınladığım systemd makalesini buradan da yayınlıyorum.

Bilindiği gibi RHEL, Oracle, SuSe, Debian gibi major bir çok linux dağıtımı eski SystemV init sistemi yerine default olarak systemd kullanmaya başladılar. systemd’nin sadece açılışlarda servislerin inşaasını üstlenen init sistemine oranla daha komplike olması, servisler için paralelizasyon, mount ve automount, journal, ve system state snapshot desteği gibi bir dizin özellik barındırmasından dolayı kimilerince Unix filozofisine aykırı olduğu gerekçesi ile (“do one thing and do it well”) hoş karşılanmasa da yukarıda ismi zikredilen dağıtımlar tarafından default olarak kullanılmaya başlaması nedeniyle sıkça karşılaşılan ve dinamiklerinin bilinmesinde fayda olan bir sistem.

Yazinin devami icin tiklayin.

Kategori: *nix,Genel | (2 yorum ) |

389 Directory Server (LDAP) Kurulum ve Yapılandırması

Bu makaleyi daha önce BilgiO / Linux Akademi Blogu‘nda yayınlamıştım. Aynı şekilde burada da yayınlıyorum.

Linux ve açık kaynak kod teknolojiler barındıran altyapılar için, merkezi kimlik denetimi işleri için bir ldap dizin servisi ihtiyacı olduğu zaman OpenLDAP dahil kullanılabilecek bir kaç alternatif var. Multi Master replikasyon desteği, yüksek performans, LDAPv3 uyumluluğu gibi güzel özellikleri ve kullanışlı bir arayüze sahip olmasından dolayı “389 Directory Server” alternatifler arasında iyi bir tercih olmaktadır. RHEL tarafından geliştirilmekte olan 389-DS hemen her tür operasyonu da online olarak gerçekleştirebilmesinden mütevellit, üretim ortamları için de çok uygun bir directory serverdır.

Bu yazıda, tüm özelliklerine http://directory.fedoraproject.org/docs/389ds/FAQ/features.html adresinden erişelebilecek olan 389 Directory Server’ın, CentOS 6.6 sürümü üzerinde nasıl kurulacağı; temel ve genel güvenlik ayarlarının yapılarak nasıl servisin nasıl devreye alınabileceğine değineceğim. Yazının sonraki bölümlerinde ise Master & Slave replication ve SSSD üzerinden SSH servisinin ve SUDO entegrasyonlarından bahsedeceğim.

Yazinin devami icin tiklayin.

Kategori: *nix | (2 yorum ) |

Sistem Yönetiminde Güvenlik Odaklılık

Geçenlerde, Linux Akademi‘nin blogunda sistem yönetimi ve güvenlik odaklılık üzerine şöyle bir yazı paylaşmıştım:

Teknolojik gelişmelerdeki hız ve değişim bu ekosistem içerisinde yer alan herkes için alışkanlıkların değiştirilmesini ve bu yeni gelişmelerin yol açtığı yeni iş yapış şekillerine evrilinmesini şart koşuyor. Bu kaidenin ne oranda hayata geçirildiği ise vizyonun şekillenmesi için bir ölçüt teşkil ediyor. Bu yeni dinamikler neticesinde her geçen gün eskinin klasik sistem yönetim anlayışını bir kenara bırakıp yeni metodolojilere daha çok adapte ediyoruz kendimizi.

Hemen herşeyin “manual” yürüdüğü, kapalı ve rutine bağlanan eski iş yapış şekilleri, yeni disiplinlerin türemesi ile daha çok araç, gerecin kullanıldığı ve herşeyi otomatize etmeye dayalı ve insan faktörünü olabildiğince aza indirgeyerek kendi kendini idame ettirebilen, dirençli ve esnek altyapılar kurgulama ve bunları “yönetme” şekline dönüştü. Durum böyle olunca yani herşey daha basitleşmiş gibi görünürken, bu basitliğin arkasını dolduran dinamiklerin daha komplike hale gelmiş olması, eski sistem yönetimi anlayışını yerle bir ederek, daha çok araştırmaya ve mühendisliğe dayalı başka tür bir sistem yönetimi anlayışına evrildi. -Dünya bu yeni yaklaşıma uzun süre önce geçmiş olmasına rağmen-, bizim ülkemizde de bu yaklaşımın etkileri gün geçtikçe daha fazla gözlemlenebilir bir hal alıyor.

Yazinin devami icin tiklayin.

Kategori: Genel | (Henüz Yorumlanmamış) |

Locust – Açık Kaynak Kod Load Test Uygulaması

Locust, web uygulamaları üzerinde detaylı olarak stress test yapabilmeye olanak sağlayan açık kaynak kodlu çok güzel bir yazılım. Temel olarak yük testinin yapılacağı web uygulaması için hangi sayfalarda kaç kişinin gezeceğini, hangi sayfalardan hangi sayfalara geçileceği, toplam dolaşım süresinin ne olacağı vs. gibi detaylı senaryonuzu bir python scripti şeklinde tarif edip, locust’a bu senaryoyu simule etmesini söylüyorsunuz.

Aşağıdaki gibi güzel ve anlaşılır bir web arabirimi olan Locust aynı anda milyonlarca anlık ziyaretiçiyi belirlediğiniz eşik değerlerine göre web uygulamanıza dolduruyor ve arayüz üzerinden uygulamanızın kullanıcı isteklerine verdiği cevapların stabilitesini ölçüp sınırlarınızı tespit edebiliyorsunuz.

 

Yazinin devami icin tiklayin.

Kategori: *nix,Genel,Qmail | (1 yorum) |

Online Shell Script Checker

http://www.shellcheck.net/ adresinde, online olarak shell scriptlerinizi hatalara karşı kontrol edebileceğiniz güzel bir servis var. Böyle küçük ve kullanışlı servislerin bookmark’da durmasında fayda var.

Kategori: *nix,Genel,Scripts | (Henüz Yorumlanmamış) |

Two-Factor Auth Destekli OpenVPN Server Kurulumu

IT altyapılarının güvenilirliğini ve bağlı olarak sürekliliğini sağlamak üzere uygulanması gereken süreç disiplinlerinde kritik data içeren mecralara erişimlerde sıkı güvenlik prosedürleri izlenmesi gerekiyor. Bu anlamda özellikle PCI-DSS ya da ISO 27001 standartlarına tabii olan ya da olmak isteyen firmaların, kendi networklerine “dışarıdan” erişim ihtiyacının bulunması durumunda implemente edecekleri VPN çözümlerinin, bahsi geçen güvenlik standartlarına uygun olması gerekiyor. Örnek olarak PCI-DSS uyumluluğu için kullanılan VPN çözümünde kimlik doğrulama işlemi en az iki aşamalı olarak gerçekleştirilmek durumunda. Bu zorunluluk PCS-DSS V3’de şu şekilde tarif edilmiş durumda:

Implement Strong Access Control Measures 8.3 – Incorporate two-factor authentication for remote network access originating from outside the network by personnel (including users and administrators) and all third parties, (including vendor access for support or maintenance). Note: Two-factor authentication requires that two of the three authentication methods (see Requirement 8.2 for descriptions of authentication methods) be used for authentication. 8.2 Authentication methods – Something you know, such as a password or passphrase – Something you have, such as a token device or smart card – Something you are, such as a biometric.

Bu tanıma göre, networkünüze uzaktan erişim sağlayacak her türlü bağlantı için yapılacak kimlik denetimlerinde madde 8.2’de belirtilen metodlardan en az ikisinin kullanılması gerekiyor. Günümüzde yaygın olarak kullanılan SSL VPN çözümlerinde PKI altyapısı kullanılarak, bir username üzerinden key ibraz etmek sureti ile kimlik denetimi gerçekleştirilip bağlantı kuruluyor. Ancak bu tek yönlü kimlik denetimi, anlaşıldığı üzere yeterli değil. Bu nedenle kullandığınız VPN çözümünün username/ password (ya da key) ibraz etmeye ek olarak token ya da bir biometric denetim mekanizmasını destekliyor olması gerekiyor. Biometric denetim mekanizmalarının oldukça sınırlayıcı ve maliyetli çözümler olduğunu düşünürsek, iki yönlü doğrulama için username + token mekanizmalarını birlikte kullanmak konunun pratik çözümü olacaktır. İşte bu konudan hareketle bu yazıda, bir SSL VPN implementastonu olan OpenVPN ve Google Authenticator kullanılarak two-factor authentication destekleyen bir VPN sunucusu kurulumundan bahsedeceğim. En nihayetinde halihazırda kullandığınız OpenVPN altyapınıza yazıda anlatıldığı şekli ile google authenticator entegrasyonu da yapabilirsiniz.

Yazinin devami icin tiklayin.

Kategori: *nix,Genel,Security | (2 yorum ) |

Portspoof ile Network Scanner’ları Yanıtlamak

Portspoof, bir network scanner uygulaması kullanarak sunucular üzerinde çalışan servisleri tespit etmek isteyen saldırganların işlerini zorlaştırmak ve tarama sonucunu manupule etmek sureti onları yanıltmak üzere geliştirilmiş enteresan bir uygulamadır.

Bildiğiniz gibi network scanner uygulamalarının uzaktaki bir sistemde çalışan servisleri tespit etmeleri için kullandıkları bir takım teknikler vardır. Bu tekniklerden en tipik olanı ise TCP’nin üçlü el sıkışma prensibinden hareketle uzak sunucunun tüm portlarına (ya da ilgilenilen portlarına) birer SYN paketi göndermek ve alınacak cevaba göre ilgili servisin mevcudiyeti ya da durumu ile ilgili karara varmaktır. Örnek olarak üzerinde bir web sunucusu çalıştığını bildiğiniz uzaktaki bir sistemin 80. portuna bir SYN paketi gönderirseniz ve uzak sunucudaki bu servis çalışır durumdaysa -ayrıca herhangi bir engelleme yoksa- cevap olarak SYN+ACK paketi alırsınız. Bu şekilde ilgili servisin çalışır vaziyette olduğu uzaktan tespit edilir ve örneğin nmap ilgili port’u OPEN olarak bildirir. Aynı şekilde gönderilen SYN paketine RST paketi dönerse, uzak sunucuda ilgili portu dinleyen bir servis olmadığı anlaşılır ve scanner uygulaması durumu CLOSED olarak değerlendirir. Eğer uzak sunucu bir firewall üzerinden korunuyorsa ve SYN paketini gönderdiğiniz porta erişim izniniz yoksa ilgili paket -genel olarak- drop edilir bu nedenle de geriye herhangi bir paket döndürülmez. Bu durumda da network scanner uygulaması durumu FILTERED olarak bildirir, bu şekilde de uzaktaki sistemin bir firewall’a sahip olduğunu tespit edebilirsiniz.

Yazinin devami icin tiklayin.

Kategori: *nix,Genel,ipucu,Security | (3 yorum ) |

Daha Eski Yazılar »