Sistem yönetimi

Kasım 13, 2009

Güvenli Apache kurulumu (1)

Kategori: Solaris — mbuyukkarakas @ 2:08 pm
Tags: ,

Solaris 10 sunucularımızda Apache 2.2.x sürümlerini çalıştırmak için hazırlık yapıyoruz. Elbette güvenli kurulumun üzerinde yine aynı şekilde güvenli modda çalışan uygulamalar istediğimiz için Apache web server’ın da güvenli kurulumuna dair araştırmalar yapmaya başladık.

Bu ilk kısımda Sun’ın bu konuda yayınlanmış belgelerini referans alarak Apache’nin kısıtlı yetkilerle kontrollü çalıştırılmasına dair bulduklarımı özetlemeye çalışacağım.

Apache’nin SMF servisi olarak nasıl çalıştırılacağını daha önceki bir yazımda açıklamıştım.

Apache SMF dönüşüm

SMF servisi olarak başlattıktan sonra servisin deamon veya root gibi kullanıcı hesapları yerine, kısıtlı yetkilere sahip webservd hesabıyla çalıştırılabilmesi için aşağıdaki komutların takip edilmesi yeterlidir.

# svccfg -s apache2
svc:/network/http:apache2> setprop start/user = astring: webservd
svc:/network/http:apache2> setprop start/group = astring: webservd

Apache servisinin minimum yetki seviyesinde çalıştırılması için gereken ayarlamalar yapılıyor.

svc:/network/http:apache2> setprop start/privileges = astring: basic,!proc_session,!proc_info,!file_link_any,net_privaddr
svc:/network/http:apache2> setprop start/limit_privileges = astring: :default
svc:/network/http:apache2> setprop start/use_profile = boolean: false
svc:/network/http:apache2> setprop start/supp_groups = astring: :default
svc:/network/http:apache2> setprop start/working_directory = astring:
:default
svc:/network/http:apache2> setprop start/project = astring: :default
svc:/network/http:apache2> setprop start/resource_pool = astring: :default
svc:/network/http:apache2> end

Bu noktada servisi yeniden enable etmek gerekiyor.

# svcadm -v enable -s apache2
svc:/network/http:apache2 enabled.

Eğer servis daha önceden çalıştırılmışsa /usr/local/apache2 dizininin sahipliği bin:bin olarak düzenlenmiştir. Bu durumda webservd hesabı log dosyalarını okuyamayacağı için aşağıdaki hata mesajını alabilirsiniz.

 

# cat /var/svc/log/application-web-apache2:default.log

[ Nov 13 14:46:31 Executing start method ("/usr/local/apache2/bin/apachectl start") ]
(13)Permission denied: httpd: could not open error log file /usr/local/apache2/logs/error_log.

Bu durumda klasör sahipliğini webservd hesap ve grubuna devretmek gerekiyor.

chown -R webservd:webservd /usr/local/apache2/

Daha sonra sunucuyu yeniden başlattığınızda httpd servisinin yalnızda bu kullanıcı hesabıyla çalıştığını kontrol etmelisiniz.

ps -ef|grep http|grep -v grep

webservd   714   459   0 15:12:56 ?           0:00 /usr/local/apache2/bin/httpd -k start

ppriv -S 714

714:    /usr/local/apache2/bin/httpd -k start

flags = <none>

E: net_privaddr,proc_exec,proc_fork

I: net_privaddr,proc_exec,proc_fork

P: net_privaddr,proc_exec,proc_fork

L: all

Vmware Tools 4.0 ve Solaris 10

Kategori: Solaris — mbuyukkarakas @ 1:52 pm
Tags: ,

Vsphere 4.0′a geçtiğimizden bu yana sanal Solaris 10 sunucularının vmware tools paketlerini değiştirmek için fırsat kolluyordum. Geçen hafta sonu bir kaç makinede bu işlemi yapıp yeni VM tools’u yükledikten sonra servisin kendiliğinden kapandığını farkettim. Makine açılışında servis açılıyor ancak daha sonra kapanıyordu. Bu konuyla ilgili küçük bir araştırmadan sonra UTF-8 locale ile ilgili aşağıdaki paketin yüklenmesi gerektiğini öğrendim. Paket yüklendikten sonra sunucular sorunsuz olarak VM tools’u çalıştırmaya başladılar.

