Tag Archives: linux

Tails

Tails, açılımı The Amnesic Incognito Live System olan açık kaynak ve özgür yazılım işletim sistemidir. Tails açılımındaki kavramların neler olduğunu da kısaca bir incelemek sistemin neyi ifade ettiğini anlayabilmek açısından önemlidir. Kısaca:

amnesia: forgetfulness; loss of long-term memory.
Türkçesi hafıza kaybıdır. Tails’ta vurgulanmak istenen ise uzun dönemli bir hafıza kaybı olduğudur. Yani, kullandığınız bilgisayarlarda herhangi bir iz bırakmamasıdır.

incognito: (of a person) having one's true identity concealed.
Türkçesi kim olduğunu belli etmeyendir. Tails’ta vurgulanmak istenen ise bir kişinin gerçek kimliğinin gizlenmesidir. Yani, anonimlik.

Diğer bir ifadeyle Tails, canlı bir işletim sistemi olup bireyin gizliliğini ve anonimliğini, bunu aşmak isteyen saldırganlardan korumayı hedefler. Interneti herhangi bir sansüre takılmadan, gittiğiniz her yerde ve her bilgisayarda ve arkasında iz bırakmadan kullanmanızı sağlar.

Tails, tam bir işletim sistemi olup, DVD, USB, ve SD kartlara kurulabilen, bilgisayarlardaki işletim sisteminden bağımsız olarak kullanılması için tasarlanmıştır. Tails, özgür yazılımdır ve Debian GNU/Linux tabanlıdır.

Tails’ın daha iyi anlaşılabilmesi için çevrimiçi anonimliğin ve sansürlerden kurtulmanın neden önemli olduğunu tekrar ifade etmek gerekmektedir. Öncelikle, birey neden anonimliğe ihtiyaç duyar? Türkiye gibi devam etmekte olan baskıcı bir sistem içerisinde kendini özgürce ifade edecek bir alan bulunmamaktadır. Bunun nedeni baskı kelimesinin anlamında yatmaktadır. Çünkü, baskı muhalefetin kökünü kazımayı amaçlar ve bu yolda da kendine her şeyi mübah görecek sistematik bir şeydir. Siyasi ve psikolojik araçları kullanır ve kitleleri ifade özgürlüğünün dışına iter. Diğer taraftan, birey anaysal hakkı olan gizliliğinin bu baskı altında eridiğini ve kendisini birey yapan şeylerle çevrili yapay bir ada oluşturan gizliliğinin ortadan kalktığını görecektir. Bu yüzden de kendisini özgürce ifade edebilmek için anonimliği tercih edecektir. Ayrıca, baskı araçlardan bir tanesi de sansürdür. Sansür, her türlü yayının, sinema ve tiyatro eserinin hükûmetçe önceden denetlenmesi işi, sıkı denetim anlamına gelmektedir. Baskı için denetim her hükûmetin en sık başvurduğu yollardan biridir. Kendi çıkarları dışında kalan veya kendini eleştiren ve muhalefet eden her şeyin ifade özgürlüğünün dışına itilmesi için denetler ve sansürler.

Tails gibi işletim sistemleri ise içerdiği anonimlik araçları ile bireylerin kendilerini baskıcı yapılarda hiçbir sansür engeline takılmadan özgürce ifade edebilmelerine olanak sağlamaktadır. Tails’ın en önemli anonimlik aracı Tor’dur.

  • Tails’ın içerdiği tüm yazılımlar Internete Tor üzerinden bağlanır.
  • Eğer, bir uygulama Internete doğrudan bağlanmaya kalkarsa, bağlantı güvenlik sebebiyle otomatik olarak engellenir.

Tor (eski adıyla onion router), ilk olarak Amerikan Donanması ile beraber, devlet içi iletişimleri korumak için geliştirilmiştir. Günümüzde ise herkesin kullanabildiği (aktivist, ordu, gazeteci, kanun uygulayıcı vs.), sanal tünellerden oluşan, kişi ve grupların Internet üzerindeki gizliliklerini ve güvenliklerini sağlayan, geliştiren açık kaynak ve özgür yazlım olan bir anonimlik ağıdır.

Tor kullanarak:

  • Yerinizi belli etmeden anonim olarak çevrimiçi olabilirsiniz.
  • Sansürlenen içereklere herhangi bir engele takılmadan erişebilirsiniz.
  • Tor ağını engelleyen yapılardan köprü (bridge) kullanarak korunabilirsiniz.

Tails, özel olarak tasarlanmış olup kullanıldığı bilgisayarın harddiskini ve varsa takas (swap) alanlarını kullanmamak üzere çalışmaktadır. Tails’ın bir bilgisayar üzerinde kullandığı tek şey bellek (ram)’dir. Bilgisayarı kapattığınızda ise Tails otomatik olarak bellekteki tüm verileri geri getirilemeyecek şekilde siler ve arkasında herhangi bir iz bırakmaz. Bu yüzden, yazının başında bahsedilen “amnesic” kavramı Tails kavramlarından bir tanesidir. Fakat, Tails sihirli bir araç değildir ve çevrimiçi anonimlik gibi çok karmaşık problemler için %100 bir çözüm sunamaz. Bunun çeşitli sebepleri vardır:

  • Tor çıkış nodu ile bağlanmak istediğiniz websitesi arasındaki iletişim dinlenebilir. Bunun için HTTPS-Everywhere kullanmak veya HTTP sitelerine giriş yapmamak gerekmektedir.
  • Internet servis sağlayıları Tor kullandığını görmektedir. Bunun için köprü tercih edilebilir.
  • Bir MitM (man-in-the-middle) saldırısı kurbanı olunabilir.
  • Hem Tor ağına giden hem de Tor ağından çıkan trafiği görebilmek için tasarlanmış sistemlerde her yapılan görülebilir. İSS’nin de böyle bir çalışması olabilir.
  • Tails, belgelerini otomatik olarak şifrelemez.
  • Tails, belgelerin metadatalarını otomatik olarak silmez.
  • Tails, genel bir gözetim mekanizmasından korumaz. Örneğin, bağlanılan ağdaki tüm bilgisayarlar izleniyorsa bu bir koruma sağlamayacaktır.
  • Tails, kötü ve basit parolalarınızı güvenli hale getirmez.

