常见问题
以下是关于 SSLcat 的常见问题解答,如果您有其他问题,请随时联系我们。
general
SSLcat, Go ile yazılmış açık kaynaklı kurumsal düzeyde bir SSL ters proxy sunucusudur. nginx + Caddy + Web UI + GitOps'u tek bir ikili dosyada bir araya getirir: Let's Encrypt otomatik sertifika verme ve yenileme, akıllı alan adı yönlendirme, yük dengeleme, WAF, Docker / Runner uygulama barındırma ve modern bir Web yönetim paneli. v2.1'den itibaren yerleşik bir MCP sunucusu ile gelir, böylece Claude / Cursor ve diğer AI istemcileri araçlarını doğrudan çağırabilir.
MCP (Model Context Protocol), AI istemcilerini harici araçlara bağlayan açık bir protokoldür. v2.1'den itibaren SSLcat'in kendisi bir MCP sunucusudur ve v2.3.0-rc1 itibarıyla 22 aracı (site / sertifika / proxy rota CRUD, yukarı akış sağlık kontrolü, uzun süreli görev sorguları ve son hataları incelemek için `error_log_list` / `error_log_tail`) artı 5 kaynağı (sansürlenmiş mevcut yapılandırma, çalışma zamanı metrik anlık görüntüsü, erişim günlüğü kuyruğu, hata günlüğü kaynakları, hata günlüğü içeriği) açığa çıkarır. Claude Desktop / Cursor / Cherry Studio / Continue.dev'e bir token bırakın ve AI siteleri listeleyebilir, sertifika verebilir, rotaları değiştirebilir ve erişim / hata günlüklerini inceleyebilir — yıkıcı eylemler hâlâ iki aşamalı onaydan geçer.
macOS / Linux'ta tek satırlık komut: `curl -fsSL https://raw.githubusercontent.com/xurenlu/sslcat/main/install.sh | bash`. Ayrıca GitHub Releases sayfasından ikili dosyalar da alabilirsiniz (linux-amd64 / linux-arm64 / darwin-arm64 / darwin-amd64). Tüm belgeler `docs/` altında ve web sitesinde bulunmaktadır.
Evet. SSLcat, Let's Encrypt (ACME) ile entegredir. Bir alan adı eklemek otomatik sertifika vermeyi tetikler ve sertifikalar süre dolmadan 30 gün önce sıfır kesinti ile yenilenir. Hem HTTP-01 hem de DNS-01 doğrulamaları desteklenir; DNS-01 artı AWS Route53 (ve diğer sağlayıcılar) ile `*.example.com` gibi joker sertifikaları verebilirsiniz.
nginx'e karşı: SSLcat kutudan çıkar çıkmaz bir Web yönetim paneli, otomatik SSL, GitOps dağıtımı, gerçek zamanlı izleme ve AI destekli güvenlik sunar — artık elle düzenlenen yapılandırma dosyaları yok. Caddy'ye karşı: SSLcat 6 yük dengeleme algoritması, çok kullanıcılı yönetim, Docker imajı ve Runner dağıtımı, API token sistemi, WebSocket tabanlı canlı günlük akışı ve v2.1'den itibaren yerleşik MCP entegrasyonu sunar.
Tam HTTP/1.1, HTTP/2 ve HTTP/3 (QUIC), zorunlu TLS 1.3 ile. Uzun ömürlü WebSocket ve SSE bağlantıları özel olarak ele alınır ve uzun ACME görevleri kalp atışı, yazma zaman aşımı muafiyetleri ve alan adı başına eşzamanlılık izolasyonu kullanır, böylece birbirlerini aşağı çekemezler.
Altı algoritma yerleşiktir (round-robin, ağırlıklı round-robin, en az bağlantı, IP hash, rastgele, en hızlı yanıt), TCP sağlık kontrolleri ve oturum yapışkanlığı ile birleştirilmiştir. Tek bir alan adında rota seviyesinde ağırlıklı arka uçların bir listesini ekleyebilirsiniz.
SSLcat'i Git uzak olarak ekleyin, ardından dağıtım için `git push sslcat main` çalıştırın — Dokku/Heroku tarzı. Runner dağıtım girişi katmanlıdır: bir dizin yükleyin, bir ikili dosya yükleyin, doğrudan bir Docker imajı çekin, `git push`'tan derleyin veya bir şablon kullanın. Tüm yollar aynı birleşik Runner şartnamesinde (ortam değişkenleri, portlar, montajlar, başlangıç komutu) birleşir.
Runner, SSLcat'in yerleşik uygulama barındırma katmanıdır. Docker konteynerlerini çalıştırabilir, yüklenen ikili dosyaları çalıştırabilir, `git push`'tan derlenen imajları çalıştırabilir veya şablonlardan dağıtım yapabilir. SSLcat yeniden başlatıldığında yalnızca Runner konteyner durumunu uzlaştırır — iş konteynerlerinizi asla yeniden başlatmaz, böylece üretim trafiği yanlışlıkla kesilmez.
WAF kural eşleştirme (istek gövdesi tarama belleği sınırlı tutmak için 1 MB ile sınırlandırılır), DDoS koruması, kaba kuvvet önleme, IP / UA / TLS parmak izi engelleme ve beyaz listeye alma, ince ayrıntılı API tokenları, TOTP MFA, denetim günlükleri, yapılandırma sürüm yönetimi ve çevrimiçi eğitim, JSON model kalıcılığı ve gerçek trafik çıkarımı ile Isolation Forest tabanlı bir AI anomali dedektörü.
Yerleşik sıfırlama komutunu tercih edin: `sslcat users password -username admin -new-password 'NewStrongPass123!'`. Bir kaynak ağacından şunu da çalıştırabilirsiniz: `go run tools/cmd/reset_password/main.go admin 'NewStrongPass123!'`.
v2.0.0-rc22'den itibaren tek kullanımlık kurtarma kodu ile de sıfırlayabilirsiniz. Ruby ile manuel olarak bir bcrypt hash'i oluşturmak için: `gem install bcrypt` ile bcrypt'i kurun, ardından `SSL_PASS='NewStrongPass123!' ruby -rbcrypt -e 'puts BCrypt::Password.create(ENV.fetch("SSL_PASS"), cost: 10)'` çalıştırın.
Python ile: `python3 -m pip install bcrypt`, ardından `SSL_PASS='NewStrongPass123!' python3 -c 'import bcrypt, os; print(bcrypt.hashpw(os.environ["SSL_PASS"].encode(), bcrypt.gensalt(rounds=10)).decode())'`.
Hash'i `admin.password_file`'a (genellikle `/opt/sslcat/data/admin.pass` veya `./data/admin.pass`) `600` modu ile yazın. Şifre dosyası kurtarma genellikle SSLcat'in yeniden başlatılmasını gerektirmez — bir sonraki giriş yeni hash'i okur.
`http://<your-host>:8080/sslcat-panel/`, varsayılan hesap `admin`, varsayılan şifre `admin*9527` (ilk girişte değiştirin). Yönetim URL öneki ve yönetim portunun ikisi de yapılandırılabilir.
Evet. SSLcat, Let's Encrypt DNS-01 doğrulaması aracılığıyla `*.example.com` gibi joker sertifikaları verir. Joker alan adları otomatik olarak DNS-01'e zorlanır ve doğrulama için AWS Route53 ve diğer DNS sağlayıcılarıyla eşleşir.
Yönetim panelindeki "Siteler" altında bir alan adı, hedef ana bilgisayar ve port ekleyin. Birden çok arka uç eklemek için `load_balancer_enabled`'ı etkinleştirin, algoritmayı seçin (round_robin / least_conn / ip_hash vb.), sağlık kontrollerini açın ve arka uçları listeleyin. Ayrıca JSON yapılandırmasını doğrudan da düzenleyebilirsiniz (SSLcat YAML değil, JSON kullanır).
Evet. v2.0 serisi üretim yollarını sertleştirmeye devam ediyor: sertifikalar, anahtarlar, yapılandırma sürümleri, tokenlar ve oturumlar için atomik yazma; her bileşende idempotent Stop / Close; eşzamanlılık altında daha güvenli yukarı akış önbellekleme; yüksek verimli WAF; sağlam HTTP/2 / HTTP/3 / WebSocket uzun ömürlü bağlantıları. Son optimizasyon, boşta CPU'yu %50-100'den <%1'e ve çoklu Runner kurulumlarını yaklaşık %97 oranında düşürdü.
1) MCP'yi etkinleştirin: `sslcat mcp enable`. 2) Bir token oluşturun: `sslcat mcp token create --name claude-desktop --scopes read,site:write,cert:write`. Düz metin token yalnızca bir kez gösterilir — güvenli bir şekilde saklayın. 3) Claude Desktop'ı Streamable HTTP uç noktası (varsayılan `https://your-domain/sslcat-panel/mcp/stream`) ve bearer token ile yapılandırın. Cursor, Cherry Studio, Continue.dev ve curl hata ayıklamasını kapsayan tam yapılandırmalar için `docs/mcp-client-setup.md` belgesine bakın.
Evet. Her yıkıcı araç iki aşamalı onay kullanır: ilk çağrı etki bilgisi ile bir kuru çalıştırma önizlemesi döndürür (örneğin `cert_delete`, sertifikanın bir proxy kuralı tarafından referans alınıp alınmadığını ve kaç gün kaldığını bayraklar; `proxy_route_delete` önekleri ve arka uçları listeler) artı 60 saniyelik TTL'li bir `confirm_token`. AI'nın gerçekten çalıştırmak için ikinci çağrının `confirm` argümanında bu tokenı geri iletmesi gerekir. Tokenlar (token_name, tool, args hash) ile bağlıdır, bu nedenle araçlar veya argümanlar arasında yeniden kullanılamazlar.
SSLcat'e bir Isolation Forest yerleşiktir. Bir `RequestSampler`, her gerçek istekten özellikleri 5.000 yuvalı bir halka tamponuna çıkarır; eğitim örnekleri doğrudan halkadan çeker ve ormanı JSON olarak `${data_dir}/ml/isolation_forest.json` altında kalıcı hale getirir (bir sonraki başlatmada otomatik yüklenir). Çıkarımlar 200 yuvalı bir halka tamponuna düşer, böylece yönetim panelindeki "Son tespitler" sekmesi sabit kodlanmış sahte verileri değil, gerçek trafiği yansıtır.
Linux (tüm büyük dağıtımlar), macOS ve Windows; hem amd64 hem de arm64 ikili dosyaları yayınlanır. Üretim için Linux'ta SSLcat'i systemd altında çalıştırmanızı öneririz.
Minimum: 512 MB RAM, 100 MB disk. Önerilen: 2 GB RAM, 1 GB disk. Kaynaktan derlemek Go 1.21+ gerektirir.
Hepsini. WebSocket şeffaf bir şekilde yukarı akışa iletilir; HTTP/2 / HTTP/3 üzerindeki SSE, yazma zaman aşımlarının uzun süredir çalışan akışları öldürememesi için ayarlanmıştır; PHP siteleri bir FastCGI arka ucu üzerinden çalışır.
Yönetim paneli, günlükleri sınırlı kuyruk takibi ile okur (büyük günlük dosyaları asla belleğe çekilmez). Yapılandırılmış günlük dosyasını doğrudan da takip edebilirsiniz. MCP aracılığıyla, AI istemcileri kuyruğu `sslcat://logs/access?since=10m&domain=foo.com&limit=200` gibi bir kaynakla alabilir.
SSLcat kutudan çıkar çıkmaz Let's Encrypt'i hedefler — HTTPS'i varsayılan hale getirmek için var olan ücretsiz bir genel CA. Yine de `cert_upload` aracılığıyla ticari sertifikalar yükleyebilirsiniz; SSLcat, PEM ayrıştırmayı, sertifika/anahtar eşleştirmeyi ve CN/SAN kapsamasını doğrular.
1) `sslcat doctor --json`; yapılandırma, portlar, sertifika dizini, site kökleri, yukarı akışlar ve MCP token durumu boyunca tek seferlik bir öz-denetim çalıştırır. 2) `sslcat status --json`; sürüm, dinleme parametreleri ve site / sertifika / MCP özetini yazdırır. 3) SSLcat hata günlüğünü ve `${data_dir}/mcp_audit.YYYYMMDD.log`'u okuyun veya AI'nın bunları MCP `error_log_list` / `error_log_tail` araçları aracılığıyla okumasına izin verin (SSLcat'in kendisinin yanı sıra her proxy / statik / php sitesini kapsar). 4) `sslcat proxy health-check --domain foo.com --include-routes --json`; ana arka ucu ve her PathPrefixRule arka ucunu paralel olarak yoklar. 5) Sunucu, sürümünü `X-App-Version` / `X-Server-Version` yanıt başlıkları aracılığıyla açığa çıkarır, böylece trafiğe gerçekten hangi imajın hizmet verdiğini doğrulayabilirsiniz.
v2.2.0-rc1 CLI operasyon komutlarını ekler: `sslcat status [--json]` (çalışma zamanı özeti), `sslcat doctor [--json]` (yapılandırma / portlar / sertifikalar / site kökleri / yukarı akışlar / MCP tokenları boyunca öz-denetim), `sslcat site list/add/update/delete/enable/disable` (statik ve PHP siteler için CRUD — silme açık `--yes` gerektirir) ve `sslcat proxy health-check [--domain] [--include-routes] [--json]` (TCP yoklaması). Global `-config` alt komuttan önce yerleştirilebilir. v2.3.0-rc1, MCP araçlarını `error_log_list` ve `error_log_tail`'ı ve ayrıca `sslcat://logs/error-sources` ve `sslcat://logs/error{?id,kind,domain,since,keyword,limit,max_bytes}` kaynaklarını ekler, böylece AI istemcileri SSLcat'in kendisinden ve bireysel sitelerden son hataları listeleyebilir ve okuyabilir. Kaputun altında `internal/mcp/logview` sınırlı bir günlük okuyucusudur (varsayılan olarak son 1 MB, maks 4 MB), böylece büyük günlük dosyaları istek yolunu bloke edemez.
Zaten yayınlanan: tam MCP entegrasyonu P1–P5 (v2.1.0), CLI operasyon ve öz-denetim komutları (v2.2.0-rc1), MCP hata günlüğü okuma artı sınırlı günlük okuyucusu (v2.3.0-rc1). Planlanan: Kubernetes entegrasyonu, çoklu küme desteği, gelişmiş önbellekleme stratejileri, bir eklenti sistemi ve bir GraphQL API.
MIT. Kod, sorunlar ve sürümlerin tümü GitHub'da bulunur: https://github.com/xurenlu/sslcat . Sorunlar, PR'lar ve `docs/` altındaki ek kullanım örnekleri çok memnuniyetle karşılanır.
没有找到您要的答案?
如果您有其他问题或需要技术支持,请通过以下方式联系我们:
📧 邮箱: xurenlu@gmail.com
💬 GitHub Issues:github.com/xurenlu/sslcat/issues