Điểm:2

Làm cách nào để thiết lập NoMachine trong Ubuntu với xác thực dựa trên khóa?

lá cờ cn

Làm thế nào để bạn thiết lập NoMachine trên Ubuntu?

Tại sao không có máy?

Trên Windows, tôi thích sử dụng Chrome Remote Desktop để đăng nhập từ xa và nó hoạt động rất tốt. Tuy nhiên, trên Linux, tôi gặp hết sự cố này đến sự cố khác với Chrome Remote Desktop và nó cực kỳ có lỗi:

  1. Nó ngăn tôi gắn và sử dụng ổ đĩa hoặc ổ đĩa USB đã cắm: Automount khi nhấp vào đĩa trong trình quản lý tệp GUI đột nhiên ngừng hoạt động trong Ubuntu. ("Không thể gắn kết...Không được phép thực hiện thao tác.")
  2. Nó ngăn tôi thay đổi cài đặt máy in của mình: Cài đặt gnome Ubuntu 18.04: cách khắc phục "Chính sách hệ thống ngăn thay đổi. Liên hệ với quản trị viên hệ thống của bạn" trên người dùng thứ 2 đã là quản trị viên
  3. Tôi nhận được khoảng một lần sử dụng cho mỗi lần cài đặt lại Chrome Remote Desktop: Không thể kết nối với Chrome Remote Desktop trên Ubuntu 18
  4. vân vân.

Vì vậy, tôi đã nghe những điều tốt đẹp về NoMachine và muốn thử. Tuy nhiên, tôi muốn sử dụng xác thực dựa trên khóa và tắt xác thực dựa trên mật khẩu để tăng cường bảo mật. Vì vậy, làm cách nào để thiết lập NoMachine để thực hiện việc này?

Gabriel Staples avatar
lá cờ cn
@ user535733, tôi chỉ muốn gửi câu hỏi và trả lời với một số thông tin ngắn gọn. tất cả ở một nơi, dành riêng cho Ubuntu. Việc tìm kiếm thông tin chi tiết về những thứ như kích hoạt đăng nhập dựa trên khóa và vô hiệu hóa đăng nhập dựa trên mật khẩu có thể hơi phức tạp.
Điểm:2
lá cờ cn

Ban đầu tôi đã đăng các hướng dẫn này trên eRCaGuy_dotfiles mua lại tại đây: https://github.com/ElectricRCAircraftGuy/eRCaGuy_dotfiles/tree/master/NoMachine

Nếu bạn cần ssh vào, tôi đã ghi lại ghi chú ssh khác nhau của tôi ở đây.

Không có máy đọc

NoMachine là một Xuất sắc chương trình đăng nhập từ xa, với Xuất sắc khả năng chia sẻ/gắn kết tập tin và Xuất sắc hỗ trợ đa nền tảng cho Windows, Mac, Linux, iOS, Android, Raspberry Pi và ARM. Nó là không phải nguồn mở, nhưng không mất phí sử dụng (chỉ sử dụng cá nhân--doanh nghiệp phải trả tiền).

https://www.nomachine.com/

Cài đặt

Tải xuống:

https://www.nomachine.com/download

Để bật xác thực dựa trên khóa cho máy chủ:

Người giới thiệu:
ĐỌC NHỮNG THỨ NÀY!

  1. Cách thiết lập xác thực dựa trên khóa với giao thức NX
  2. Tạo khóa SSH mới

Về cơ bản, chỉ cần thêm khóa công khai của bạn vào $HOME/.nx/config/ủy quyền.crt tập tin trên máy chủ. Nếu tệp không tồn tại, hãy tạo nó. Đặt quyền của nó thành 0600. Đây là một ví dụ về các lệnh để thực hiện điều đó:

1) Chạy từ khách hàng:

Tạo một cặp khóa riêng/công khai mới từ khách hàng; chạy cái này từ máy khách:

ssh-keygen -t rsa -b 4096 -C "nhận xét hoặc email cá nhân của bạn"

Sao chép công cộng (.pub) chỉ khóa từ máy khách đến máy chủ; chạy cái này từ máy khách; lưu ý việc đổi tên tệp trên đích để tránh xung đột với các khóa đã được tạo trên máy chủ:

scp ~/.ssh/id_rsa.pub username@server_hostname_or_ip:~/.ssh/id_rsa_nxclient.pub

2) Chạy từ người phục vụ:

Thêm khóa công khai ngay bây giờ trên máy chủ vào tệp NoMachine thích hợp; chạy cái này từ máy chủ:

mèo ~/.ssh/id_rsa_nxclient.pub >> ~/.nx/config/authorized.crt

Và cuối cùng, đặt quyền của tệp này thành 0600 để CHỈ bật đọc/ghi trên tệp này cho người dùng (chủ sở hữu) của tệp này, để bảo mật:

chmod 0600 ~/.nx/config/authorized.crt