VMware Tools does not start on a Solaris guest

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1014683

 

 

Kasım 5, 2009

Solaris 10 güvenli kurulum (1)

Kategori: Solaris — mbuyukkarakas @ 3:56 pm
Tags: ,

Güvenli bir Solaris 10 kurulumu hazırlamaya çalışıyorum. Olabildiğince az servis ve uygulama yüklü olması tercihim. Gereken her türlü ortamda minimum saldırı yüzeyine sahip, kullanışlı bir işletim sistemi. Üzerinde bayağı zamandır çalışıyorum ve bu konuda bir yordam hazırladığımı söyleyebilirim.

Temel paket olarak Core Networking (SUNWcreq) paketini kullandım. Aşağıda gerekli olduğunu düşündüğüm ve  ek olarak yüklediğim paketler bulunuyor.

  • Automated Security Enhancment Tools (SUNWast)
  • Audit Service Implementation (SUNWaudit)
  • Basic Audit Reporting Tools (SUNWbart)
  • Documentation Tools (SUNWdoc )
  • Freeware other utilities (SUNWCfwutil)
  • Freeware shells (SUNWCfwshl)
  • On-line manual pages (SUNWman)
  • Secure Shell (SUNWCssh)

Daha sonra sıra yamalamaya geldi. PCA (Patch check advanced) scriptini kullanarak sunucumun yamalarını yükledim. Bu yükleme için yalnızca Perl’e ve wget’e ihtiyaç duyuluyor. Perl mevcut kurulumda gelmekte. wget ise

  • GNU wget (SUNWCwget)
  • Bağımlılık  – Common GNU package (gcmn)

paketlerinin yüklenmesiyle hazır hale geliyor. PCA’nın aktif hale gelmesi için sunucunuzu doğrudan HTTPS ile Internet’e çıkabilir hale getirmek gerekli.  Çalıştığında 60′a yakın yama buluyor ancak bende bunlardan yalnızca 20’sini yükledi.

http://www.par.univie.ac.at/solaris/pca/intro.html

Bu işlemler bittikten sonra da sunucuya Solaris Security Toolkit (SUNWjass) ile bazı ilave düzenlemeler yaptım. SUNWjass’ı http://www.sun.com/software/security/jass/ sayfasından indirebilirsiniz. Araç hakkında detaylı bilgiye bu blogdan ulaşmak mümkün.

SUNWjass çalıştırıldığında /etc/hosts.deny dosyasına ALL kaydını ekliyor. Dolayısıyla başta ayarları özelleştirmezseniz bir sonraki açılışta sunucuya SSH bağlantısı yapamayacaksınız anlamına geliyor. Bu nedenle uygulamadan önce test sistemlerinde çalıştırmak ve özelleşmiş ayarlarla prod sistemlerine geçmek en doğrusu.

 

patch

Eylül 29, 2009

BackupExec 12.5 ve Solaris 10 yedekleme sorunu

Kategori: Solaris — mbuyukkarakas @ 7:28 pm
Tags: , ,

Yedekleme yazılımımızı BrightStore’dan Symantec BackupExec 12.5′a geçirdiğimizden bu yana enteresan sorunlarla karşılaşıyoruz. Geniş bir platform ve farklı sistemlerin olduğu bir ortamda böyle bir değişikliğin sancısız olmayacağının farkındaydık ama bu kadar da enteresan şeyler göreceğimizi açıkçası pek sanmıyordum.

Anlatmaya çalıştığım sorunumuz şu : Solaris 10 U7 sunucularda BackupExec agent’ını yükleyerek çalıştırdıktan sonra BE’nin yönetim konsolunda normal olarak sunucuyu görmemiz gerekir. Ancak farklı yöntemler denememize rağmen bir türlü sunucuyu BE’ye tanıtmayı başaramadık.

Agent’ın debug modunu açtığımızda da hep aynı mesajı alıyorduk ;