Son bir kez daha belirtmek gerekirse, anonimlik ve güvenlik sadece bir araca bırakmak bireyi saldırganlardan korumayacaktır. Bu tarz araçları kullanırken ne amaçla kullandığının bilincinde olmak gerekmektedir. Çünkü, günümüz Interneti çoklu sekmelerden, her adımı şifrelenmiş ve anonimleştirilmiş yollardan akmamaktadır. Böyle bir yapı içerisinde tamamen anonim kalabilmek mümkün değildir.

Tails’i iki şekilde elde edilebilir.

  1. Doğrudan indirmek için buraya tıklayın.
  2. Torrent üzerinden indirmek için buraya tıklayın.

İmaj dosyasını çektikten sonraki en önemli adım imaj dosyasını doğrulamak olacaktır. Bu neden önemli? Eğer, bir MitM saldırısı varsa ve birey kaynak yerine aradaki saldırgandan dosyayı çektiyse, bu dosya değiştirilmiş olabilir ve kullandığında anonimlik tamamen tehlike altında olacaktır.

İlk olarak imaj dosyasının SHA256 çıktısına bakılmalıdır:
339c8712768c831e59c4b1523002b83ccb98a4fe62f6a221fee3a15e779ca65d

GNU/Linux
kame $ sha256sum tails-i386-1.4.iso

Windows
Raymond’s MD5 & SHA Checksum Utility uygulamasını indirin ve kurun. Browse diyerek tails-i386-1.4.iso dosyasını açıp yukarıdaki SHA256 çıktısı ile karşılaştırabilirsiniz.
windows-checksum-utility

İndirmiş olunan Tails imajının en önemli doğrulama adımı olan Tails imzasının kullanılmasıdır. Bütün Tails imajları Tails’e ait OpenPGP imzası ile imzalanmıştır. İmzayı indirmek için lütfen buraya tıklayın. İmza ile doğrulamak ise:

GNU/Linux
kame $ gpg --keyid-format long --verify tails-i386-1.4.iso.sig tails-i386-1.4.iso

gpg: Signature made Sun 08 Feb 2015 08:17:03 PM UTC
gpg: using RSA key 3C83DCB52F699C56
gpg: Good signature from "Tails developers (offline long-term identity key) " [unknown]
Primary key fingerprint: A490 D0F4 D311 A415 3E2B B7CA DBB8 02B2 58AC D84F
Subkey fingerprint: BA2C 222F 44AC 00ED 9899 3893 98FE C6BC 752A 3DB6

Eğer herhangi bir hata alınırsa, imajı silinmeli ve tekrar indirilmelidir.

Windows

  1. Öncelikle Gpg4win uygulamasını indirin ve kurun.
  2. Daha sonra Tails signin anahtarını indirin ve Gpg4win’e aktarın.
  3. Son olarak, indirmiş olduğunuz Tails imzası ve Tails imajını doğrulayın.

Doğrulama işlemini başarıyla tamamlandıysa artık imajı yazdırmaya geçilebilir. DVD, USB bellek veya SD kartlardan bir tanesini seçilebilir. DVD, hem ucuz hem de ele geçirilse bile virüs bulaşmayacağı ve üzerine tekrar bir şey yazılamayacağı için güvenli bir seçenektir. Fakat, hem taşınması hem de her bilgisayarda DVD sürücüsü bulunmayabileceği için bireyin insiyatifine kalmıştır. USB bellek ve SD kartlar ise taşınma ve kullanım kolaylığı açısından iyi bir esneklik sunabilmektedir fakat, saldırgan fiziksel olarak USB belleğe veya SD karta erişebilir ve içeriğini manipüle (virüs) edebilir.

GNU/Linux
USB belleğini takın ve bağlandıysa (mount) lütfen bağlantıyı kaldırın (umount). Kurulum yapacağınız bağlantı noktası çok önemli olduğu için dikkat edin yoksa kazara harddiskinizi silebilirsiniz. /dev/sd[x] USB belleğinizin bağlandığı yolu göstermektedir. Nümerik bir şey olmayacaktır; /dev/sdc1 gibi. Root olun ve:

root $ dd bs=4M if=tails-i386-1.4.iso of=/dev/sdx && sync

Bu işlem biraz vakit alacaktır. Başarıyla tamamlandığına dair çıktı ise aşağıdaki gibi olacaktır:

231+1 records in
231+1 records out
970584064 bytes transferred in 207.309208 secs (4681818 bytes/sec)

Windows
Windows’ta USB belleğe yazdırmak için Tails’ın yönergelerine buradan bakabilirsiniz.

Artık Tails kuruldu ve kullanıma hazır. Tek yapılması gereken, takılı olduğu bilgisayarı USB bellekten başlatmaktır. Bunun için taktığınız bilgisayarları yeniden başlatıp, açılış ekranında BIOS’a girerek USB belleği seçebilirsiniz.

Tails’ı USB bellekten başlattığımızda ilk olarak aşağıdaki ekran gelecektir. Enter’a basak devam edebilirsiniz. Eğer, basmazsanız 3 saniye içerisinde kendisi işletim sistemini başlatacaktır.
boot-menu-with-options

