Mosh, tên viết tắt của "shell di động", là một ứng dụng thiết bị đầu cuối từ xa đang được thiết kế để cung cấp kết nối và trải nghiệm người dùng tốt hơn so với các ứng dụng thiết bị đầu cuối dựa trên SSH.
Khi nói về các công nghệ quản trị máy chủ từ xa, SSH rõ ràng có sự phổ biến lâu dài trong cộng đồng nguồn mở. Tuy nhiên, trong điều kiện mạng kém, như di động, chuyển vùng, Wi-Fi và liên kết đường dài, các kết nối SSH có thể bị rối loạn chức năng, khiến mọi người phải liên tục hết thời gian kết nối hoặc không phản hồi.
Với nhiều điều kiện mạng khác nhau, Mosh đã thực hiện nhiều cải tiến so với SSH, bao gồm nhưng không giới hạn ở việc: chọn UDP trên TCP để xây dựng, tiếng vang cục bộ thông minh và giảm mức sử dụng băng thông. Mỗi nỗ lực này làm cho Mosh trở thành một bổ sung tuyệt vời cho SSH.
Trong các phần sau, tôi sẽ trình bày cách cài đặt Mosh trên máy chủ CentOS 6 x64 và ứng dụng trình duyệt Chrome, cùng với cách sử dụng ứng dụng khách Mosh Chrome để kết nối với máy chủ từ xa.
Điều kiện tiên quyết
Để có được trải nghiệm thực tế từ bài viết này, bạn cần triển khai một phiên bản máy chủ Vultr CentOS 6 x64 từ đầu và đăng nhập với tư cách là người dùng không root với quyền sudo. Hướng dẫn cho các hệ điều hành khác có thể thay đổi.
Cài đặt Mosh trên máy chủ CentOS 6 x64
Với yum
, bạn có thể dễ dàng cài đặt Mosh lên máy chủ CentOS 6 của mình:
sudo yum update -y
sudo yum install mosh
Mosh cũng có thể được cài đặt trên nhiều hệ điều hành khác. Bạn có thể truy cập trang web chính thức để xem chi tiết.
Sửa đổi quy tắc tường lửa để cho phép lưu lượng Mosh
Để có được chức năng Mosh, Bạn cần cho phép lưu lượng UDP trên các cổng từ 60000 đến 61000.
sudo iptables -I INPUT 1 -p udp --dport 60000:61000 -j ACCEPT
sudo service iptables save
Cài đặt Mosh trên trình duyệt Chrome
Để sử dụng Mosh để quản lý máy chủ từ xa, bạn cũng cần cài đặt chương trình Mosh trên máy cục bộ của mình. Ở đây, tôi sẽ cài đặt Mosh trên trình duyệt Chrome làm ví dụ.
Truy cập trang Mosh trên cửa hàng web Chrome từ trong trình duyệt web Chrome của bạn. Nhấp vào nút "THÊM VÀO CHROME" ở góc trên bên phải để cài đặt nó.
Đăng nhập từ ứng dụng khách Mosh Chrome
Khởi chạy Mosh từ thư mục ứng dụng Chrome để bật lên cửa sổ đăng nhập.
Như bạn thấy, trong chế độ SSH mặc định, bạn có thể sử dụng thông tin đăng nhập tương tự như SSH để thiết lập kết nối Mosh. Cả mật khẩu và xác thực dựa trên khóa SSH đều khả dụng.
Ngoài ra, trong trường "lệnh từ xa", bạn có thể nhập một số lệnh mà bạn muốn thực thi ngay sau khi kết nối. Ví dụ: bạn có thể nhập tmux attach-session
để tiếp tục tmux
phiên của mình tự động sau khi kết nối.
Đối với trường "Lệnh máy chủ Mosh", bạn có thể để trống trong điều kiện bình thường. Hiện tại, bạn không cần phải bắt đầu Mosh với các đối số khác nhau.
Tận hưởng trải nghiệm người dùng thông thạo Mosh
Sau khi đăng nhập, bạn có thể sử dụng Mosh để thực thi các lệnh giống như sử dụng bất kỳ ứng dụng thiết bị đầu cuối từ xa SSH nào khác, ngoại trừ phản hồi của máy chủ từ xa trong Mosh nhanh hơn và mượt mà hơn, đặc biệt là trong điều kiện mạng kém.
Tính năng dễ phân biệt nhất của Mosh sẽ là phần gạch chân của đầu vào mới nhất của bạn, điều này biểu thị rằng Mosh đã dự đoán thông minh trạng thái của thiết bị đầu cuối từ xa trước khi nhận được phản hồi từ máy chủ đường dài của bạn. Những gạch chân này sẽ biến mất sau khi cả hai trạng thái kết thúc được đồng bộ hóa. Bạn không còn cần phải chờ phản hồi của máy chủ từ xa trước khi bạn có thể tiếp tục nhập thông suốt.
Một mẹo bổ sung
Tôi khuyên bạn nên sử dụng Mosh với tmux
hoặc một công cụ tương tự khác cùng một lúc vì bạn sẽ cần một công cụ như vậy để dự trữ đầu ra trước đó không còn trong cửa sổ đầu cuối của Mosh. Đối với mục đích tăng tốc, Mosh không giữ lại đầu ra cuộn.