Sshwifty

A SSH and Telnet client made for the Web.

Accessing Sshwifty

  • เปิดเบราว์เซอร์ของคุณและเข้าไปที่: https://<SERVER_IP>
  • คาดว่าจะมีการแจ้งเตือน SSL จากเบราว์เซอร์ (ใบรับรองที่ลงนามด้วยตนเอง)
  • จำเป็นต้องยืนยันตัวตน (ป๊อปอัพการยืนยันตัวตนขั้นพื้นฐาน)
  • วิธีการยืนยันตัวตน: HTTP Basic Auth
  • ข้อมูลประจำตัวจะถูกจัดเก็บอย่างปลอดภัยใน: /root/.cloudzy-creds

ไฟล์และไดเร็กทอรีที่สำคัญ

  • ไดเร็กทอรีการติดตั้ง: /root/sshwifty
  • ไฟล์ Docker Compose: /root/sshwifty/docker-compose.yml
  • ข้อมูลประจำตัวที่บันทึกไว้: /root/.cloudzy-creds
  • Nginx virtual host: /etc/nginx/sites-available/sshwifty.conf
  • Basic Auth file: /etc/nginx/auth/sshwifty.htpasswd
  • ใบรับรอง TLS: /etc/nginx/ssl

หมายเหตุเกี่ยวกับความปลอดภัย

  • Only Nginx listens on public ports.
  • Access is protected via Basic Auth.
  • TLS uses a self-signed certificate.
  • Credentials are stored with restrictive permissions.

การเปิดใช้งาน SSL กับโดเมน

1. ชี้โดเมนของคุณไปยังที่อยู่ IP ของเซิร์ฟเวอร์

2. แก้ไขไฟล์การตั้งค่า Nginx และแทนที่ทั้งสองส่วน server_name <IP>; ด้วยโดเมนของคุณ (<your-domain>สำหรับทั้งบล็อก HTTP (พอร์ต 80) และ HTTPS (พอร์ต 443):

vim /etc/nginx/sites-available/sshwifty.conf

3. ติดตั้ง Certbot:

apt install -y certbot python3-certbot-nginx

4. รันคำสั่งต่อไปนี้เพื่อสร้างใบรับรอง Let's Encrypt ที่ถูกต้อง:

certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com

5. แทนที่เส้นทาง SSL ในไฟล์การตั้งค่า Nginx:

vim /etc/nginx/sites-available/sshwifty.conf
# Before:
    # ssl_certificate /etc/nginx/ssl/fullchain.pem;
    # ssl_certificate_key /etc/nginx/ssl/privkey.pem;
# After:
    # ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
    # ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;

6. รีสตาร์ท Nginx เพื่อให้การเปลี่ยนแปลงมีผล:

systemctl restart nginx

7. เปิดเบราว์เซอร์ของคุณและไปที่: https://yourdomain.com

รายละเอียดการสมัคร