'Wetty (Web + tty)' Aracını Kullanarak Web Tarayıcısında Linux Sunucu Terminaline Nasıl Erişilir


Bir sistem yöneticisi olarak, uzak sunuculara, Linux masaüstü kullanıyorsanız muhtemelen GNOME Terminali (veya benzeri) gibi bir programı veya eğer varsa Putty gibi bir SSH istemcisini kullanarak bağlanırsınız. Windows makinesi, web'de gezinmek veya e-postanızı kontrol etmek gibi diğer görevleri gerçekleştirirken.

Uzak bir Linux sunucusuna doğrudan web tarayıcısından erişmenin bir yolu olsaydı harika olmaz mıydı? Neyse ki hepimiz için, geçiş yapmaya gerek kalmadan tam da bunu yapmamıza olanak tanıyan Wetty (Web + tty) adında bir araç var. programlar ve hepsi aynı web tarayıcı penceresinden.

Wetty'yi Linux'a Kurmak

Wetty'ye geliştiricisinin GitHub deposundan ulaşılabilir. Bu nedenle, dağıtımdan bağımsız olarak, depoyu yerel olarak klonlamadan ve programı kurmadan önce manuel olarak kurulması gereken bazı bağımlılıkları kullanıyorsunuz.

CentOS, Rocky Linux ve AlmaLinux gibi RHEL tabanlı dağıtımlarda NodeJS'yi yüklemeniz gerekir ve gösterildiği gibi EPEL deposu:


yum groupinstall 'Development Tools'
curl -fsSL https://rpm.nodesource.com/setup_17.x | bash -
yum update 
yum install epel-release git nodejs npm

Debian ve türevlerinde, dağıtımın depolarında bulunan NodeJS sürümü, Wetty'i yüklemek için gereken minimum sürümden daha eski olduğundan, onu >NodeJS GitHub geliştirici deposu:


apt install curl build-essential
curl -fsSL https://deb.nodesource.com/setup_17.x | sudo -E bash -
apt update && apt install -y git nodejs npm

Bu bağımlılıkları yükledikten sonra GitHub deposunu klonlayın:

git clone https://github.com/krishnasrinivas/wetty

Yukarıdaki mesajda belirtildiği gibi çalışma dizinini wetty olarak değiştirin:

cd wetty

ardından aşağıdakileri çalıştırarak Wetty'i yükleyin:

npm install

Kurulum işlemi sırasında herhangi bir hata mesajı alırsanız lütfen devam etmeden önce bunları giderin. Benim durumumda, Debian'da NodeJS'nin daha yeni bir sürümüne duyulan ihtiyaç, npm kurulumunu başarıyla çalıştırmadan önce çözülmesi gereken bir sorundu.

Web Tarayıcısından Wetty'yi Başlatma ve Linux Terminaline Erişim

Bu noktada, Wetty için yerel bağlantı noktası 8080'de çalıştırarak web arayüzünü başlatabilirsiniz (bu, mevcut çalışma dizininizin /wetty olduğunu varsayar). :

node app.js -p 8080

Aşağıdaki resimde görebileceğiniz gibi:

Ancak kendinize bir iyilik yapın ve bu bağlantı güvenli olmadığından ve kimlik bilgilerinizin korunmasız bir şekilde kablo üzerinden geçmesini istemediğiniz için kullanıcı adınızı ve şifrenizi GİRMEYİN.

Bu nedenle Wetty'i her zaman HTTPS üzerinden çalıştırmalısınız. Uzak sunucuyla bağlantımızın güvenliğini sağlamak için kendinden imzalı bir sertifika oluşturalım:

openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 365 -nodes

Daha sonra Wetty'i HTTPS aracılığıyla başlatmak için kullanın.

Wetty'i çalıştırmak istediğiniz özel HTTPS bağlantı noktasını açmanız gerekeceğini lütfen unutmayın:

firewall-cmd --add-service=https # Run Wetty in the standard HTTPS port (443)
firewall-cmd --permanent --add-service=https
firewall-cmd --add-port=XXXX/tcp # Run Wetty on TCP port XXXX
nohup node app.js --sslkey key.pem --sslcert cert.pem -p 8080 &

Yukarıdaki dizideki son komut, arka planda 8080 bağlantı noktasını dinlemeye başlayarak Wetty'i başlatacaktır. Kendinden imzalı bir sertifika kullandığımızdan, tarayıcının bir güvenlik uyarısı göstermesi beklenir - Bunu yok saymak ve bir güvenlik istisnası eklemek tamamen güvenlidir - kalıcı olarak veya mevcut oturum için:

Güvenlik istisnasını onayladıktan sonra Wetty'yi kullanarak VPS'nize giriş yapabileceksiniz. Aşağıdaki ekran görüntüsünde görebileceğiniz gibi, tüm komutları ve programları sanki gerçek veya sanal bir terminalin önünde oturuyormuş gibi çalıştırabileceğinizi söylemeye gerek yok: