Tài liệu

Bắt đầu nhanh + mô tả chức năng của từng phần, từng thiết bị (đang tiếp tục cập nhật)

Câu hỏi thường gặp FAQ

Bài viết này tổng hợp những vấn đề thường gặp nhất trong quá trình dùng bảng điều khiển cùng cách khắc phục.

Cài đặt và đăng nhập

Q: Cần điều kiện gì để cài đặt bảng điều khiển?

Một máy chủ Linux có IP công cộng (khuyến nghị các bản phân phối phổ biến như Debian / Ubuntu / CentOS), bộ nhớ từ 512MB trở lên là chạy mượt. Máy chủ được quản lý không cần cài bất cứ thứ gì, chỉ cần SSH kết nối được.

Q: Tài khoản mật khẩu mặc định là gì?

Tài khoản mặc định admin, mật khẩu 123456. Sau lần đăng nhập đầu tiên hãy đổi ngay (biểu tượng người dùng ở góc trên bên phải → Cài đặt người dùng).

Q: Quên mật khẩu đăng nhập thì làm sao?

Nếu đã đổi và quên, có thể đặt lại trên máy chủ bảng điều khiển. Chạy lệnh sau để đặt lại về mật khẩu mặc định (hoặc chỉ định mật khẩu mới):

# Vào thư mục cài đặt bảng điều khiển, dùng script tích hợp để đặt lại mật khẩu
cd /opt/ssh-everywhere
python3 -c "from app import reset_password; reset_password('mật-khẩu-mới')"

> Tên script cụ thể có thể thay đổi theo phiên bản, cũng có thể sửa trực tiếp bảng users trong cơ sở dữ liệu data/ssheverywhere.db.

Q: Làm sao đổi cổng bảng điều khiển (5501)?

Sửa Environment=PORT=5501 trong dịch vụ systemd, rồi tải lại:

systemctl edit ssh-everywhere.service
# Thêm hoặc sửa: Environment=PORT=cổng-của-bạn
systemctl daemon-reload && systemctl restart ssh-everywhere.service

Đổi xong nhớ mở cổng mới trên tường lửa đám mây/nhóm bảo mật.

Q: Không truy cập được bảng điều khiển (cổng 5501)?

Khắc phục theo thứ tự:

1. Xác nhận dịch vụ bảng điều khiển đang chạy: systemctl status ssh-everywhere.service

2. Kiểm tra tường lửa đám mây/nhóm bảo mật của máy chủ bảng điều khiển có mở cổng 5501 không (đây là nguyên nhân phổ biến nhất)

3. Xác nhận địa chỉ truy cập là http://IP-công-cộng-máy-chủ:5501 (không phải https, trừ khi bạn đã cấu hình proxy ngược)

Liên quan đến máy chủ

Q: Máy chủ hiển thị「Ngoại tuyến」thì làm sao?

「Ngoại tuyến」chỉ nghĩa là bảng điều khiển không thể SSH kết nối tới nó, không có nghĩa máy chủ đã chết. Khắc phục theo thứ tự:

1. Xác nhận bản thân máy chủ đang trực tuyến: vào trang quản trị nhà cung cấp xem trạng thái nguồn

2. Kiểm tra cổng SSH có tới được không: từ máy chủ bảng điều khiển chạy nc -zv <IP-đích> <cổng> xem cổng có thông không

3. Kiểm tra tường lửa/nhóm bảo mật: tường lửa đám mây/nhóm bảo mật của máy chủ đích có mở cổng SSH không

4. Máy chủ NAT kiểm tra ánh xạ cổng: xác nhận ánh xạ cổng NAT vẫn tồn tại, IP nội bộ đích đúng

5. Kiểm tra danh sách trắng IP nguồn: một số nhà cung cấp có giới hạn IP nguồn với cổng SSH, cần thêm IP máy chủ bảng điều khiển vào danh sách trắng

6. Đối chiếu tài khoản mật khẩu: tên người dùng, mật khẩu/khóa riêng có đúng không

Q: Thêm máy chủ nhưng không kết nối được?

  • Xác nhận cổng SSH, tên người dùng, mật khẩu đúng
  • Xác nhận sshd trên máy chủ đích đang chạy
  • Xác nhận tường lửa đã mở cổng SSH
  • Các cloud lớn (Tencent Cloud/Alibaba Cloud) mặc định vô hiệu hóa root, hãy đăng nhập bằng người dùng thường (như ubuntu)

Q: Máy chủ NAT (cổng không phải 22) không kết nối được?

