GNU/Linux >> Belajar Linux >  >> Linux

Cara memblokir akses internet ke program tertentu di Linux

Solusi 1:

Solusi bagi saya ternyata lurus ke depan.

  1. Buat, validasi grup baru; tambahkan pengguna yang diperlukan ke grup ini:
    • Buat:groupadd no-internet
    • Validasi:grep no-internet /etc/group
    • Tambahkan pengguna:useradd -g no-internet username

      Catatan:Jika Anda memodifikasi pengguna yang sudah ada, Anda harus menjalankan:usermod -a -G no-internet userName periksa dengan:sudo groups userName

  2. Buat skrip di jalur Anda dan membuatnya dapat dieksekusi:
    • Buat:nano /home/username/.local/bin/no-internet
    • Dapat dijalankan:chmod 755 /home/username/.local/bin/no-internet
    • Konten:#!/bin/bash
      sg no-internet "[email protected]"

  3. Tambahkan aturan iptables untuk menghentikan aktivitas jaringan untuk grup tanpa internet :
    • iptables -I OUTPUT 1 -m owner --gid-owner no-internet -j DROP

      Catatan:Jangan lupa untuk membuat perubahan permanen, sehingga akan diterapkan secara otomatis setelah reboot. Melakukannya, bergantung pada distribusi Linux Anda.


4. Periksa, misalnya di Firefox dengan menjalankan:

  • no-internet "firefox"

Jika Anda ingin membuat pengecualian dan mengizinkan program untuk mengakses jaringan lokal :

  • iptables -A OUTPUT -m owner --gid-owner no-internet -d 192.168.1.0/24 -j ACCEPT
  • iptables -A OUTPUT -m owner --gid-owner no-internet -d 127.0.0.0/8 -j ACCEPT
  • iptables -A OUTPUT -m owner --gid-owner no-internet -j DROP

CATATAN: Dalam hal pemijahan aturan akan dipertahankan. Misalnya, jika Anda menjalankan program dengan tanpa internet aturan dan program itu akan membuka jendela browser, tetap aturan akan diterapkan.

Solusi 2:

Kemungkinan yang lebih mudah:gunakan firejail . Ini menjalankan aplikasi di dalam kotak pasir. Di kotak pasir, Anda dapat mengontrol akses aplikasi ke jaringan atau folder apa pun di komputer Anda.

Untuk menjalankan aplikasi tertentu tanpa akses jaringan, lakukan hal berikut:

firejail --net=none <application>

Dalam hal ini, "Sandbox terlihat seperti komputer tanpa antarmuka jaringan apa pun." (Lihat Bagian Jaringan dalam dokumentasi)

Misalnya, firejail --net=none firefox akan memulai firefox tanpa koneksi jaringan apa pun.

Pemasangan

Lihat dokumentasi Instalasi. Anda harus menginstal dari sistem paket di distribusi Anda, atau lebih baik dapatkan LTS versi terbaru. (Misalnya, versi LTS terbaru ini, 9.56.2 , berfungsi juga di Ubuntu 16.04.)


Linux
  1. Cara men-debug program C di Linux menggunakan gdb

  2. Linux – Blokir Akses Jaringan Suatu Proses?

  3. Cara Mengaudit Akses File di Linux

  1. Cara Mengakses Sistem File Linux di Windows 10 dan WSL 2

  2. Linux – Bagaimana Membatasi Akses Internet Untuk Pengguna Tertentu Di Lan Menggunakan Iptables Di Linux?

  3. Bagaimana cara menonaktifkan akses Internet untuk program yang berjalan di Wine?

  1. Cara mengkonfigurasi antarmuka jaringan virtual di Redhat 7 Linux

  2. Bagaimana cara mengecek akses internet menggunakan skrip bash di linux?

  3. Blokir akses jaringan dari suatu proses?