Başlatma bittiğinde karşınızda aşağıdaki karşılama ekran gelecektir. Bu karşılama ekranında alt satırda dil, ülke ve klavye seçeneklerini Türkçe olarak (veya hangi dilde kullanmak isterseniz) ayarlayabilirsiniz.
tails-greeter-welcome-to-tails

More options kutucuğunda lütfen Yes‘i seçin ve Login tuşuna basın.
3

Yukarıda gördüğünüz ekranda ilk olarak kendinize bir parola belirleyebilirsiniz. Güvenlik için parola kullanmamanızı tavsiye ederim. Yönetici hakları ile önemli ayarları istemeden değiştirebilirsiniz. Bir altta gördüğünüz Windows camouflage ise masaüstünün Windows 8’e benzemesini sağlayacaktır. Bu da kamuya açık ortamlarda dikkat çekmeden Tails kullanmanızı sağlar. Diğer seçenekleri varsayılan şekliyle olduğu gibi bırakabilirsiniz.

Screenshot from 2015-06-06 17:30:29

Internet bağlantınız Tor ağı üzerinden akmaya hazır olduğunda sağ üst köşede çıkan uyarıdaki gibi bir uyarı alacaksınız. Artık güvenli bir şekilde Tails üzerinden Internete girebiliriz. Windows tuşuna bastığınızda başlat menüsü açılacaktır. Bu menü:

5

şeklindedir. Dikkat ettiğiniz üzere hem Tor Browser hem de Unsafe Web Browser mevcuttur. Unsafe Web Browser, Tor ağını kullanmadan, doğrudan Internet bağlantınızı kullanarak websitelerine girmenizi sağlar. Bu ayrımı unutmamanız yararınıza olacaktır. Tor Browser’ı açtığınızda:

Screenshot from 2015-06-06 16:12:19

herhangi bir sansüre takılmadan, anonim olarak websitelerini görünteyebilirsiniz. Tails, Libre Office, Gimp ve Inkscape gibi grafik uygulamaları, Audacity ve Traverso gibi ses kayıt ve düzenleme uygulamaları, anlık mesaj uygulaması Pidgin‘i (OTR ayarlı), e-posta için Claws Mail‘ı, bir başka anonim ağ olan I2P‘yi, kablosuz ağlar için Aircrack-ng uygulaması, LUKS gibi disk şifreleme uygulaması ve birçok başka uygulamayı da içermektedir.

Tails üzerinden herhangi bir bulut üzerine veya herhangi bir yere dosya yüklemesi/göndermesi yapacaksanız, dosyaların Tor browser klasörü içerisinde yer alması gerekmektedir. Diğer türlü Tails dosyaların gönderilmesini engelleyecektir. Dosya gönderirken dikkat edilmesi gereken bir başka nokta da metadatalarının temizlenmesidir. Metadatalar dosyalarla ilgili eşsiz veriler saklar ve bu veriler dosyanın nerede, ne zaman, kimin tarafından oluşturulduğuna dair önemli bilgiler tutabilir. Bu bilgileri Tails’ta yer alan MAT uygulaması ile silebilirsiniz.

Screenshot from 2015-06-06 16:30:17

Add ile metadalarını silmek istediğiniz dosyaları ekleyebilir be Scourge ile silebilirsiniz.

Tails kullanırken dikkat etmeniz birkaç nokta aşağıdadır:

  • Tails kullanırken gerçek kimliğinize ait hesaplara (Facebook, Gmail gibi) giriş yapmamayı tercih edin.
  • Claws Mail, Internete Tor ağı üzerinden bağlanacağı için Gmail gibi hesaplar girişi engelleyebilir ve size şifre sıfırlama gibi mesajlar gönderebilir. Gmail, Hotmail, Yahoo gibi hesaplar yerine Tor ağı dostu e-posta servisleri tercih edilmelidir.
  • Kesinlikle Flash kurulmamalıdır.
  • Adblock gibi eklentiler reklamları engellerken IP bilgisi sızdırabilir.
  • Javascript kurulmamalı ve aktif edilmemelidir.

Tails kurulum ve kullanım olarak gayet kolay bir canlı işletim sistemidir. Öte yandan, bu yazı Tails’ın içerdiği tüm uygulamalara ait detaylar içeren bir yazı değildir. Birey, Tails’ı kendi bilgisayarında deneyerek içerdiği uygulamaların neler olduğunu çok kolay bir şekilde keşfedebilir. İlerleyen süreç içerisinde de bu uygulamalara ait detayları bu yazıda bulabilirsiniz.

Son olarak, Tails, Tor, VPN, Proxy vd. sizlere %100 anonimlik sağlamayacaktır. Bunun bilincinde olmak en az bir anonimlik aracını kullanmayı bilmek kadar önemlidir.

YaCy – P2P Arama Motorunuz

Twitter‘ın erişime engellemesi ile ilgili mesajım için buraya tıklayabilirsiniz.

YaCy, p2p mantığı üzerine kurulu ücretsiz, açık kaynak, özgür bir arama motoru yazılımdır. Genel olarak Java dili ile yazılmıştır ve platform bağımsızdır. Yani, illa GNU/Linux kullanmanıza gerek yoktur. P2P ağlarda olduğu gibi YaCy’de de birçok istemci vardır. Her YaCy-istemcisi birbirlerinden bağımsız olarak bir Internet sayfasını tarayabilir, analiz edebilir, sonuçları YaCY-istemcilerinin erişebilmesi için ortak bir indeks veritabanında tutup paylaşabilir. Tüm YaCy-istemcileri eşittir ve arama portallarında (Google, Bing, Yandex vs) merkezi bir sunucusu yoktur. Kısaca, YaCy için merkezsizleştirilmiş arama motoru da denilmektedir.

Merkezsizleştirilmiş arama motoru nedir?