NrdsAdvertiserThread: EnumSelfDLE for file system 22 returned -1(0xFFFFFFFF) and 0 DLEs

Symantec’le yaptığımız yazışmalar ve açılan “case” sonucunda bize, ipe sapa gelmeyen aşağıdaki açıklamayı gönderdiler.

http://seer.entsupport.symantec.com/docs/316840.htm

Özetle, Solaris’teki NIC cihaz adının ortasında (başı ve sonu değil) rakam bulunuyorsa BE 12.5 sunucusu bu agentı tanımıyor, agent kendisini BE’ye tanıtamıyor gibi garip bir durum vardı. (Ör : e1000g0 çalışmıyor, fge0 çalışıyor).

Tabi bu durumu önceleri biraz gülerek ama zaman ilerledikçe ve işler aksadıkça kızarak ve sonrasında da ciddi öfke patlamaları şeklinde karşılamaya başladık. İşin kötü yanı , NIC device name’ler henüz Solaris 10′da değiştirilemiyor. Ortamımızda tüm Solaris sunucuları Vmware ESX 3.5 üzerinde çalışıyor ve ESX hostlarda yalnızca e1000g sürücüsünü kullanan Ethernet kartları tanımlı. Dolayısıyla kartları değiştirerek de “device name”leri değiştirme imkanımız yok.

Cihaz ismini değiştirme seçeneği yalnızca Open Solaris ‘de dladm rename-link komutu ile desteklenmekte.

http://www.sun.com/bigadmin/sundocs/articles/vnamingsol.jsp

http://www.opensolaris.org/os/project/clearview/docs/vnameoverview.pdf

Ama en sonunda biraz (itiraf ediyorum birazdan daha fazla :) ) kastırınca ve Sun Microsystems Türkiye’den de küçük bir destek alarak sorunumuzu çözdük.

Yaptığımız işlem basitçe Solaris ve BE’yi kandırmak. Mevcut ismi değiştiremeyince biz de içinde tek NIC’in bulunduğu bir Link aggregation yaratarak BE’nin muhatap olduğu NIC’in seveceği türden (!) bir isminin olmasını sağladık. Aşağıda bu işlemi nasıl yaptığımızı gösteren komutlar bulunuyor.

# ifconfig e1000g0 down unplumb (bu komutu kullanmadan dladm çalıştırılırsa ‘cihaz kullanılıyor’ hatası veriyor)
# dladm create-aggr -d e1000g0 1
# ifconfig aggr1 plumb up
# mv /etc/hostname.e1000g0 /etc/hostname.aggr1

Not : Sun Microsystems Türkiye’den Serkan Berk’e yardımları için bu vesileyle teşekkür ediyoruz.

Eylül 9, 2009

Link : RHCE sınav deneyimi

Kategori: Uncategorized — mbuyukkarakas @ 6:25 am
Tags:

Ekteki yazıyı yazan arkadaşın gerçekten de dikkate alınabilecek önerileri ve paylaşımları bulunuyor.

http://conigliaro.org/2009/09/08/my-rhce-exam-experience/

Eylül 8, 2009

Solaris 10, Apache v2.2.12 SMF düzenleme

Kategori: Solaris — mbuyukkarakas @ 12:47 pm
Tags: , , , ,

Projelerden biri için iki adet Solaris 10 (u7) sunucu üzerine medya ile birlikte gelen Apache’nin kurulması gerekiyordu. Kurduk :) Ama daha sonra yazılımcılar en az V2 ile çalışmak istediklerini belirtip V1.3′ten vazgeçtiler.

Herhangi bir yazılımcının istek ve karar değişiklikleri asla bitmeyeceği için bir süre sonra bunu da yeterli görmeyip V2.2 ile çalışmak istediklerini belirttiler.

Solaris medyası ile V2 geldiği için V2.2.12′ yi ancak www.sunfreeware.com’dan bulabildim.

http://www.sunfreeware.com/programlistintel10.html#gcc33

Apache’nin bu sürümü beraberinde bir çok ek paketin de yüklenmesini istiyor. Özellikle prod sunucularına GCC kurmak istemeyenler için libgcc.3-4-6 tavsiye edilmiş.