Ánh xạ cổng của máy chủ NAT phải truy cập được từ mạng chứa máy chủ bảng điều khiển. Nguyên nhân thường gặp:

  • Ánh xạ cổng mất hiệu lực (vào trang quản trị nhà cung cấp kiểm tra/tạo lại)
  • Nhà cung cấp đặt danh sách trắng cho IP nguồn (thêm IP máy chủ bảng điều khiển vào danh sách trắng)
  • Điền sai IP/cổng nội bộ đích của ánh xạ

Liên quan xuyên cổng / chuyển tiếp cổng

Q: Xuyên cổng hiển thị「Ngoại tuyến」?

  • Xuyên cổng phụ thuộc Agent trực tuyến. Khi Agent ngoại tuyến (thiết bị tắt, mạng đứt, Agent dừng) thì xuyên cổng sẽ gián đoạn
  • Sau khi dịch vụ bảng điều khiển khởi động lại, xuyên cổng sẽ tự động khôi phục khi Agent kết nối lại, chờ một chút là được
  • Xác nhận tường lửa đám mây của máy chủ bảng điều khiển đã mở cổng lắng nghe

Q: Chuyển tiếp cổng không phải 22 không có hiệu lực?

Chuyển tiếp cổng không phải SSH (như 9117) yêu cầu máy chủ xuyên NAT đã cài Agent phiên bản mới (bản cũ chỉ hỗ trợ 22). Cài lại Agent là được.

Q: Đã tạo chuyển tiếp cổng nhưng không có hiệu lực?

Chuyển tiếp cổng truyền thống cần làm ngay trên máy chủ có IP công cộng riêng. Kiểm tra:

1. Máy chủ đích/tường lửa trung gian có mở cổng đích không

2. IP đích điền vào có phải địa chỉ thật sự tới được không

3. Nhóm bảo mật đám mây có chặn cổng lắng nghe không

Q: Xuyên cổng và chuyển tiếp cổng khác nhau thế nào?

  • Xuyên cổng: dành cho thiết bị không có IP công cộng, đi qua đường hầm ngược, mở cổng công cộng trên máy chủ bảng điều khiển.
  • Chuyển tiếp cổng: dành cho máy chủ có IP công cộng, đi qua DNAT của tường lửa hệ thống, làm ngay trên máy chủ đích.

Xem chi tiết Xuyên cổng và Chuyển tiếp cổng.

Liên quan Docker / cài đặt ứng dụng

Q: Kho ứng dụng/Docker cài đặt thất bại thì làm sao?

Bảng điều khiển sẽ hiển thị thông báo lỗi trung thực (không báo thành công giả). Nguyên nhân thường gặp:

1. Bản phân phối quá cũ: các phiên bản đã EOL như Fedora 32, nguồn phần mềm ngừng bảo trì, cài đặt sẽ timeout hoặc thất bại. Nên nâng cấp hệ thống.

2. Mạng không tới được: nguồn chính thức của Docker (get.docker.com / download.docker.com) có thể không truy cập được trong một số môi trường mạng (như máy chủ NAT ở Trung Quốc đại lục). Lúc này cần cấu hình nguồn image trong nước cho Docker, hoặc dùng chức năng「Nguồn image」để chuyển sang nguồn Alibaba Cloud.

3. Khác biệt tên gói: một số ứng dụng (như ufw, deb.nodesource của Node.js) phụ thuộc bản phân phối cụ thể, trên hệ không phải Debian/Ubuntu có thể không cài được, thông báo lỗi sẽ ghi rõ.

Q: Máy chủ trong Trung Quốc đại lục kéo image Docker rất chậm/timeout?

Đây là vấn đề mạng, không phải vấn đề bảng điều khiển. Nên cấu hình Docker mirror accelerator (accelerator công cộng như docker.1ms.run / docker.m.daocloud.io), hoặc chạy trước trên máy chủ:

# Tham khảo: cấu hình accelerator cá nhân Alibaba Cloud (cần thay bằng địa chỉ accelerator của bạn)
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<'EOF'
{ "registry-mirrors": ["https://địa-chỉ-accelerator-của-bạn"] }
EOF
sudo systemctl restart docker

Mẹo khắc phục chung

1. Kiểm tra cổng có thông trước, rồi mới kiểm tra tài khoản mật khẩu: nc -zv <IP> <cổng>

2. So sánh với máy chủ khác: cùng loại máy chủ kết nối được, chỉ máy này không, nghĩa là vấn đề riêng của máy này (tường lửa/ánh xạ/danh sách trắng)

3. Xem log: log bảng điều khiển ở service.log, log xuyên cổng/Agent giúp định vị vấn đề kết nối