Belgeler
Hızlı başlangıç + her bölüm ve her cihaz için işlev açıklamaları (sürekli güncelleniyor)
Kurulum ve kaldırma
Bu belge SSH Everywhere panelinin nasıl kurulacağını, yükseltileceğini ve kaldırılacağını ayrıntılı olarak açıklar; özellikle "kurulum dizini değiştirildikten sonra nasıl kaldırılır" konusuna ve komutlardaki biçim ayrıntılarına (boşluk, tırnak) odaklanır.
1. Kurulum (tek satırlık komut)
Genel IP'li bir Linux sunucusunda çalıştırın:
curl -fsSL https://ssheverywhere.com/install.sh | bash
Betik otomatik olarak şunları yapar: sistemi algılar → bağımlılıkları kurar (Python3 / venv / pip / git / curl) → kodu indirir → sanal ortam oluşturur → Python bağımlılıklarını kurar → systemd servisini kaydeder ve başlatır.
Debian / Ubuntu / CentOS / Rocky / AlmaLinux / Fedora / WSL desteklenir (systemd yoksa otomatik olarak arka planda çalıştırmaya geçer).
Kurulum parametreleri
| Parametre | Açıklama | Örnek |
|---|---|---|
--lang <kod> | İpucu dili + panelin varsayılan dili (varsayılan olarak sistem locale'ine göre otomatik belirlenir; 1-16 numarası da kabul edilir) | --lang ja |
--dir <dizin> | Kurulum dizini (varsayılan /opt/ssh-everywhere; yazılamıyorsa otomatik olarak ~/ssh-everywhere dizinine düşülür ve bu durum çıktıda açıklanır) | --dir /opt/my-panel |
--port <port> | Panel portu (varsayılan 5501) | --port 8080 |
--ascii | Yalnızca saf ASCII simge çıktısı zorlanır ([ok] / [..] / [!] / [x]), hiçbir terminalde bozuk karakter olmaz | --ascii |
--unicode | Unicode simge çıktısı zorlanır (✓ ⟳ ⚠️ ❌); UTF-8 ortamında varsayılan olarak budur | --unicode |
--yes / -y | Yükseltme sırasında otomatik onay, etkileşim gerekmez | --yes |
Desteklenen dil kodları (16)
| Kod | Dil | Kod | Dil | Kod | Dil | Kod | Dil |
|---|---|---|---|---|---|---|---|
zh | 中文 | en | English | ja | 日本語 | ko | 한국어 |
es | Español | fr | Français | de | Deutsch | ru | Русский |
pt | Português | it | Italiano | ar | العربية | tr | Türkçe |
vi | Tiếng Việt | th | ไทย | id | Bahasa Indonesia | hi | हिन्दी |
--lang verilmediğinde dil, sistem locale'ine göre otomatik belirlenir (örneğin LANG=ja_JP.UTF-8 → Japonca ipuçları). Sunucunun veya terminalin locale'i UTF-8 değilse (büyük bulut sağlayıcılarının küçültülmüş imajlarında LANG=C yaygındır), betik otomatik olarak saf ASCII simgelerine [ok] geçer; dil açıkça belirtilmediyse ipucu metinlerini de İngilizceye döndürür ve nedenini başta açıklar — bunların hepsi her türlü bozuk karakteri önlemek içindir. Kendi dilinizi zorlamak için şunu kullanın: --lang xx --unicode.
Parametreleri boru (pipe) ile aktarırken bash -s -- eklenmelidir:
# Japonca ipuçları + Japonca panel curl -fsSL https://ssheverywhere.com/install.sh | bash -s -- --lang ja # Rusça ipuçları + özel dizin ve port curl -fsSL https://ssheverywhere.com/install.sh | bash -s -- --lang ru --dir /opt/my-panel --port 8080 # Eski terminal / GBK terminalinde bozuk karakter korkusu: saf ASCII çıktı (Çince ipuçları + [ok] simgeleri) curl -fsSL https://ssheverywhere.com/install.sh | bash -s -- --lang zh --ascii # Arapça (RTL arayüz) curl -fsSL https://ssheverywhere.com/install.sh | bash -s -- --lang ar
Önce indirip sonra çalıştırabilirsiniz de (etkileşimli; dil, dizin ve yükseltme onayını adım adım sorar):
curl -fsSL https://ssheverywhere.com/install.sh -o install.sh && bash install.sh
> Büyük bulutlarda (Tencent Cloud / Alibaba Cloud) root girişi varsayılan olarak devre dışıdır. Açıkça verilen --dir öncelikli olarak dikkate alınır; ancak mevcut kullanıcının o dizinde yazma izni yoksa betik otomatik olarak HOME dizininize (~/ssh-everywhere) geçer ve çıktıda «hangi dizini verdiğinizi, neden değiştirildiğini ve oraya kurmak için root olarak çalıştırmanız gerektiğini» açıkça bildirir.
2. Yükseltme
Kurulum komutunu yeniden çalıştırmanız yeterlidir; betikte sürüm denetimi vardır ve yeni bir sürüm bulduğunda yükseltmeyi önerir (veriler korunur, tamamen otomatik):
curl -fsSL https://ssheverywhere.com/install.sh | bash -s -- --yes
--yes, yükseltme sırasında otomatik onay verilmesini ve etkileşim gerekmemesini sağlar.
3. Kaldırma
Varsayılan dizinden kaldırma (etkileşimli, önerilir)
curl -fsSL https://ssheverywhere.com/uninstall.sh -o uninstall.sh && bash uninstall.sh
Betik önce kaldırılacak içeriği listeler ve onay sorar; yalnızca yes yazarsanız işlem yapılır.
Etkileşimsiz / betikle kaldırma
--yes ekleyerek onayı atlayın (güvenlik doğrulamaları yine korunur):
curl -fsSL https://ssheverywhere.com/uninstall.sh | bash -s -- --yes
Kaldırma parametreleri
| Parametre | Açıklama |
|---|---|
--dir <dir> | kurulum dizini (varsayılan /opt/ssh-everywhere, dizin değiştirildiyse mutlaka belirtilmelidir) |
--keep-data | kaldırmadan önce data (sunucu yapılandırması / veritabanı) dizinini tar paketi olarak yedekler |
--yes | etkileşimsiz modda kaldırmayı onaylar |
4. Kurulum dizini değiştirildiyse nasıl kaldırılır? (önemli)
Kurulumda --dir ile dizin değiştirildiyse, kaldırma sırasında da aynı --dir belirtilmelidir; aksi hâlde betik kurulum dizinini bulamaz ve otomatik olarak durur (bu, yanlışlıkla silmeye karşı bir güvenlik korumasıdır).
Dizin yolunda boşluk yoksa
curl -fsSL https://ssheverywhere.com/uninstall.sh -o uninstall.sh && bash uninstall.sh --dir /opt/my-panel
Boru yöntemi (--dir, bash -s -- sonrasına konur):
curl -fsSL https://ssheverywhere.com/uninstall.sh | bash -s -- --dir /opt/my-panel --yes
Dizin yolunda boşluk varsa
Dizin adında boşluk varsa tüm yolu çift tırnak içine almanız gerekir; aksi hâlde shell yolu ikiye böler ve betik dizini bulamaz:
bash uninstall.sh --dir "/opt/my panel"
Boru yöntemi için de aynıdır (tırnak tüm yolu kapsamalı, yalnızca yarısını sarmamalıdır):
curl -fsSL https://ssheverywhere.com/uninstall.sh | bash -s -- --dir "/opt/my panel" --yes
Verileri koruyarak kaldırmak isterseniz
bash uninstall.sh --dir /opt/my-panel --keep-data
data (sunucu yapılandırması / veritabanı) <install-dir>-data-backup-<timestamp>.tar.gz dosyasına yedeklenir; kaldırma sonrasında geri alınabilir.
> 💡 Öneri: Kurulum sırasında dizin adında boşluk kullanmaktan kaçının; kısa çizgi veya alt çizgi kullanın (örn. my-panel, my_panel); böylece tırnak yüzünden yaşanacak zahmetten kurtulursunuz.
5. Güvenlik açıklaması
Kaldırma betiğinde yanlışlıkla silmeyi önleyen üç katmanlı koruma bulunur:
1. Mutlak yol doğrulaması —— göreli yollar reddedilir.
2. Sistem kritik dizinleri kara listesi —— /, /root, /etc, /usr, /var vb. reddedilir.
3. Kurulum dizini parmak izi doğrulaması —— silme işlemi yalnızca VERSION ve app.py birlikte varsa yapılır, aksi hâlde durdurulur.
> Kaldırma yalnızca panelin kendisini siler; hedef sunuculardaki / cihazlardaki Agent etkilenmez (panel silindikten sonra çevrimdışı görünürler).