Vô hiệu hóa mạng cho người dùng cụ thể


16

Tôi đang làm việc trên Ubuntu / Mint distro có nghĩa là được chạy Live. Có nhiều tài khoản thuộc ba nhóm chung: Quản trị viên, Internet và Bảo mật.

  • quản trị viên rõ ràng là có thẩm quyền để làm bất cứ điều gì.
  • Tài khoản Internet là để sử dụng Internet.

Các tài khoản khác là tài khoản Bảo mật . Trong mọi trường hợp, không được phép kết nối Internet, máy in, Bluetooth, thiết bị WiFi, v.v.

Những gì tôi muốn làm là xóa trình điều khiển mạng khỏi kernel, nhưng điều đó sẽ vô hiệu hóa các tài khoản cần Internet.

Cách thấp nhất để vô hiệu hóa Internet cho các tài khoản bảo mật này là gì? Tôi đang tìm kiếm các giải pháp không thể .

Câu trả lời:


14

Bạn có thể làm điều đó với iptables.

Trên thiết bị đầu cuối thêm quy tắc vào iptables

sudo iptables -A OUTPUT -p all -m owner --uid-owner username -j DROP

trong đó tên người dùng là người dùng mà bạn muốn tắt kết nối Internet. Lưu file và thoát.

Điều này sẽ thêm một quy tắc để iptablesnói rằng mọi gói gửi đi được tạo bởi người dùng đã chỉ định sẽ tự động bị hủy theo iptables.

Nếu bạn muốn làm tương tự cho một nhóm hoàn chỉnh, tôi sẽ thay vì --uid usernamebạn sử dụng --gid-owner groupname, điều đó sẽ có tác dụng tương tự cho một nhóm người dùng hoàn chỉnh.

Vì vậy, để ngăn chặn nhóm Bảo mật truy cập Internet, lệnh sẽ trông giống như thế này

sudo iptables -A OUTPUT -p all -m owner --gid-owner security -j DROP

Để làm cho quy tắc vĩnh viễn, bạn có thể tạo một tập lệnh /etc/network/if-up.d/, thêm các dòng cần thiết vào nó và làm cho nó có thể thực thi được.


Là một tùy chọn sử dụng iptables-saveđể lưu các quy tắc hiện tại của bạn và khôi phục chúng khi khởi động.

Lưu các iptablesquy tắc hiện tại

sudo iptables-save > /etc/iptables_rules

Mở /etc/rc.localbằng trình soạn thảo văn bản yêu thích của bạn và ở cuối tệp thêm

/sbin/iptables-restore < /etc/iptables_rules

Điều đó sẽ khôi phục các quy tắc đã lưu trên mỗi khởi động.

Để biết thêm thông tin, hãy truy cập trang [ iptablesmanpage ] để biết thêm thông tin về một số iptablestùy chọn.


Cảm ơn. Điều đó đã làm việc cho Internet, nhưng người dùng này vẫn có thể sử dụng bluetooth. Tôi đang thử nghiệm không dây nhưng chưa được xác nhận. Tôi dường như có tài khoản bị kẹt trên DENY. Tôi đã thử sudo iptables -A OUTPUT -p all -m owner --uid-owner internet -j ACCEPTnhưng nó không bật lại để thử nghiệm.
bambay

Ok, iptables dường như là một bộ lọc cho một cái gì đó thấp hơn thực sự tạo ra kết nối mạng. Ứng dụng làm cho kết nối có thể là gì? Tôi có thể vô hiệu hóa nó? Nếu vậy, vô hiệu hóa dựa trên người kiểm soát bàn điều khiển. Bản phân phối trực tiếp này có nghĩa là cho nhiều người dùng, nhưng không có nghĩa là nhiều hơn một bảng điều khiển. Vì vậy, nếu tôi có thể theo dõi ai đang sử dụng bảng điều khiển, tôi nghĩ rằng tôi có thể vô hiệu hóa ứng dụng mạng này dựa trên quyền của người dùng đó.
bambay

Chà, đó sẽ là trình quản lý mạng của bạn trong Ubuntu network-manager, nếu bạn xóa người dùng khỏi nhóm networkvà vô hiệu hóa kết nối trong network-managerhoặc công cụ tương tự khác, anh ta sẽ không thể lấy lại được, trong một người dùng khác là một phần của nhóm mạng sẽ. Đây là một cấp độ suy nghĩ khác vì nó vô hiệu hóa kết nối mà nó tự.
Bruno Pereira

Sau một chút về Google, tôi thấy bạn có thể xóa trình quản lý mạng và thiết lập mọi thứ theo cách truyền thống bằng cách chỉnh sửa / etc / mạng / giao diện . Đây dường như không phải là ứng dụng mạng mà tôi đang tìm cách vô hiệu hóa. Tôi đang nhìn thấp hơn một chút. Làm thế nào thấp chúng ta có thể đi trước khi chúng ta đến trình điều khiển?
bambfox

Tôi đã có thể loại bỏ và thanh lọc người quản lý mạng. Tại thời điểm đó mạng đã bị vô hiệu hóa. Nhưng, tôi đã có thể mang mọi thứ trở lại với điều này: sudo /etc/init.d/networkingsau khi chỉnh sửa /etc/network/interfaces Vậy có /etc/init.d/networkingthấp như bạn không?
bambay

2

Giải pháp của Bruno là tốt: Tôi nghĩ có lẽ là giải pháp khép kín tốt nhất.

Một tùy chọn khác bạn có thể nghĩ đến là thiết lập tường lửa / proxy trên một máy riêng biệt, làm cổng vào internet, chỉ cho phép các kết nối cung cấp xác thực theo người dùng. Bạn có thể sử dụng cả hai cùng nhau để bảo vệ thêm.

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.