Kurulumlar tamamlandığında elimizde çalışır halde Apache v2 sunucuları vardı ve yazılımcıların tüm isteklerini karşılıyordu ama bu sefer de yönetim sorunları ortaya çıktı.

Yüklemede kullandığım stream data package anladığım kadarıyla Apache için SMF servisi oluşturmamıştı. Bu durumda ancak ilgili klasörün içinden apachectl’yi elle çalıştırarak hizmeti başlatabiliyorduk.

Aslında bu durum işime de gelmedi değil. Ne kadar zamandır SMF hakkında pratik yapmayı planlıyordum ve bu sayede el alışkanlığımı da geliştirmiş oldum.

Apache V2 için SMF servisi oluşturmanın yolu çok basit.

1- Sun’ın aşağıdaki belgesi oldukça açıklayıcı

http://www.sun.com/bigadmin/features/articles/id_manager_service.html

2- Buradan mevcut XML dosya örneğini alıp üzerinde bazı küçük değişiklikler yaptım ve bahsedildiği gibi bir klasör altına yerleştirdim.

3- Aşağıdaki komutları çalıştırdım ve Voila ! Servis hazırdı.

bash-3.00# svccfg validate apache2.xml
bash-3.00# svccfg import apache2.xml

SMF ile ilgilenenler için açıklayıcı bir forum topiğini de ekte yayınlıyorum.

http://www.unix.com/sun-solaris/32936-solaris-10-add-new-svc.html

Ağustos 12, 2009

Process Maker ve iş akışı yazmak (2)

Kategori: Diğer — mbuyukkarakas @ 11:03 am
Tags: ,

PM hakkında öğrendiğim bir kaç güzel özellik ve çalışmayı kolaylaştırıcı ipucunu paylaşmak istiyorum.

Yeni çalışma alanı oluşturmak (Test ortamı).

Gerçek ortamda test geliştirmeleri yapmak istemeyenler ama birden fazla da sunucu / PC kullanmak istemeyenler için. Aynı sunucu üzerinde birden çok çalışma alanı oluşturmanın yöntemi.

http://wiki.processmaker.com/index.php/Create_a_new_Workspace

Derivation Rule Condition içinde OR veya AND kullanmak

Bir seçim yapmanız gerektiğinde OR veya AND operatörlerini kullanmak istiyorsanız AND = ££ , OR =|| kullanılabilir. Diğer PHP operatörleri hakkında bilgiyi de aşağıdaki sayfadan bulabilirsiniz.

http://www.w3schools.com/PHP/php_operators.asp

Ağustos 11, 2009

Process Maker ve iş akışı yazmak

Kategori: Uncategorized — mbuyukkarakas @ 10:22 pm
Tags: ,

Process Maker’ ın, açık kaynak yazılımlar içinde uzun zamandır işime doğrudan olumlu etki eden en faydalı yazılım olduğunu düşünüyorum.

Eğer çalıştığınız ortamda iş akışı uygulamaları geliştirme ihtiyacınız varsa, hiç programlama bilgisine sahip olmadan bile geliştirme yapabileceğiniz bir yazılım ve grafik arayüzünü kullanarak profesyonel görünüme oldukça yakın formlar ve akış diyagramları elde edebilirsiniz. Üstelik bu akışları çok kısa zamanda ortam ve işinize adapte edebilirsiniz.

Yazılımla ilgili bu kısa girişi yaptıktan sonra, kullanırken edindiğim deneyimlerimden biraz bahsetmek istiyorum.

Kendi ortamımda yazılımı sürekli Windows platformunda denedim. İlk olarak söyleyebileceğim şeylerden biri, (henüz çözmeyi başaramadım) ilk denemem kendi PC’me kurarak (Win XP İng. SP2) yaptığım denemeydi ve uygulama içinden PHPMail kullanarak gönderdiğim e-postalarda Türkçe karakter sorunu çıkmıyordu. Ne zaman ki, uygulamayı daha ciddi bir ortama taşımaya karar verdim ve Windows 2003 sunucuya geçtim, giden e-postalarda Türkçe karakter sorunu çıktı. Halen çözümünü araştırıyorum ama şimdilik ciddi bir sorun değil benim için.