Đến vô hiệu hóa đăng nhập dựa trên mật khẩu vào máy chủ:

Lưu ý: KHÔNG làm điều này cho đến khi xác thực dựa trên khóa được thiết lập và xác minh là hoạt động, nếu không, bạn sẽ mất khả năng kết nối từ xa qua NoMachine và phải sửa thủ công từ xa qua ssh hoặc cục bộ!

Người giới thiệu:
(Không giải quyết chính xác câu hỏi này, nhưng gián tiếp hữu ích trong việc tìm ra nó)

  1. Ngăn xác thực mật khẩu bằng giao thức NX và xác thực dựa trên khóa
  2. Giải thích về các tệp server.cfg và node.cfg (dành cho máy chủ v. 4 trở lên)

Lưu ý: Trên Linux, server.cfg nằm ở đây: "/usr/NX/etc/server.cfg".

trên máy chủ, chỉnh sửa server.cfg (sudo gedit /usr/NX/etc/server.cfg) và tìm phần này:

#
# Chỉ định cách khách hàng sẽ phải xác thực với máy chủ, bằng cách
# mặc định tất cả các phương pháp có sẵn đều được hỗ trợ. Điều này tương ứng
# để coi trọng tất cả. Để chỉ định một tập hợp con các phương thức, hãy sử dụng dấu phân tách bằng dấu phẩy
# danh sách.
#
# Các phương thức kết nối được hỗ trợ bởi giao thức NX là:
# NX-password : Mật khẩu xác thực.
# NX-private-key: Xác thực dựa trên khóa.
# NX-kerberos : Xác thực dựa trên vé Kerberos.
#
# Phương pháp được hỗ trợ cho các kết nối bằng giao thức SSH là:
# SSH-system : Tất cả các phương thức được hỗ trợ để đăng nhập hệ thống.
# Phương thức xác thực SSH để đăng nhập hệ thống
# phải được đặt trên hệ thống, ví dụ như trong
# Cấu hình PAM.
#
# Ví dụ:
# AcceptedAuthenticationMethods NX-khóa riêng, hệ thống SSH
#
# Khóa này phải được sử dụng cùng với ClientConnectionMethod.
# Xem thêm khóa EnableNXClientAuthentication để bật SSL
# xác thực ứng dụng khách cho các kết nối bằng giao thức NX.
#
#AcceptedAuthenticationMethods tất cả

Bây giờ, ngay bên dưới dòng nhận xét này cho biết cài đặt mặc định:

#AcceptedAuthenticationMethods tất cả

Thêm dòng này để thay đổi cài đặt để CHỈ cho phép xác thực dựa trên khóa:

AcceptedAuthenticationMethods NX-khóa riêng

Sau đó khởi động lại máy chủ NoMachine (https://www.nomachine.com/TR11N07362):

sudo /usr/NX/bin/nxserver --khởi động lại

Bây giờ hãy thử kết nối từ xa bằng NoMachine với xác thực dựa trên mật khẩu và bạn sẽ thấy lỗi sau trong chương trình GUI:

Rất tiếc! Đàm phán phiên không thành công.Lỗi: Phương thức xác thực mật khẩu NX không được phép trên máy chủ này

Nếu bạn thấy lỗi trên, bạn đã tắt thành công thông tin đăng nhập xác thực mật khẩu! Bây giờ hãy kiểm tra xác thực dựa trên khóa của bạn để đảm bảo nó vẫn hoạt động.

Để kết nối từ bên ngoài mạng của bạn

Để kết nối với NoMachine từ bên ngoài nhà của bạn, bạn phải VPN vào mạng cục bộ của mình hoặc mở cổng chuyển tiếp qua tường lửa trong modem của bạn.

Để thực hiện chuyển tiếp cổng, hãy kết nối với modem của bạn thông qua địa chỉ IP của nó trong trình duyệt của bạn và thông qua cài đặt của bạn, ánh xạ một số cổng bên ngoài, chẳng hạn như 10000, tới IP của máy tính nội bộ của bạn và cổng có NoMachine trên đó. Những chi tiết đó đôi khi dành cho một câu hỏi và trả lời khác ...

Cổng mặc định đến máy chủ NoMachine của bạn là 4000, Tôi tin. Nhấp vào biểu tượng NoMachine ở trên cùng bên phải trong Ubuntu, chuyển đến "Hiển thị trạng thái dịch vụ" -> nhấp vào tab "Tùy chọn máy chủ" ở bên phải -> xem "Cổng" ở đó cho máy chủ NoMachine của bạn.

Xong.

Gabriel Staples avatar
lá cờ cn
@ user68186, `4000`, tôi tin thế. Nhấp vào biểu tượng NoMachine ở trên cùng bên phải trong Ubuntu, chuyển đến "Hiển thị trạng thái dịch vụ" -> nhấp vào tab "Tùy chọn máy chủ" ở bên phải -> xem "Cổng" ở đó cho máy chủ NoMachine của bạn.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.