merkezsizleştirme

Özel mülkiyet bir arama motoru düşünün. Bir merkezi ve yönetici(leri) mevcuttur. Bu arama motorunun sizin kontrolünüz dışında olan özel sunucularının bir merkezi vardır, sizin aramalarınızla ilgili bilgi toplar, sonuçları çeşitli gerekçelerle (telif vs.) sansürleyebilir, sizin arama sorgularınız ve eriştiğiniz sonuçlarla ilgili profil oluşturup bunu reklam için kullanabilir veya satabilir. YaCy’de ise bu durum tamamen farklıdır. Öncelikle, böyle bir merkeze bağlı değilsiniz. Kendi arama motorunuzun hem yöneticisi hem de kullanıcısısınız. Diğer yandan arama portallarındaki gibi içeriğiniz sansürlenmez, yöneticiler tarafından gözetlenmez ve herhangi bir reklam yoktur. Kendi içeriğinizi oluşturabilir, istediğiniz siteleri indeksleyebilir ve 600’den fazla istemcinin düzenli olarak katkı yaptığı 1.4 milyardan fazla dökümana sorunsuz, herhangi bir engele ve kısıtlamaya takılmadan erişebilirsiniz.

Kurulum ve ilk çalıştırma

İlk önce sistemimize Java kurmalıyız. Ardından YaCy’i kurabilir ve çalıştırabiliriz. Windows kullanıcıları buradan MacOS kullanıcıları da buradan indirip kurabilirler. Paket yöneticiniz ve dağıtımınız ne olduğunu bilmediğim için Debian türevi dağıtımlara uygun bir Java kurulumu gösterdim. Diğer kurulum ve çalıştırma dağıtım bağımsızdır.

kame - $ apt-get install openjdk-7-jre
kame ~ $ wget -c http://yacy.net/release/yacy_v1.68_20140209_9000.tar.gz
kame ~ $ tar xzv yacy_v1.68_20140209_9000.tar.gz && mv yacy ~/.yacy
kame ~ $ cd ~/.yacy && sh startYACY.sh

Temel ayarlar

Tarayıcınızdan localhost:8090‘a girdiğinizde YacY’nin durum (status) ana sayfasını göreceksiniz. Şimdi ilk olarak yanındaki Basic Configuration‘a tıklayarak bizi ilgilendiren birkaç ayarı yapalım. 1. seçenek dil seçeneği. Buradan size uygun olan bir dili seçebilirsiniz. 2. seçenek kullanım amacı. Üç seçenek mevcut. İlki, topluluk tabanlı arama. YaCy-istemcileri üzerinden arama yaparsınız. İkincisi, YaCy’i diğer YaCy-istemcilerinden bağımsız olarak yapılandırır, kendi indekslediğiniz ve robotlarla taradığınız siteler üzerinde arama yapılacak şekilde yapılandırabilirsiniz. Üçüncüsü, kendi ağınız ve siteniz için bir arama moturu oluşturabilirsiniz. 3. seçenek kullanıcı adınız. Herhangi bir şey yazabilirsiniz. 4. seçenek ise diğer YaCy istemcilerinin de erişebilmesi için port ayarı. Çok şart değil, port erişilebilir olursa hem performans açısından hem de diğer istemcilere indeks katkısı açısından biraz daha iyi olacaktır. Ayarlarınız tamamsa Set Configuration diyerek kaydedebilirsiniz. iptables’da port açmak isterseniz:

kame ~ $ iptables -I INPUT -p tcp --dport 8090 --syn -j ACCEPT
kame ~ $ iptables -I INPUT -p udp --dport 8090 -j ACCEPT

Bir arama gerçekleştirelim

yacy_arama

Görüldüğü üzere çok kapsamlı bir sonuç (daha devam ediyordu fakat ben yarıda kestim) elde edemedik. Bunun temel nedeni çok taze bir konuyu aratmak istememdi, ayrıca daha çok robotlarla taramaya ve indekslemeye ihtiyacı olduğundandır. Diğer bir deyişle, YaCy’nin birçok istemciye ihtiyacı vardır. Fakat, bu arama YaCy’nin yetersiz olduğu fikri oluşturmasın. Şu ana kadar beni pek üzdüğünü söyleyemem. Sorgularıma verdiği yanıtlar hep yeterliydi.

Arama motoruma herkes erişebilir mi?

Evet. Herkes erişebilir. Bu ister YaCy istemcisi olsun, ister Internette arama moturunuzun açık 2014-03-21-170646_1920x1080_scrotadresini bilen olsun veya diğer arama portallarının örümcekleri olsun erişebilirler. Status sayfasında, sağ köşede bir kutu göreceksiniz. Address kısmına baktığınızda sunucu (host), açık adres (public adress) ve YaCy adreslerinizi (yacy address) görebilirsiniz. Açık adresinize herkes (örümcekler dahil ve adresinizi dağıttığınız sürece) erişebilir. Bu yüzden Account ayarlarında Acces only with qualified account seçeneği ile bir yönetici (admin) şifresi belirleyebilirsiniz. Local robots.txt bölümünden de örümceklerin neye erişemeyeceklerini de ayarlayabilirsiniz.

2014-03-21-170630_1920x1080_scrotBen de indeks yapmak istiyorum

Sol menüde Index Production alt menüsünü göreceksiniz. Crawler/Harvester‘a tıkladığınızda açılan sayfa üzerinden indekslemek istediğiniz sayfanın linkini girerek bu işlemi gerçekleştirebilirsiniz.

Son sözler

