Chào buổi tối,
Tôi hiện đang cố gắng tìm hiểu sâu hơn một chút về linux mà tôi đã quen thuộc.
Hãy đi thẳng vào vấn đề của tôi:
Đầu tiên, hãy nói về thiết lập của tôi.
Tôi có 3 máy chủ, mỗi máy chủ có một IP công khai.
Mỗi máy chủ là một phần của VLAN.
Máy chủ #1 (vlan 10.0.0.2) không được bảo vệ bởi tường lửa.
Máy chủ #2 (vlan 10.0.0.3) và Máy chủ #3 (vlan 10.0.0.4) hoàn toàn bị chặn khỏi internet và chỉ có thể được truy cập từ vlan.
Máy chủ #2 chạy bộ chứa KeyCloak. Tuy nhiên, điều này không liên quan đến vấn đề.
Máy chủ số 3 sẽ đóng vai trò là máy chủ git của tôi.
Thông thường tôi sẽ chỉ tạo một git
người dùng, liên kết các ủy quyền_keys
tập tin với một trong những tập tin của tôi GitLab
thùng đựng hàng. Mỗi khóa công khai sẽ được bắt đầu bằng một lệnh, lệnh này sau đó sẽ chuyển kết nối đến ssh deamon bên trong vùng chứa.
Nhưng vì Máy chủ số 3 không thể truy cập công khai, tôi cần chấp nhận kết nối ssh đến trên Máy chủ số 1.
tôi đã tạo một git
người dùng và bắt đầu suy nghĩ làm thế nào tôi có thể khắc phục vấn đề này.
Tôi nghĩ về hai cách tôi có thể xử lý nó.
- Cho phép
git
người dùng được truy cập mà không cần mật khẩu và mở kết nối tới [email protected]
(cái này có hoạt động không? Tác nhân ssh của máy khách có hoạt động trong trường hợp này không? Kẻ tấn công có thể thoát khỏi kết nối ssh nội bộ và thực hiện công việc trên Máy chủ #1 không?)
- Máy chủ #3 kết nối thường xuyên với Máy chủ #1 và cập nhật
ủy quyền_keys
tệp (sau đó tôi sẽ phải viết tập lệnh thứ hai tại chỉ huy
vị trí, sau đó sẽ mở kết nối đến Máy chủ #3
. Điều này sẽ chậm hơn, vì người dùng phải đợi cho đến khi Máy chủ #3 đồng bộ hóa với Máy chủ #1)