Skip to content

Releases: syhgorath/sshpocket

v3.6.20

Choose a tag to compare

@syhgorath syhgorath released this 02 Nov 20:36
8efb286

Bu yama sürümü linux-hardening 0.12.0'ı kilitler ve sunucu eklerken platform seçimini, güncelleme panelini getirir.

Dikkat

  • Mevcut sunucularda linux-hardening eylemleri ⛔ görünebilir: 0.12.0 preview, apply, pve_firewall_preview ve pve_firewall_apply eylemlerini hardening_ssh_allow_from dolu olmadan çalıştırmaz (kemer ve pantolon: erişim kısıtını boş bırakıp kendinizi dışarıda bırakmayı önler). Paket menüsünü ilk açtığınızda sunucu türü ve izinli ağlar sorulur; "Şimdi değil" derseniz değer yazılmaz ve eylemler ⛔ kalır. audit ve rollback_* etkilenmez. Güncellemeden sonra --components report hangi sunucunun etkilendiğini gösterir.
  • Proxmox'ta apply artık hardening_pve_apply=true'yu o koşuya özel verir (yalnızca sunucu türü proxmox-host seçiliyse, uyarı sunucu adı onayından önce gösterilir, .vars dosyanıza yazılmaz ve kendi yazdığınız değer ezilmez).
  • Gerçek VM (Ubuntu + Proxmox) doğrulaması henüz yapılmadı (3.6.19'daki fail2ban maddesi dahil): yalnızca birim testleri, gerçek 0.12.0 manifestiyle yerel denemeler ve Docker LAB e2e (18/18) yeşil. Platform seçimi, apply_vars ve güncelleme paneli gerçek terminalde/sunucuda elle denenmedi.

Düzeltildi

  • Sunucu eklerken CIDR editörü: ModuleGenerator.sh SSHModule.sh'yi yüklemediği için sunucu bilgileri (IP/port/kullanıcı/anahtar) okunamıyor ve "_ssh_env_get: command not found" yazıyordu; ayrıca değişken türü sorgusu Python'a BrokenPipe izi bastırabiliyordu. İkisi de giderildi (test eklendi).

Eklendi

  • Paket değişiklik raporu (güncelleme paneli, 3. adım): güncellemede bir paketin sürümü değişince (--components sync, hem menü hem --update yolunda) sonda "📋 paket eski → yeni: ne değişti?" yazılır: yeni/kalkan değişkenler, türü ya da varsayılanı değişenler (örn. hardening_fail2ban_bantime "1h" → "10m"), yeni requires_vars kuralları, eklenen sunucu türü seçimi ve bu bilgisayardaki sunucularınıza etkisi ("web1: preview, apply ⛔ — değeri boş: …", "sunucu türü seçilmemiş"). Yalnızca okur, hiçbir şey yazmaz/değiştirmez; paket hiç ayarlanmamış sunucular atlanır. Eski sürüm, diskte duran bir önceki sürümdür (eski sürümler prune ile silinmeden önce). Elle: --components report [paket [eski-sürüm]]. Yeni: Helpers/ComponentsReport.sh.
  • Güncelleme paneli (Update.sh, bölgeli akış): terminalde (en az 24 satır × 60 sütun) imza ve arşiv denetiminden sonra üstte sabit iki sütunlu özet (solda sürüm/imza/paket farkları, sağda ### Dikkat), altta kaydırma bölgesinde sürüm notları, "Kurulsun mu?" sorusu ve kurulum akar; bölge her çıkışta (iptal, hata, Ctrl-C dahil) sıfırlanır. Özet üst bölüme sığmazsa (çok paket) tamamı kaydırma bölgesinin başında düz yazılır, bilgi kaybolmaz. Terminal küçükse ya da çıktı terminal değilse bugünkü düz akış aynen sürer. Güvenlik sırası (indir → imza → arşiv denetimi → özet → onay → kur) değişmedi. Ortak UI: ui_region_begin2 artık sığmama durumunu UI_REGION_TRUNC ile bildirir.
  • Güncelleme özeti (Update.sh): imza ve arşiv denetimi geçtikten sonra, sürüm notlarından ve "Kurulsun mu?" sorusundan ÖNCE tek tablo gösterilir: sshpocket sürümü (eski → yeni), imza durumu, components.lock paket farkları (değişen / yeni / kilitten çıkan / değişmeyenlerin sayısı) ve yeni sürümün CHANGELOG'undaki ### Dikkat satırları. Salt gösterimdir, hiçbir şey yazmaz; güvenlik sırası (indir → imza → arşiv denetimi → özet) değişmedi. Sonraki adımlar: bölgeli akış, değişken farkı raporu.
  • Eski sunucular için ilk açılış sorusu: paket platform listesi bildiriyor (platform_choices + platform_var) ama sunucunun değerler dosyasında platform yazılı değilse, paket menüsü açılırken (etkileşimli) sunucu türü ve onboarding_vars (örn. allow_from) bir kez sorulur — sunucu eklerken sorulanla aynı akış. "Şimdi değil" hiçbir şey yazmaz ve soru sonraki girişte yine çıkar; allow_from boş kalırsa preview/apply her seferinde ⛔ kalır. Platform listesi olmayan paketlerde (eski sürümler) hiçbir şey sorulmaz. Dolu değerler ezilmez.
  • Platform apply_vars uygulaması: manifestte seçili platform (değerler dosyasında açıkça yazılı) apply_vars bildiriyorsa (örn. proxmox-host: hardening_pve_apply=true), değişken YALNIZCA değiştiren "önizle→uygula" eyleminde (type-server-name onaylı, changes-config etkili, yıkıcı olmayan, requires taşıyan: apply, pve_firewall_apply) o koşuya özel -e ile geçirilir. Paketin apply_warnings metni ve "bu koşuya özel" bilgisi sunucu adı onayından ÖNCE gösterilir; onay verilmezse hiçbir şey çalışmaz. Değerler dosyasına YAZILMAZ, dosyada zaten yazılı değer (false dahil) ve eylemin kendi set'i ezilmez; günlüğe bu koşuya özel: … satırı yazılır. audit, rollback_*, kaldir* ve preview etkilenmez; alan yoksa davranış değişmez. Riskli değer (warn_if) ise mevcut "yine de devam?" sorusu da çıkar.
  • linux-hardening 0.12.0 kilitlendi (components.lock): manifestte platform_choices (generic / proxmox-host / raspberry-pi), onboarding_vars, requires_vars (preview, apply, pve_firewall_preview, pve_firewall_apply için hardening_ssh_allow_from) ve apply_vars (proxmox-host: hardening_pve_apply=true) bildirilir; roller/playbook davranışı değişmedi. Gerçek paket manifesti sshpocket doğrulayıcısından geçti, boş allow_from ile 4 eylem ⛔ (audit/rollback_status açık), sunucu ekleme akışında platform sorusu gerçek manifestle çalıştı. Gerçek VM (Ubuntu + Proxmox) doğrulaması henüz yapılmadı (akşam yapılacak); apply_vars uygulaması ve eski sunucuların ilk açılış sorusu sonraki PR'larda.
  • Eylem düzeyi requires_vars (isteğe bağlı manifest alanı): bir eylem, listedeki değişken değerler dosyasında boş/yoksa ssh'a gitmeden "⛔ çalıştırılmadı: değeri boş değişken: …" ile reddedilir; menüde eylem kartında ⛔ ve "Boş: …" ipucu görünür. Yalnızca o eylemleri kapatır (audit, rollback_* etkilenmez); alan yoksa davranış değişmez. Amaç: erişim kısıtını (örn. hardening_ssh_allow_from) boş bırakıp kendini dışarıda bırakmayı önlemek.
  • Manifest: platform_choices / onboarding_vars okunur ve doğrulanır (sunucu eklerken platform seçimi için hazırlık; seçim ekranı ve apply_vars uygulaması sonraki PR'larda). Alan yoksa davranış değişmez; bozuksa paket kilide yazılmaz. Tasarım: docs/sunucu-ekleme-platform-secimi.md.
  • Sunucu eklerken platform ve allow_from sorusu: ModuleGenerator.sh (anahtar adımından sonra), kurulu ve manifestinde platform_choices olan her paket için sunucu türünü doğrudan sorar ("Bilmiyorum" = generic, "Şimdi değil" = hiçbir şey yazılmaz), seçilen platformun defaults değerlerini özetleyip onayla servers/<ad>/<paket>.vars'a yazar (dosyadaki değerler ezilmez) ve onboarding_vars için (örn. list[cidr] allow_from) mevcut CIDR editörünü açar; boş bırakılırsa değer yazılmaz ve ilgili eylemler ⛔ kalır. Manifest yoksa/alan yoksa hiçbir şey sorulmaz. apply_vars bu adımda YAZILMAZ (sonraki PR). Algılama (platform_detect) henüz yok; liste doğrudan sorulur. Yeni: Helpers/ComponentsOnboard.sh; platform_var= bilgi satırı.

Değişti

  • Çalışma paneli iki sütunlu (fzf eylem menüsü, eylem çalışırken): üst bölüm artık terminal genişliğinin tamamını kullanır: solda eylem özeti (ad, etkiler, onay, ön koşul), sağda son sonuç ve uyarılar; │ ayırıcı ve fzf'e benzer kenarlık etiketleri (Eylem, Son sonuç ve uyarılar). Üst bölümün yüksekliği içeriğe göre ayarlanır (en az 9 satır, en çok terminalin %40'ı), çıktı bölgesi altta tam genişlikte kalır; çıktı çerçevesinin başlığı canlı ilerlemeyi göstermeye devam eder. BECOME password: ve diğer istemler alt bölgede aynen çalışır. Terminal < 24 satır ya da < 60 sütunsa eski akış kullanılır. Çizim başlangıçtaki genişliğe göre yapılır; çalışırken terminal yeniden boyutlandırılırsa üst bölüm yeniden çizilmez. UI parçası: ui_region_begin2, ui_wrap_text (UI.sh).

v3.6.19

Choose a tag to compare

@syhgorath syhgorath released this 01 Nov 13:58
736a260

Bu yama sürümü kullanıcıya görünür özellikler de taşır: paket menüsünde 🧪 Kontrol ve ön koşul önerisi, bulgular ekranı, canlı ilerleme, ortak arayüz parçaları ve linux-hardening 0.11.0.

Dikkat

  • fail2ban davranışı değişti (linux-hardening 0.11.0): 127.0.0.1/8 ::1 her zaman muaf; hardening_fail2ban_ignoreip varsayılanı boş ve yazdığınız adresleri EKLER. Kontrol makinesinin ve hardening_ssh_allow_from'un adresi artık otomatik muaf EDİLMEZ: bağlı adres muaf değilse art arda hatalı denemede (5) bantime (varsayılan 10m, eskiden 1h) kadar banlanabilirsiniz; günlükte tek satır NOT (fail2ban) çıkar. Yükseltmede jail dosyası bir kez yeniden yazılır (ilk koşu changed + fail2ban yeniden başlatması). Gerçek VM doğrulaması (Ubuntu + Proxmox) henüz yapılmadı (yalnızca birim/Ansible testleri ve Docker LAB e2e yeşil); ikinci apply'ın changed=0 olması ve etkin ban davranışı sınanmadı.

Eklendi

  • 🧪 Kontrol (paket eylem menüsü): pakette preview ve audit ikisi de bu sunucunun platformunda varsa listede yeni satır; ikisini art arda çalıştırır (önce preview, başarısızsa audit çalışmaz) ve sonunda tek özet yazar: apply'da değişecek sayısı, Lynis puanı, bulgular. Zorunlu değişken eksikse ⛔ ve hiçbir şey çalışmaz; audit kapıya/onaya takılırsa preview sonucu korunur ve özet nedenini söyler. Paket kodu değişmez, eylemlerin kendi kapıları ve onayları aynen geçerlidir. Menü satırları kayar: Geçmiş artık Kontrol'den sonra gelir.
  • Ön koşul eylemini önermek (etkileşimli menü): apply gibi requires taşıyan bir eylem seçilince ön koşul (örn. preview) yok ya da süresi dolmuşsa menü "önce çalıştırılsın mı? [e/H]" diye sorar, çalıştırır, sonucu gösterir ve "devam edilsin mi?" diye ikinci kez sorar; eylemin kendi onayı (sunucu adını yazma) ayrıca aynen sorulur. Ön koşul başarısız olursa ya da "H" denirse eylem çalışmaz; girdi biterse (EOF) "hayır" sayılır. Komut satırı (--components run) ve kapı (comp_gate_requires) değişmedi: atlama değil, çalıştırma kolaylığı.
  • Denetim bulguları: manifestte outputs.findings (düz .tsv dosya adı) bildiren paketin bulgular.tsv dosyası (10 sütun: kimlik, risk, tur, aciklama, ayrinti, oneri, alan, deger, kapanir_varsayilan, platform) ayrıştırılır (component_findings.py; geçersiz satır atlanır, en çok 2000 satır, başlık bozuksa gösterilmez). Paket menüsünde hazırlık özetinde sayı ve eşleşen bulgular, "🔎 Bulgular" ekranında önem sırasıyla liste ve kartlar (ayrıntı, öneri, paket karşılığı, "elle ayarlayın / apply yeterli"), "yalnız eşlemeli" süzgeci. Biçim: docs/package-standard.md "Bulgular".
  • Canlı ilerleme (fzf çalışma paneli): paket SSHPOCKET_PROGRESS satırları yazıyorsa çıktı çerçevesinin başlığı çalışırken güncellenir ("Çıktı: apply — srv (çalışıyor) · aide 9/14 · bekleniyor ~300 sn"). Günlüğe saniyede bir bakan ayrı bir arka plan izleyici yapar; ana çıktı akışına dokunmaz (parola istemleri gecikmez), önceki koşunun günlüğünü yok sayar, panel bitince durur.
  • İlerleme satırı ayrıştırıcısı: paketin SSHPOCKET_PROGRESS alan=… sira=n/toplam durum=basladi|bitti [degisen atlanan kesin uyari bekle_tahmin] satırları (comp_progress_parse) sonuç panelinde alan tablosu olur: uygulamada "değişen", önizlemede "değişecek" (+ toplam; kesin=0 ise ~ tahmini), bitmeyen alan ⏳, uyarı sayısı. Satır yoksa panel eskisi gibidir; SSHPOCKET_RESULT ayrıştırıcısıyla çakışmaz. Biçim docs/package-standard.md'de.

Düzeltildi

  • Python eklentili paketlerde ikinci koşu reddedilmesi: linux-hardening 0.10.0'ın callback/filter eklentileri ilk koşuda kurulu paket klasörüne __pycache__ yazıyor, bir sonraki eylem "kurulu paketin dosyaları değişmiş" bütünlük denetimine takılıyordu (gerçek Proxmox'ta ilk audit platform kapısında durduktan sonra ikinci deneme çalışmadı). Paket artık PYTHONDONTWRITEBYTECODE=1 ile çalışır. Etkilenmiş kurulumda __pycache__ klasörlerini silmek yeter.
  • Test: yürütme: TERM ve HUP testinin sahte ansible-playbook'u sinyalden sonra çıktı borularını bırakır; yetim işlem bats'ı asmaz ve tam koşuda dalgalanmaz.
  • Aynı anda iki paket kurulumu (örn. iki Terminal sekmesinde --components sync) artık mv yüzünden iç içe klasör (0.9.1/linux-hardening-0.9.1) üretmez: kurulum bölümü mkdir tabanlı kilitle (<paket>/.install.lock, sahibi ölmüşse temizlenir, doluysa ~10 sn bekler) korunur ve kilit altında "zaten kurulu mu" yeniden bakılır. Bozuk iç içe kurulumda eski davranış korunur: "kurulu paketin dosyaları değişmiş", elle silip yeniden sync.

Değişti

  • Paket eylem paneli kozmetiği: rozetler düz sembol (✎ / ☠; emoji genişliği sarmayı bozuyordu), kart uyarıları ve başlık özeti terminal genişliğine göre sözcük sınırından bölünür; "Geçmiş ve son sonuçlar" satırı son 5 çalıştırmayı ve son günlüğün sonunu sağ bölmede gösterir.
  • Ortak arayüz parçaları (UI.sh): menülerdeki seçici (ui_pick), kaydırma bölgeli ekran (ui_region_begin/end/reset, ui_rule_label) ve genel liste editörü (ui_edit_list) paket menüsünden çıkarıldı; comp_menu_edit_list artık yalnızca CIDR/paket geri çağrımlarını verir. Davranış değişmedi. UI_PICK_* ve UI_LIST_* bağlam değişkenleri docs/ui-design.md §5b'de belgelendi (yeni paketler, örn. utility, aynı altyapıyı kullanır). Paketten bağımsız yeni testler.
  • Eylem paneli (fzf): eylem listesinde hazırlık özeti başlıkta, seçili eylemin kartı (etkiler, onay, ön koşul, kapı durumu, son sonuç, uyarılar) sağ bölmede; eylem bitince sonuç paneli (durum, süre, ok/changed/failed özeti, sonuç anahtarları, günlük yolu, sıradaki adım). Terminal ≥ 24 satır ve 60 sütunsa çalışma sırasında üst bölüm sabit kalır, alt bölüm kaydırma bölgesi olur: onay soruları, BECOME password: istemi ve çıktı aynı ekranda akar, Ctrl-C bölgeyi sıfırlar. Küçük terminalde ve numaralı modda eski akış. Çok satırlı açıklama desteği eklendi.
  • Değişken düzenleme (etkileşimli modda, ok tuşlu/fzf): bool ve enum için seçici liste (izinli değerler, imleç şimdikinin tersinde, sağda açıklama, riskli değer işaretli, "Varsayılana dön"); list[string], list[int] ve list[cidr] için liste editörü (öğeler liste, Enter ile sil/değiştir, ➕ Ekle, CIDR için öneri ve sunucunun gördüğü adres, 🧹 Temizle, 💾 Kaydet; Vazgeç dosyayı değiştirmez); int/string yanlış değerde ekran kapanmadan 3 deneme. Kayıt sonrası "Devam için Enter" duraksaması yok, ileti değişken listesinde görünür. describe çıktısına 10. alan (enum değerleri) eklendi. Numaralı modun akışı değişmedi.
  • fzf geniş düzen (Değişkenler ekranı): yol çubuğu kenarlık etiketi (Sunucu › … › Değişkenler), üstte grup ve sayı özeti, sağda açıklama bölmesi (fzf ≥ 0.35 etiketli kenarlık, ≥ 0.58 etiketli liste/giriş çerçeveleri; eski fzf'te yalnız sağ önizleme), Ctrl-O ile grup seçimi. fzf yoksa ya da UI=numbers|arrows ise bugünkü menüler aynen çalışır. Diğer ekranlar değişmedi.
  • components.lock: linux-hardening 0.10.0 → 0.11.0 (sha256 5ed26848…7f0e; 128 değişken, ekleme/silme yok). fail2ban ignoreip sadeleşti: 127.0.0.1/8 ::1 kodda her zaman muaf, hardening_fail2ban_ignoreip varsayılanı artık boş ve yazılan adresleri EKLER (ezmez); kontrol makinesinin ve hardening_ssh_allow_from'un adresi otomatik eklenmez, bağlı adres muaf değilse günlükte tek satır NOT (fail2ban) çıkar. hardening_fail2ban_bantime varsayılanı 1h → 10m. Yükseltmede önceden otomatik eklenen adres jail dosyasından düşer: ilk koşu changed ve bir fail2ban yeniden başlatması gösterir. Doğrulama: kilit kuru koşusu (sha256 + imza ad alanı) ve 128 değişken denetimi geçti; fail2ban değişikliği gerçek VM'de (Ubuntu + Proxmox) henüz doğrulanmadı: ikinci apply'ın changed=0 olması ve etkin ban davranışı sınanmadı.
  • components.lock: linux-hardening 0.9.1 → 0.10.0 (sha256 6921e52c…0c8b). Paket artık SSHPOCKET_PROGRESS satırlarını (14 alan, AIDE'de bekle_tahmin=300) ve audit sonrası bulgular.tsv dosyasını (0600, summary.json'ın yanında) üretir; ikisi de Docker LAB'da gerçek koşuyla doğrulandı (preview, apply, audit: 22 bulgu = 20 öneri + 2 uyarı). Gerçek VM doğrulaması sürüyor.
  • components.lock: linux-hardening 0.9.0 → 0.9.1 (128 değişken, 11 eylem; 0.9.0 gerçek VM turunun bulgularını düzeltir: kaldir sahiplik testi, modprobe uyarı metni, hardening_ssh_allow_from artık required değil). Gerçek VM doğrulaması sürüyor.
  • Sunucu adı onayı (type-server-name) yazım hatasında 3 deneme verir (her yanlışta 1/3, 2/3 bildirimi); ad yine birebir yazılmalı, girdi bitince (EOF) hemen vazgeçilir.
  • Ansible Incorrect sudo password / Missing sudo password ile düşerse sudo parolasının reddedildiğini ve komutun yeniden çalıştırılabileceğini söyleyen bir not gösterilir.

v3.6.18

Choose a tag to compare

@syhgorath syhgorath released this 29 Oct 09:55
007f2f5

linux-hardening 0.9.0 kilitlendi (alan anahtarları, kalıcı kaldırma eylemleri); runner: script sudo'lu yolda sonuç ayrıştırma (CRLF) ve validate script/Türkçe kurtarma adı düzeltmeleri.

Değişti

  • components.lock: linux-hardening 0.8.4 → 0.9.0 (128 değişken, 11 eylem; tüm değişkenler gruplu). Yeni: 13 alan anahtarı (hardening_<alan>_enabled, hepsi varsayılan açık), kalıcı kaldırma eylemleri kaldir_onizle (salt okunur, SİLİNECEK: satırları), kaldir (sunucu adıyla onay) ve kaldir_geri_yukle. Ubuntu'da 118 değişken ve 9 eylem, Proxmox'ta 128 değişken ve 11 eylem görünür. Gerçek VM doğrulaması sürüyor.
  • validate: kurtarma eylemi adı artık adın ya da _ sonrası sözcüğün başında rollback|recover|restore|undo|geri içeriyorsa tanınır (kaldir_geri_yukle gibi Türkçe adlar --strict'te yanlış uyarı vermez).

Düzeltildi

  • runner: script sudo'lu yolda sonuç satırı ayrıştırılamıyordu: ssh -t çıktıdaki satır sonlarını CRLF yapıyor, son anahtarın değeri 7\r olarak okunup "Sonuç satırı geçersiz" deniyordu (eylem çalışıyor ama sonuç kaydedilmiyordu). Ayrıştırıcı artık \r'yi atar; gerçek makinede (ubuntutest) bulundu, regresyon testi eklendi.
  • validate script paketlerinde yanlış uyarı vermez: sonuç satırı (SSHPOCKET_RESULT …) ve değişken kullanımı artık scripts/ klasöründe de aranır; değişken betikte SSHPOCKET_VAR_<AD> olarak okunuyorsa "kullanılmıyor" uyarısı çıkmaz.

v3.6.17

Choose a tag to compare

@syhgorath syhgorath released this 28 Oct 23:35
5bb292e

runner: script: paketler Ansible yerine hedef sunucuda çalışan betiklerle eylem tanımlayabilir (sudo'lu yolda root'a ait kopya + SHA-256 doğrulama).

Eklendi

  • runner: script: paketler Ansible yerine scripts/<ad>.sh betikleriyle eylem tanımlayabilir. Betik hedef sunucuda çalışır (kontrol makinesinde yabancı kod çalışmaz): sudo gerekmiyorsa ssh stdin'inden akar; requires_sudo ise sunucuda 0600 geçici dosyaya yazılır, ssh -t ile tek sudo oturumunda root'a ait 0700 klasöre kopyalanıp SHA-256'sı yerelde hesaplanan özetle doğrulanır (uyuşmazsa çalışmaz; yükleme ile sudo arasındaki değiştirme yarışı kapalı) ve çalıştırılır; sudo parolası aynı terminalde sudo isteminde girilir, dosyalar her çıkışta silinir. Değişkenler SSHPOCKET_VAR_<AD> olarak tek tırnakla kaçırılarak geçer; sonuç SSHPOCKET_RESULT <id>.<eylem> k=v satırıyla gelir. Ortak kapılar (host key, ajan, profil, root reddi, önkoşul, onay) ansible ile aynıdır; Python ortamı gerekmez. Manifest doğrulayıcı ve validate betik yolunu/varlığını denetler. Standart §7 güncellendi.

v3.6.16

Choose a tag to compare

@syhgorath syhgorath released this 28 Oct 19:49
c4afc19

Değişkenler ekranında arama/grup/"değiştirdiklerim" süzgeci; saat sapması uyarısı iki saati, farkı, saat dilimini ve hazır düzeltme komutunu gösterir; linux-hardening 0.8.4 gerçek VM doğrulaması belgelendi.

Değişti

  • Saat sapması uyarısı daha açıklayıcı (--components run, 60 sn'den büyük fark): sunucu ve bu bilgisayarın saati (UTC), fark, sunucunun saat dilimi, NTP eşitleme durumu (NTPSynchronized=no ise kalıcı olmayabileceği), TOTP/2FA etkisi ve kopyalanabilir hazır düzeltme komutu gösterilir. Fark tam saat dilimi farkına benziyorsa ipucu verilir. Uzak komut hâlâ sabit ve salt okunurdur (date +%s; timedatectl show -p Timezone -p NTPSynchronized); gelen satırlar katı desenle okunur. Saati sshpocket düzeltmez (saat sıçrar, karar kullanıcıda); uyarı engellemez.

Eklendi

  • Değişkenler ekranı: arama, grup ve "değiştirdiklerim" süzgeci. Bir paketin 25'ten fazla değişkeni varsa liste başında 🔎 Ara, 📂 Grup (pakette group varsa) ve ✏️ Yalnızca değiştirdiklerim satırları çıkar; arama ad ve açıklamada büyük/küçük harf ayırmadan çalışır, süzgeç açıkken ↩ Süzgeci temizle görünür ve başlıkta Gösterilen: X / Y · bu sunucuda değiştirilen: N yazar. Dosyada değeri yazılı satırlar ✏️ ile işaretlenir; uzun değerler 40 karaktere kısaltılır (düzenleme ekranında tam değer görünür). Küçük paketlerde numaralandırma eskisi gibidir.

Belgeler

  • linux-hardening 0.8.4 gerçek VM doğrulaması (Ubuntu 26.04 ve Proxmox VE 9) README ve docs/hardening-kullanim.md'ye işlendi: platform süzmesi, altı sunucu başına anahtar (false yazmaz, önceden yazılanı silmez), pve_keep_banner (yeniden başlatma sonrası banner korunur), yeniden tasarlanan pve_web_exclusive (8006/3128 listede olmayan aynı alt ağ istemcisinde kapanır), ek güvenlik duvarı portu. pve_web_exclusive için eski "beklendiği gibi çalışmıyor" uyarısı kaldırıldı.

v3.6.15

Choose a tag to compare

@syhgorath syhgorath released this 28 Oct 13:33
0a3b1b8

Eylemlerde platforms (Ubuntu sunucuda pve_firewall_* görünmez); linux-hardening 0.8.4 kilitlendi; değişken açıklama sınırı 2000; sürüm yayını için scripts/release-publish.sh.

Değişti

  • components.lock: linux-hardening 0.8.3 → 0.8.4 (116 değişken, 8 eylem). Paket platform_var: hardening_platform ile 9 Proxmox değişkenini (group: Proxmox) ve pve_firewall_preview/apply eylemlerini yalnızca proxmox-host platformunda gösterir (Ubuntu'da 107 değişken, 6 eylem görünür; gizli değişkenin yazılı değeri yine çalıştırmaya iletilir). 6 yeni koşulsuz-görev anahtarı (varsayılan açık) ve hardening_pve_keep_banner. pve_web_exclusive yeniden tasarlandı. sshpocket: değişken açıklama sınırı 1000 → 2000 karakter (paketteki pve_web_exclusive açıklaması 1182 karakter). Gerçek VM doğrulaması sürüyor.

Eklendi

  • Eylemlerde platforms (isteğe bağlı): manifestte bir eyleme "platforms": ["proxmox-host"] yazılırsa eylem yalnızca o platformda listelenir; diğer sunucularda menüden gizlenir ("N eylem … gizlendi" notu) ve CLI'dan çalıştırılması ssh'a gitmeden reddedilir. Ön koşul tutarlılığı manifest doğrulamasında denetlenir. Eski sürümler alanı yok sayar. Örnek: Ubuntu sunucuda pve_firewall_* görünmez.
  • scripts/release-publish.sh: sürüm yayınını tek komuta indirir. Ön kontroller (main, temiz, güncel, CHANGELOG başlığı, imza anahtarı, Release yok, main CI'ı bu commit için yeşil) → etiket → release.sh → gh release create (notlar CHANGELOG'dan) → yüklenen dosyaların SHA-256 doğrulaması. --dry-run yalnızca planı gösterir. Elle yol RELEASING.md'de yedek olarak durur.

v3.6.14

Choose a tag to compare

@syhgorath syhgorath released this 27 Oct 12:26
f744a35

What's Changed

  • Belge: linux-hardening 0.8.3 gerçek VM sonuçları ve bilinen sınırlar by @syhgorath in #106
  • Ansible become bekleme süresi 30 sn; riskli değer sorusu yalnızca değiştiren eylemlerde by @syhgorath in #107
  • Saat uyarısı: hardening_time_makestep=true ipucu by @syhgorath in #108
  • Sunucu menüsünde denetim puanı (son iki puan, ortak summary.json biçimi) by @syhgorath in #109
  • Değişkenler ekranı: platform_var/platforms ile süzme ve group ile gru… by @syhgorath in #110
  • Feat/eject clears agent by @syhgorath in #111
  • Eski paket sürümleri: güncelleme sonrası sor, Ayarlar'dan temizle by @syhgorath in #112
  • Release 3.6.14: bump VERSION and finalize CHANGELOG by @syhgorath in #113

Full Changelog: v3.6.13...v3.6.14

v3.6.13

Choose a tag to compare

@syhgorath syhgorath released this 26 Oct 09:33
60d856a

What's Changed

Full Changelog: v3.6.12...v3.6.13

v3.6.12

Choose a tag to compare

@syhgorath syhgorath released this 25 Oct 18:05
8cf9ae5

What's Changed

  • components run: sunucu saati farkı uyarısı (snapshot sonrası apt "Not live until") by @syhgorath in #100
  • linux-hardening 0.8.2 kilitlendi by @syhgorath in #101
  • Release 3.6.12: linux-hardening 0.8.2, sunucu saati uyarısı by @syhgorath in #102

Full Changelog: v3.6.11...v3.6.12

v3.6.11

Choose a tag to compare

@syhgorath syhgorath released this 24 Oct 21:35
c4cbd1e

What's Changed

  • linux-hardening 0.8.1 kilitlendi; validate: kurtarma ve araç kuran eylemler preview ön koşulundan muaf by @syhgorath in #98
  • Release 3.6.11: linux-hardening 0.8.1, validate muafiyeti by @syhgorath in #99

Full Changelog: v3.6.10...v3.6.11