YaCy çok detaylı ve kapsamlı bir arama motorudur. Burada çok temel birkaç şeyden bahsettim. Genel anlamda dört temel özelliği vardır. Tarama (crawl), indeksleme, arama ve yönetici arayüzü ve veritabanı. Merkezi bir sunucusu yoktur, sansür, reklam, gözetim gibi durumlardan arındırılmıştır. Yüksek derecede gizlilik sağlar. Çeşitli sıkıntılara sahip olsa da kesinlikle desteklenmelidir. Son olarak, YaCy ne kadar çok istemci sahibi olursa o kadar çok etkin, güvenli, sansürsüz, reklamsız bir arama motoru olacaktır.

Arch Linux’u USB Belleğe Kurmak

Bu rehberin amacı kendinize ait ve USB bellek içinde taşıyabileceğiniz, sizin özelleştirdiğiniz ve kurulumun her adımını bilerek yaptığınız bir GNU/Linux’a sahip olmak. Yani, ihtiyaçlarınız nelerse sadece onları ekleyecek, her an yanınızda taşıyabilecek ve sorunsuz bir şekilde güvenle kullanabilecek, kişiselleştirilmiş bir dağıtımınızın olması.

Herhangi bir GNU/Linux dağıtımını da USB belleğinize yazdırabilir, tüm bu aşağıda anlattığım kısımlara girmeden kolayce USB belleğinizde çalışan bir dağıtıma sahip olabilirsiniz. Fakat bu yöntemin sağlayacağı faydalara bakarsak eğer:

  • Kurulumun her aşamasını görme, yapma ve düzenleme fırsatına sahip olacaksınız.
  • Bu sizin GNU/Linux bilginizi arttıracak mükemmel bir fırsat olabilir.
  • İstemediğiniz bir sürü gereksiz uygulama yerine sadece sizin istediğiniz uygulamalardan oluşan bir sisteme sahip olma olanağı.
  • Güvenliği kendi ihtiyaçlarınız doğrultusunda sağlayabilme (iptables vs).
  • Güvenmediğimiz makinelerde kullanabilme. (Eğer internet dinleniyorsa gene güvenliğiniz tehlikede olabilir fakat Tor ve VPN seçenekleri mevcut.)

O kadar faydasını saydım peki bize zararı olabilir mi?

  • Zaman gerektirebilir.
  • Aşamalarda karşılaşabileceğiniz sorunlar sizi yıldırabilir. Ama yılmayın, arayın muhakkak yazılmış bir şeyler bulursunuz.

Karışık bir rehber gibi gözükebilir ama elimden geldiğince her şeyi çok açık olarak yazacağım. Önce, elimizde GNU/Linux kurulu bir sistem olursa (Arch olmadığı varsayılarak anlatılacak rehber) sorunsuz bir şekilde ilerleyebilirsiniz. Hemen hemen tüm işlemler root olarak gerçekleştirilecek, o yüzden dikkatli olmanızda fayda var. Komutlar “~ $” ile düzenlenecek kısımlar “#”  (başlarına # koymayın) ile gösterilmiştir.

1. USB belleği biçimlendirmek

USB belleğimizi taktık ve öncelikle bunda bir bölüm oluşturmalıyız. Bu da cfdisk’i kullanarak yapacağız. Sizin dikkat etmeniz gereken USB’nin bağlama noktasının ne olduğu. Ben /dev/sdc olarak alıyorum. Sizde bu /dev/sdb olabilir veya /dev/sd[x] (x herhangi bir değer) olabilir. Yanlışlıkla kullandığınız alanı seçerseniz bilgileriniz silinecektir.

~ $ cfdisk /dev/sdc
New -> Primary -> Linux, Write diyerek yazıyor ve Quit diyerek bu ekrandan çıkıyoruz.

2. Arch Linux Bootstrap paketi

Arch Linux’un cd imajını yazdırıp oradan da gidebilirsiniz. Fakat, bu rehberde bootstrap ile kurulumu gerçekleştireceğiz. Öncelikle Arch Linux’un bu paketini indirip arşivden çıkartmalıyız. İndireceğiniz dizinde açacağınızı varsayıyorum.

~ $ wget -c http://mirrors.kernel.org/archlinux/iso/2013.12.01/archlinux-bootstrap-2013.12.01-x86_64.tar.gz
~ $ tar xzf archlinux-bootstrap-2013.12.01-x86_64.tar.gz

Arşivi çıkarttıktan sonra elimizde root.x86_64 adında bir klasörümüz olacak. Burada chroot olmadan önce Arch Linux’un yansı dosyasını düzenlemeliyiz.

~ $ nano root.x86_64/etc/pacman.d/mirrorlist

Size en yakın olan sunucunun başındaki # işaretini kaldırın ve kaydedip çıkın. Buradan sonra şu işlemleri gerçekleştirin:

~ $ cp /etc/resolv.conf root.x86_64/etc
~ $ mount --rbind /proc root.x86_64/proc
~ $ mount --rbind /sys root.x86_64/sys
~ $ mount --rbind /dev root.x86_64/dev
~ $ mount --rbind /run root.x86_64/run

Önemli noktaları bağladıktan sonra chroot için artık hazırız:

~ $ chroot root.x86_64 /bin/bash

Kuruluma geçmeden önce son adım olarak Arch Linux paket yöneticisi pacman‘in anahtarları kurması gerekmektedir.

~ $ pacman-key --init
~ $ pacman-key --populate archlinux

İlk bölümde USB belleğimizde bir alan oluşturmuş fakat bunu biçimlendirmemiştik. Şimdi bu oluşturduğumuz alanı biçimlendirelim:

~ $ mkfs.ext4 /dev/sdc1 -L /

Görüldüğü üzere “-L /” ile biçimlendirdiğim bu alana “/” etiketini verdim. Bu seçenek size kalmış. Ext4 yerine farklı bir dosya sistemi de seçebilirsiniz. Daha sonra USB belleğimizi bootstrap altında bağlamalıyız:

