Máy chủ VPN (bãi biển) không có root?


7

Làm cách nào tôi có thể thiết lập máy chủ VPN trên máy chủ lưu trữ mà tôi không có root?

Tôi có các ràng buộc sau:

  • Trên máy chủ A, tôi không có root. Tôi chỉ có thể hoạt động trong thư mục nhà của tôi. Đặc biệt, tôi cũng không thể tạo ra tuncác thiết bị.
  • Trên máy khách B, tôi có toàn quyền kiểm soát và có thể cài đặt những gì tôi muốn.
  • Chuyển tiếp cổng SSH (-L / -R) và SOCKS proxy (-D) hoạt động, nhưng không phải trong trường hợp của tôi. Phần mềm trên máy khách của tôi sử dụng nhiều cổng khác nhau nên tôi có xu hướng sử dụng SOCKS, nhưng nó cũng chạy ở cấp độ kernel, vì vậy tôi không thể thuyết phục được nó tsockssử dụng proxy. Một điều sẽ hoạt động bằng cách chạy phần mềm máy khách của tôi trong máy ảo trên B và hoàn thiện toàn bộ VM - nhưng tôi thực sự không muốn đi theo con đường đó.
  • Tôi không cần các cổng riêng tư, vì vậy không phải root trên A sẽ ổn.
  • Nó không phải là một VPN "thực sự", nhưng một cái gì đó tương tự về tinh thần là đủ. Quá trình của tôi trên B sẽ có thể giao tiếp với các quy trình trên A (và các thiết bị được kết nối) như thể chúng ở trên một máy mà không cần viết lại chúng.

Tôi không tin có một cách thanh lịch để làm điều này - cách chính xác là chỉ cần hỏi quản trị viên của A hoặc cắm B vào cùng một mạng - nhưng bây giờ tôi chỉ tò mò liệu điều này có thể được thực hiện như một bằng chứng không của khái niệm.

Câu trả lời:


7

Chà, quyền truy cập "Tôi không có root" này trên Máy chủ A có thể là một vấn đề để tạo ra một giải pháp VPN tốt kể từ:

  • đường hầm ip-ip yêu cầu thao tác giao diện;
  • pptp cũng yêu cầu quyền root để tạo giao diện;
  • OpenVPN thậm chí có thể chạy như một người dùng không có đặc quyền, nhưng một số thủ thuật cần được thực hiện như cho phép sudo vào iplệnh để cho phép tạo tungiao diện;
  • strongSwan với các đặc quyền giảm yêu cầu CAP_NET_ADMINhoặc CAP_NET_RAWđể hoạt động và chạy IKE daemon khi người dùng không phải root phá vỡ hỗ trợ cho tập lệnh cập nhật iptables.

Những gì còn lại với bạn, bạn của tôi: Dựa vào proxy vớ vớ SSH . Trên máy cục bộ của bạn và khi root, hãy chạy:

ssh -C2qTnN -D 8080 username@serverA

Phương tiện : Nén, chỉ SSH2, Yên tĩnh, Buộc cấp phát giả, Chuyển hướng stdin từ / dev / null và Đặt ứng dụng khách ssh vào chế độ "chính" để chia sẻ kết nối.

Bây giờ, tất cả những gì bạn phải làm là chạy ứng dụng của bạn. Nếu nó có hỗ trợ SOCKSv5 riêng như Firefox, thì đó chỉ là vấn đề cấu hình "localhost: 8080" làm máy chủ proxy.

Nếu ứng dụng của bạn không hỗ trợ proxy này natively, chạy nó với proxychains . Chỉ cần cài đặt trên máy khách của bạn và bạn tốt để đi.

Thật không may, giải pháp duy nhất bạn không muốn áp dụng dường như là giải pháp duy nhất.

Liên kết:

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.