İçeriğe geç
← Bloga dön
homebrewkurumsalmdmtemeller

Homebrew Nedir? BT Yöneticileri için Rehber

Neredeyse her geliştirici Mac'inde kurulu olan paket yöneticisi, o Mac'leri yönetmek zorunda olanlar için anlatılıyor: Nasıl çalışır, geliştiriciler ona neden bu kadar bağlıdır ve BT için ne anlama gelir?

EnterpriseBrew Team··4 dk okuma

Mac yönetiyorsanız, Homebrew o Mac'lerde zaten kurulu. Homebrew, macOS'in fiili standart paket yöneticisidir — geliştiricilerin derleyicileri, veritabanlarını, komut satırı araçlarını ve binlerce açık kaynak programı tek bir komutla kurmak için kullandığı araç. Bu rehber, Homebrew'un ne olduğunu ve nasıl çalıştığını; onu zaten çok iyi bilen geliştiriciler için değil, o makineleri yönetmek zorunda olan BT ve güvenlik yöneticileri için anlatıyor.

Tek Paragraflık Özet

Homebrew; macOS ve Linux için ücretsiz, açık kaynak bir paket yöneticisidir. Geliştirici brew install postgresql yazar; Homebrew yazılımı indirir, bağımlılıklarını çözer, her şeyi kendine ayrılmış bir dizine kurar ve brew upgrade ile güncel tutulmasını sağlar. Homebrew'un Mac için anlamı, apt'in Ubuntu için anlamıyla aynıdır — tek farkla: Onu platform değil, geliştiricinin kendisi kurar ve varsayılan haliyle kimseye hesap vermez.

Karşınıza Çıkacak Terimler

Terim Anlamı
Formula Bir açık kaynak yazılımın nasıl kurulacağını tarif eden reçete (örn. git, node, openssl).
Cask Komut satırı aracı yerine normal bir macOS uygulamasını (örneğin bir tarayıcı veya editör) kurmaya yarayan reçete.
Bottle Bir formula'nın önceden derlenmiş ikili (binary) hali; makine kaynak koddan derlemek yerine indirip açar. Kurulumların çoğu bottle kullanır.
Tap Ek bir formula deposu. homebrew-core resmi olandır; isteyen herkes kendi inceleme süreciyle (ya da hiç inceleme olmadan) kendi tap'ini barındırabilir.
Prefix Homebrew'un her şeyi içine kurduğu dizin — Apple Silicon Mac'lerde /opt/homebrew.
brewfile Bir makinenin Homebrew kurulumunu yeniden üretmek için kullanılan, sürüm kontrolünde tutulan paket listesi.

Geliştiriciler Ona Neden Bu Kadar Bağlı?

Homebrew niş bir araç değildir. Bir Mac üzerinde modern geliştirme ortamları tam olarak onunla kurulur:

  • Çalışan bir araç zincirine giden en hızlı yoldur. Kutusundan yeni çıkmış bir dizüstünü üretken bir geliştirici makinesine dönüştürmek, bir avuç brew install komutundan ibarettir — üstelik bu komutlar çoğu zaman şirketin kendi işe başlangıç (onboarding) dokümanlarında betik olarak hazırdır.
  • Katalog devasadır. Aktif olarak bakımı yapılan binlerce formula, bir geliştiricinin ihtiyaç duyabileceği neredeyse her açık kaynak aracı kapsar.
  • Günceldir. Kaynak projelerdeki yeni sürümler Homebrew'a hızla ulaşır; bu hem yeni özellikler hem de güvenlik yamaları açısından önemlidir.
  • CI de onu kullanır. macOS üzerinde çalışan derleme hatları (build pipeline), bağımlılıklarını rutin olarak Homebrew ile kurar; yani Homebrew yalnızca dizüstü bilgisayarlarda değil, teslimat altyapısının içine de gömülüdür.

Aracı ortadan kaldırdığınızda bu ihtiyaçların hiçbiri kaybolmaz — geliştiriciler manuel indirmelere ve curl ile doğrudan çalıştırılan kurulum betiklerine döner ki bunlar güvenlik açısından kesinlikle daha kötüdür. Bu ödünleşim, Homebrew'u Engellemek Güvenlik Duruşunuzu Neden Zayıflatır? yazısının konusudur.

Homebrew BT için Ne Anlama Gelir?

İşte bu yazının muhatapları için asıl önemli kısım: Homebrew, geliştirici Mac'lerinizdeki en büyük yazılım kanalıdır — ve yönetim altyapınız onu göremez.

MDM'iniz, paketleyip dağıttığınız uygulamaları yönetir. App Store, tüketici uygulamalarını yönetir. Homebrew ise ikisinin de dışında durur. Varsayılan halinde:

  • Envanter yoktur — hangi makinede neyin kurulu olduğuna dair hiçbir kayıt tutulmaz.
  • Politika yoktur — herhangi bir geliştirici, herhangi bir tap'ten herhangi bir formula kurabilir.
  • Denetim izi yoktur — hiçbir kurulum bir kişiye, bir zamana veya bir cihaza bağlanmaz.
  • Zafiyet süreci yoktur — paketler tertemiz kurulur ve zaman içinde sessizce CVE'lerini biriktirir.

Bunların hiçbiri Homebrew'un bir kusuru değildir; o kişisel bir araç olarak tasarlandı ve bu işi mükemmel yapıyor. Ancak filo ölçeğine ulaşan kişisel araçlar BT'nin problemi haline gelir ve her uyumluluk görüşmesi — SOC 2, ISO 27001, müşteri güvenlik değerlendirmeleri — eninde sonunda şu soruya varır: "Uç noktalarınızda hangi açık kaynak yazılımlar çalışıyor ve bunları kim onayladı?" Standart Homebrew ile bu sorunun dürüst cevabı bir omuz silkmedir. Bu durumun ne kadar tehlikeli olduğunu Homebrew Güvenli mi? BT Ekipleri için Güvenlik İncelemesi yazısında inceledik.

Kurumlar Onu Nasıl Yönetim Altına Alıyor?

Öne çıkan model Homebrew'u başka bir araçla değiştirmek değil, onu yönlendirmektir: Geliştiriciler birebir aynı brew install akışını kullanmaya devam ederken, her talep BT'nin işlettiği bir kontrol düzleminden geçer. Bu katman, aracın varsayılan halinde eksik olan her şeyi sağlar — kurulum anında denetlenen bir izin/engelleme politikası, halihazırda kullandığınız MDM ile senkronize, cihaz bazlı bir paket envanteri, erişilebilir en iyi zafiyet verisiyle karşılaştırılan güvenlik kontrolleri ve her kurulumu gerçek bir kullanıcıya ve makineye eşleyen bir denetim logu.

EnterpriseBrew'un uyguladığı model budur. Geliştiriciler hiçbir fark hissetmez; BT ise diğer tüm yazılım kanalları için sahip olduğu cevaplara nihayet Homebrew için de kavuşur: Ne kuruldu, nerede, kim tarafından ve izinli mi?

Özetle

Homebrew bir gölge BT (shadow IT) merakı değil, macOS geliştirmesinin temel altyapısıdır — ve neredeyse kesin olarak bugün sizin filonuzda da aktif kullanımdadır. Bir BT yöneticisi için asıl soru ona izin verip vermemek değildir. Asıl soru, uç noktalarınızdaki en büyük paket hattının yönetişimle mi yoksa yönetişimsiz mi çalışacağıdır.

İlgili yazılar