~ $ mount /dev/sdc1 /mnt

Her şey buraya kadar yolunda gittiyse rahatça kuruluma geçebebiliriz.

3. Arch Linux kurulumu

Önce, temel Arch Linux kurulumu gerçekleştirip Grub yerine Syslinux’u tercih edeceğiz. Grub’la devam etmek isteyen varsa kurulumu yapıp Grub ayarları için Arch Linux’un wikisine bakabilir. Biraz sıkıntılı olduğu için ben Grub’u atladım. Syslinux hiç sıkıntı çıkartmadı bana. Temel kurulum:

~ $ pacstrap /mnt base syslinux

Bu işlem biraz sürebilir. Yaklaşık 150mb kadar paket indirip kuracak. USB belleğinizin yazma hızı da önemli. Kurulum tamamlandıktan sonra fstab‘ı oluşturalım:

~ $ genfstab -p /mnt >> /mnt/etc/fstab

Burada /dev/sdc1 olarak değil de UUID üzerinden gitmeliyiz. Çünkü farklı makinelere taktığımız zaman bağlama noktası farklılık gösterebilir ve sistemimiz açılmayabilir. USB belleğinizin UUID numarası fstab içinde var. Eğer yoksa:

~ $ ls -l /dev/disk/by-uuid/
total 0
lrwxrwxrwx 1 root root 10 Dec 31 17:09 6c27259c-bff8-42a2-b14a-df16aad78ba4 -> ../../sdc1

UUID numaranız 6c27259c-bff8-42a2-b14a-df16aad78ba4, fstab ise:

~ $ nano /etc/fstab

# UUID=6c27259c-bff8-42a2-b14a-df16aad78ba4 / ext4 defaults,noatime 0 1

Şeklinde düzenlemeniz yeterli. Buradan sonra syslinux’u kurarak ayarlarını gerçekleştireceğiz:

~ $ syslinux-install_update -i -a -m
~ $ nano /boot/syslinux/syslinux.cfg

Syslinux’un ayar dosyasını açtıktan sonra LABEL Arch kısmını bulun ve USB belleğinizin UUID numarasını yazın:

LABEL Arch
MENU LABEL Arch Linux
LINUX ../vmlinuz-linux
APPEND root=UUID=6c27259c-bff8-42a2-b14a-df16aad78ba4 ro
INITRD ../initramfs-linux.img

Kaydedin ve çıkın. Şimdi sıra Arch Linux içinde chroot olmaya geldi:

~ $ arch-chroot /mnt

Hostname –diğer deyişle bilgisayarınızın adı– oluşturalım:
~ $ nano /etc/hostname

Hosts dosyamızı düzenleyelim (localhost’u bilgisayarınızın adıyla değiştirin):
~ $ nano /etc/hosts

Vconsole dosyamızı –klavye, yazı tipi düzeni– oluşturalım:
~ $ nano /etc/vconsole.conf
# KEYMAP=trq
# FONT=iso09.08

Locale dosyamızı –sistem dilini– oluşturalım:
~ $ nano /etc/locale.conf
# LANG=tr_TR.UTF-8

Yerel saatimizi belirleyelim:
~ $ ln -s /usr/share/zoneinfo/Europe/Istanbul /etc/localtime