Bunun dışında Process maker’i Linux ortamında çalıştırmak isteyenler varsa, Ubuntu’da nasıl yapılacağı aşağıdaki blogda tarif ediliyor.

http://blog.evolutioncreations.com/2008/11/installing-process-maker-on-ubuntu-804.html

İkinci zorluk, Active Directory entegrasyonundaydı. Önce test çalışmalarımı yerel hesaplarla sürdürdüm ama ne zaman ki gerçek ortama geçtik, AD sorunu ortaya çıktı. Bunu da aşağıdaki forum yazışmasını takip ederek çözebilirsiniz. Tamamiyle basit bir “trick”i var.

http://forum.processmaker.com/viewtopic.php?f=5&t=1157&start=0&st=0&sk=t&sd=a

Bir iş akışı uzmanı değilim ama ihtiyaçlarım bu konuda bazı deneyimleri kazanmamı sağladı. Süreçlerini iş akışlarına çevirmek isteyenler için naçizane aşağıdaki önerilerde bulunmak isterim.

  • Bir süreci PM ile iş akışına dönüştürmek istiyorsanız, öncelikle kağıt üstünde bir çalışma yapmak iyi olacaktır. Tercihen, Visio vs. ortamlarda hazır akışlarınız varsa işiniz çok daha kolay olacaktır. Yoksa önce süreci tasarlamak için de zaman harcamak zorunda kalacaksınız.
  • Küçük adımlarla başlayın. Kredi kartı talep sürecinin tamamını sistemin içine almak yerine önce talep bildirimi gibi daha küçük süreç(çik)leri halledin. Zamanla deneyim kazandıkça, başta birkaç gün harcadığınız bir iş, tam bir günden daha kısa süre içinde bitebiliyor.
  • Geliştirme yaparken, kullandığınız anahtar alanları bir yere not edin. Daha sonra salt-okunur olarak başka formlarda bu alanları görüntülemek istediğinizde hatırlamadığınız bir alan adı için geri dönmek zor olabiliyor.
  • Uygulamanın içinde “field name” diyeceğimiz alanlar için kesinlikle Türkçe karakterler kullanmayın. “Display name” olarak belirtebileceğimiz alanların görünür isimleri için TR sorunu yok ama bahsettiğim noktalarda aman dikkat !
  • Açık kaynak bir yazılım olması itibariyle, kararlılığının her an %100 garantisi yok. Mutlaka sık sık yedekleyerek çalışın. Ummadığınız bir yerde tasarladığınız form uçabilir. Nadir görülüyor ama olası bir durum.

Sonuç olarak 10 gün içinde biri 24 adımlı, diğeri 13 adımlı ve bir kaç tane de irili ufaklı olmak üzere 9 farklı süreci iş akışı sistemine aktarmayı başardım. Elimde daha önce bunların çoğunun Word veya Visio olarak hazırlanmış çizimleri vardı, bu nedenle yalnızca uygulamaya yoğunlaşabildim.

Örnek iş akışı

Örnek iş akışı

Farklı nedenleri ve / veya endişeleri yüzünden iş akışı alemine girmek isteyenlere Process Maker’ı şiddetle tavsiye ederim.

http://www.processmaker.com/

Ağustos 5, 2009

Link : Cool Free Tools for Windows Admins

Kategori: Uncategorized — mbuyukkarakas @ 8:07 am

Temmuz 25, 2009

Link : Hareketli “tag” bulutu oluşturmak

Kategori: Uncategorized — mbuyukkarakas @ 9:52 pm
Tags: ,

Hep bir hareketli “tag” bulutu oluşturmak istemişimdir. Oldukça verimli ve işe yarar , aynı zamanda da görsellik derecesi yüksek bir öğe olduğunu düşünüyorum.

Ekteki sayfada bunun nasıl yapılabileceği basit bir şekilde anlatılıyor.

http://www.bloggerbuster.com/2008/08/blogumus-flash-animated-label-cloud-for.html

Sonraki Sayfa »

WordPress.com'dan blog alın.