Karakter desteği (başlarındaki # işaretini kaldırın):
~ $ nano /etc/locale.gen
# tr_TR.UTF-8 UTF-8
# tr_TR ISO-8859-9

~ $ locale-gen/

Initramfs imajını oluşturmadan önce mkinitcpio.conf dosyası içinde küçük bir yer değişikliği yapacağız (block görüldüğü üzere udev’den sonra gelecek):

~ $ nano /etc/mkinitcpio.conf
# HOOKS="base udev block autodetect modconf filesystems keyboard fsck"
~ $ mkinitcpio -p linux

Root şifremizi belirleyelim:
passwd

Kullanıcı (kullanici yerine kendi kullanıcı adınızı seçin) ve kullanıcı şifresi oluşturalım:
~ $ useradd -m -g users -G audio,video,wheel,storage,optical,power,network,log -s /bin/bash kullanici
~ $ passwd kullanici

4. Xorg kurulumu

Şimdi Xorg kuracağız. Farklı makinelerde çalışan bir sistem hazırladığımız için Xorg’u tüm sürücüleriyle kurmalıyız (all diyin).

~ $ pacman -S xorg

5. ALSA kurulumu

Ses için gerekli olan ALSA paketini kurmamız gerekmekte:

~ $ pacman -S alsa-utils alsa-firmware

6. NetworkManager kurulumu

Ben NetworkManager’ı seçtim. Wicd veya başka alternatifler size kalmış. NetworkManager’ı seçmemdeki neden OpenVPN. Kuruluma bunu da dahil edeceğiz:

~ $ pacman -S networkmanager networkmanager-openvpn network-manager-applet
~ $ systemctl enable NetworkManager

7. Masaüstü ortamının kurulması

USB belleğinizin boyutu ne kadar bilmiyorum. Tavsiye olarak ben pencere yöneticisi ya da LXDE gibi hafif masaüstü ortamlarını tercih ederdim. Rehberde LXDE’yi seçtim. Bu seçim size kalmıştır, istersenix XFCE, istersenix Openbox vs. de kurabilirsiniz. Fakat seçimlerinizin yanında bir tane de giriş yöneticisi seçmeli ve ayarlamalısınız. LXDE’de lxdm var o yüzden farklı bir şey seçmemize gerek yok.

~ $ pacman -S lxde ntfs-3g dosfstools
~ $ systemctl enable lxdm

8. Basit bir kişiselleştirme

Buradan sonra kullanmak istediğimiz programların kurulumu var. Ben basit bir örnek üzerinden göstereceğim. Tarayıcı seçiminden ofis ortamına kadar her şey size kalmıştır.

~ $ pacman -S firefox pidgin pidgin-otr abiword abiword-plugins gnumeric transmission-gtk icedtea-web-java7 gimp epdfview tor vlc ttf-dejavu
~ $ systemctl enable tor.service

Kurulumda indirilen paketleri yer kaplamaması için temizlemek isterseniz:
~ $ pacman -Scc
~ $  exit

9. Son adımlar

Buraya kadar da her şey sorunsuz bir şekilde kurulmuşsa artık bağlama noktalarını kaldırabilir ve chroot’tan çıkabiliriz.

~ $ umount /mnt
~ $ exit
~ $ umount -lf root.x86_64/proc
~ $ umount -lf root.x86_64/sys
~ $ umount -lf root.x86_64/dev
~ $ umount -lf root.x86_64/run

Artık bilgisayarınızı USB belleğinizden başlatabilir ve Arch Linux’unuzu kullanmaya başlayabilirsiniz. Kurulumun 5, 6, 7 ve 8. adımları kuracak kişiye kalıyor. Burada her adımı kendinize göre özelleştirebilir ve istekleriniz doğrultusunda kurulum yapabilirsiniz. Hepinize kolay gelsin, iyi yıllar.

SteamOS’un Düşündürdükleri

“GNU/Linux’ta oyun oynamak ya da oynayamamak, işte bütün mesele bu!” peki gerçekten bu mu? 12 yıllık bir GNU/Linux kullanıcısı olarak o kadar çok oyun oynadım ki bu işletim sisteminde, bazen kendimi zorla dayatılan “Linux’ta oyun oynanmaz.” düşüncesiyle başbaşa bulmaktan alamıyorum.

GNU/Linux’ta oyun oynamak hep ya imkansız, ya çok zor ya da birilerinin “heveslediği” veya görmek “istediği” bir şeymiş gibi aktarılmaktadır. Fakat, durum onların böyle aktarmasına rağmen hiçbir zaman öyle olmadı. GNU/Linux’ta zaten oyun oynanmaktaydıDahası, buna Windows oyunları da dahil. GNU/Linux’un gelişimini (kullanım artışına paralel olarak) “oyun” endeksli düşünen bu insanlar Wine‘ı, Cedega‘yı (malesef bitti), Crossover‘ı, ve PlayOnLinux‘u ya görmezlikten geldi, ya kullanmasını karmaşık gösterdi (yani üşendi) ya da “istedikleri” oyunların çalışmadığını iddaa etti. Bunların dışında, id Software oyun motorlarını GPL ile lisanslayıp açarken, oyunlarına GNU/Linux desteği verirken veya GarageGames veya Epic Games veya Bioware v.d. oyun(lar)ına bu desteği verirken nedense beklenen o “etki” veya “heyecan” bir türlü bu “hevesli” ve “istekli” insanlarda görülmedi. Peki bu firmalar bu konuda desteklenmedilerse -veya desteklenmezlerse- bir sonraki oyunlarında GNU/Linux desteği vermeleri olası mıdır sizce? Bu konuda sizlere biraz daha ayrıntı vereyim.

id Software’in ioquake 3 -13 yıllık- motoru ile yapılan GNU/Linux oyunlarına bir bakacak olursak, Urban Terror, Tremulous, Smokin’ Guns, OpenArena ve World of Padman gibi çok büyük oyuncu kitlesine hitap eden oyunlar. Bunları örnek göstermemin nedeni bu oyunların 13 yıllık bir motora rağmen bugün bile devamlı oynanması, bağımsız geliştiricilerin bu tarz büyük yazılım firmalarının da desteği ile mükemmel modifikasyonlar hazırlayabilmesidir. Yani, “destek” verildikten sonra -ve görmezden gelinmezse- bağımsız olarak GNU/Linux için de çok iyi oyunlar hazırlanabilir, bu oyunlarla GNU/Linux kullanıcılara cazip gösterilebilir -eğer masaüstü kullanıcısının “oyun” mantıklı olduğunda ısrarcıysanız-. Bir diğer nokta da üzerinden bir on yıl daha geçse iyi bir oyun -ya da mod- “kalitesinden” bir şey kaybeder mi? Kalite elbette anlam olarak sizin ondan ne aldığınız, yani beklentinizin karşılanma derecesidir. Bir diğer deyişle, Mercedes kullanmayan biri için Mercedes kaliteli olmaz. Bu oyunlara da bir örnek vermem gerekirse; Starcraft oynamaktan ya da Fallout 2 v.s. oynamaktan bir “oyuncu” bıkabilir mi?

Steam, çıkışından epey bir zaman geçtikten sonra GNU/Linux’a da gelmesi ile bu oyunseverleri (ben de dahil ama hatamdan döndüm) heyecanlandırdı ve GNU/Linux’u bir oyun canavarına dönüştüreceği -bazıları için de Windows’tan GNU/Linux’a göç- algısı yarattı. Fakat, Steam zaten Wine üzerinden sorunsuz çalışmaktaydı. Burada amaç pazarı genişletmek (el değmemiş ya da kısmen değmiş bir alan olarak GNU/Linux oyun pazarı) ve bunda öncü olmaktı. Beraberinde Drm’li oyunlar, az oyun desteği (artıyor ama her geçen gün), açık kaynağın kapalı kaynakla dolması gibi bir sürü sıkıntıyı getirdi. Kullanıcı özgürlüğü tehdit edilmeye başlandı. Buradaki özgürlük tehdidi Stallman’ın dediği gibi ücretli olması veya kopya satılması değil, “özgür” olmayan bir yazılımdan kaynaklanıyor olmasıdır.

Şimdi ise gündemde SteamOS var. Hakkında söylenen bir sürü şey var, çoğu belki de söylendiği ile kalacaktır, bilemeyiz. Israrla vurgulanan “free” için benim şahsi görüşüm SteamOS’un “ücretsiz” olacağı yönünde (ki öyle). “Özgürlük” anlamında bir “free“‘yi ben şahsen beklemiyorum. Umarım bu konuda yanılırım. Bir diğer şey, Amazon vb. sunucularla film ve müzik konusunda anlaşmaya çalışması. Donanım konusunda ne tür bir yol izleyeceği üzerine spekülasyonlar var. Elbette her şey istenildikten sonra bulandırılabilir, altında anlamsız art niyet arananabilir. Benim ise bu duyuruya istinaden sormak istediğim bazı sorularım olacak. Fakat, soruları daha iyi anlayabilmeniz -ve açık kaynağı, hatta GNU/Linux’u- için sizlere kısaca bilim etiğinden bahsedeyim. Bilimsel araştırmalarda bulgular test edilmek ve geliştirilmek üzere başkalarının kullanımına sunulur. Aynı şekilde GNU/Linux ve uygulamaları da başkalarının kullanımına, geliştirilmesine ve yeniden dağıtılmasına sunulur. İşte bahsedilen “bilim etiği” ya da “açık kaynak” budur.

  1. SteamOS Linux tabanlı ve “free” yani ücretsiz olabilir. Fakat beraberinde oyun yapımcıları, oyunlarının bundan sonra “açık kaynak” olmasını isteyecekler mi?
  2. Steam ile gelen DRM, SteamOS ile gelmeye devam edecek mi?
  3. (Eğer anlaşırlarsa) Amazon sunucularından kim film izlemek ve müzik dinlemek ister?
  4. Eğer oyun firmaları (hepsi şart değil, bazıları da kabulüm) kapalı kaynakta ısrarcı olursa, açık kaynağı kapalı kaynakla doldurmak (oyun tercihleri doğrultusunda) ne kadar mantıklıdır?
  5. Israrla üzerinde durulan “özgürlük” kavramı bundan nasıl ve ne kadar etkilenir?
  6. Fayda ile eş zamanlı gelecek zararı (Drm, Amazon, kapalı kaynak vd.) kabul etmek ne kadar etik bir davranış olur?
  7. Bütünün değil de bütünün bir parçasının açık kaynak içermesi, bütünün kalanının kapalı kaynak olmasını gözardı etmeye yeter mi?
  8. Eğer belirli donanımlarda çalışacaksa o zaman bu tekelcilik yaratmaz mı? Onu da geçtim biz bu donanımların chipsetlerine nasıl güvenebiliriz? Peki aynı şekilde firmware’lar ne olacak?

Sorular çoğaltılabilir. O size kalmış. Benim sormak istediğim başlıca sorular bunlar. Elbette ilerleyen günlerde neler olur, ne tür gelişmeler yaşanır bilemeyiz. Bekleyip hep birlikte göreceğiz.

Online Kripto Araçları

Başlığa aldanıp nasıl kullanacağınızı anlatacağım bir rehber zannetmeyin. Snowden’in belgelerine dayanarak NSA tarafından bir şekilde kırıldığı söylenen bu araçların neler olduğundan bahsedelim.

Amerikan İç Savaşı muharebelerinden olan Bull Run ilk 21 Temmuz 1861 yılında gerçekleşti. Konfederasyon’un kazandığı bu muharebe aradan 152 yıl sonra NSA’in belirli ağ iletişim teknolojilerini kırmak için kullandığı kripto çözme programının kod adı oldu. İngiltere cephesinde ise 23 Ekim 1642 yılında ilk İngiliz İç Savaşı muhaberesi olan Edgehill, bu kripto çözme programına isim verdi.

Bullrun Projesi ortaya çıkarttığı üzere, NSA ve GCHQ’nun HTTPS, VoIP, SSL gibi geniş çapta kullanılan online protokollere karşı bunu kullanmakta ve bu protokolleri kırabilmektedir.

Bu protokoller, programlar nelerdir, bakacak olursak:

VPN (Virtual Private Network)
Özellikle şirketlerin çalışanlarının ofise uzaktan erişim sağlayabilmesi için kullandığı VPN‘ler.

Şifreli Chat
İletim esnasında kırılması mümkün olmayan (mesaj servisi tarafından bile), Adium ve AIM gibi noktadan noktaya şifreleme sağlayan programlar.

SSH (Secure Shell)
Güvensiz bir ağda, güvenlik kanalı üzerinden iki bilgisayar arasındaki veri aktarımının gerçekleştirilmesini sağlayan, kriptografik ağ protokolü. GNU/Linux ve Mac kullanıcıları için standart halinde gelmiş bir uygulamadır.

HTTPS (Hypertext Transfer Protocol Secure)
Özellikle kullanıcı ve sunucu arasındaki bilgilerin (şifre, finansal bilgiler vs.) başkaları tarafından erişmini engellemek için HTTP protokolüne SSL protokolü eklenerek oluşturulmuş ve standart haline gelmiş güvenli hiper metin aktarım iletişim kuralı. Son dönemde Facebook, Twitter, Gmail gibi servislerle daha da bilinir hale gelmiştir.

TSL/SSL (Transport Layer Security/Secure Sockets Layer)
İstemci-sunucu uygulamalarının (tarayıcı, e-posta vs.) ağ boyunca gizlice dinleme ya da yetki dışı erişimi engellemek için olan kriptografik protokollerdir.

Şifreli VoIP (Voice over Internet Protocol)
Microsoft’un Skype ya da Apple’ın FaceTime gibi servisleri kullanıcıların Internet üzerinden sesli ve görüntülü iletişim kurmalarını sağlayan uygulamalar.