Penjara SSH Pengguna ke Direktori Rumah di Linux

Penjara SSH Pengguna ke Direktori Rumah di Linux

Memenjarakan pengguna SSH ke direktori rumah mereka membolehkan anda (pentadbir) untuk menjalankan banyak kawalan dan keselamatan melalui akaun pengguna pada sistem Linux.

Pengguna yang dipenjara masih mempunyai akses ke direktori rumah mereka, tetapi tidak dapat melintasi seluruh sistem. Ini menyimpan segala -galanya di sistem secara peribadi dan akan menghalang apa -apa daripada diganggu oleh pengguna SSH. Ini adalah persediaan yang ideal untuk sistem yang mempunyai pelbagai pengguna dan setiap fail pengguna perlu tetap peribadi dan terpencil dari yang lain.

Dalam panduan ini, kami akan menunjukkan arahan langkah demi langkah untuk memenjarakan pengguna SSH ke direktori rumah mereka.

Dalam tutorial ini anda akan belajar:

  • Cara Jail SSH Pengguna ke Direktori Rumah
Penjara SSH Pengguna ke Direktori Rumah di Linux Keperluan Perisian dan Konvensyen Talian Perintah Linux
Kategori Keperluan, konvensyen atau versi perisian yang digunakan
Sistem Mana -mana distro Linux
Perisian Pelayan OpenSSH
Yang lain Akses istimewa ke sistem linux anda sebagai akar atau melalui sudo perintah.
Konvensyen # - Memerlukan arahan Linux yang diberikan untuk dilaksanakan dengan keistimewaan akar sama ada secara langsung sebagai pengguna root atau dengan menggunakan sudo perintah
$ - Memerlukan arahan Linux yang diberikan sebagai pengguna yang tidak layak

Pengguna Penjara ke Direktori Rumah dengan Chroot



Buka terminal dan bersiaplah untuk menaip banyak arahan, kerana proses untuk menyediakan chroot selamat cukup ditarik keluar. Anda ingin menaikkan ke akaun pengguna root atau menggunakan sudo untuk setiap arahan.

  1. Mulakan dengan membuat direktori chroot, yang akan mengandungi pelbagai nod, lib, dan shell untuk pengguna kami yang dipenjara.
    # mkdir /var /chroot 
  2. Seterusnya, mari kita salin yang penting /Dev nod ke direktori chroot, yang membolehkan pengguna penggunaan asas terminal.
    # mkdir/var/chroot/dev # cd/var/chroot/dev # mknod -m 666 null c 1 3 # mknod -m 666 tty c 5 0 # mknod -m 666 sifar c 1 5 # mknod -m 666 rawak c 1 8 


  3. Seterusnya, tetapkan kebenaran pada direktori chroot. Pengguna root perlu memiliki direktori untuk memastikan pengguna yang dipenjara tidak dapat meninggalkannya. Pengguna lain hanya boleh membaca dan melaksanakan kebenaran.
    # Chown Root: Root /Var /Chroot # Chmod 755 /Var /Chroot 
  4. Seterusnya, mari kita berikan pengguna kami yang dipenjara. Kami akan menggunakan shell bash dalam contoh ini, walaupun anda boleh menggunakan yang lain jika anda mahu.
    # mkdir/var/chroot/bin # cp/bin/bash/var/chroot/bin 
  5. Shell bash memerlukan pelbagai libs untuk berjalan, jadi mereka juga perlu disalin ke chroot direktori. Anda dapat melihat apa libs diperlukan dengan ldd Perintah:
    # ldd /bin /bash linux-vdso.Jadi.1 (0x00007ffd59492000) Libtinfo.Jadi.6 =>/lib/x86_64-linux-gnu/libtinfo.Jadi.6 (0x00007F91714CD000) libdl.Jadi.2 =>/lib/x86_64-linux-gnu/libdl.Jadi.2 (0x00007f91714c7000) libc.Jadi.6 =>/lib/x86_64-linux-gnu/libc.Jadi.6 (0x00007F91712D5000) /LIB64 /LD-LINUX-X86-64.Jadi.2 (0x00007F917163A000) 

    Salin fail tersebut ke direktori Chroot:

    # mkdir -p/var/chroot/lib/x86_64-linux-gnu/var/chroot/lib64 # cp/lib/x86_64-linux-gnu/libtinfo.Jadi.6, libdl.Jadi.2, libc.Jadi.6/var/chroot/lib/x86_64-linux-gnu # cp/lib64/ld-linux-x86-64.Jadi.2/var/chroot/lib64 


  6. Sekarang kita boleh membuat pengguna dan menetapkan kata laluan untuk akaun.
    # UserAdd Contoh # Contoh Passwd 
  7. Tambah /etc/passwd dan /etc/kumpulan fail ke dalam direktori chroot.
    # mkdir/var/chroot/etc # cp/etc/passwd, kumpulan/var/chroot/etc 
  8. Seterusnya, kita perlu melakukan penyuntingan ke fail konfigurasi SSH. Gunakan Nano atau editor teks kegemaran anda untuk membukanya.
    # sudo nano/etc/ssh/sshd_config 

    Tambahkan baris berikut ke bahagian bawah fail.

    Padankan Contoh Pengguna Chrootdirectory /Var /Chroot 
    Konfigurasikan chroot ke penjara pengguna SSH

    Simpan perubahan anda dan mulakan semula perkhidmatan SSH untuk perubahan yang akan berlaku.

    # Systemctl mulakan semula sshd 


  9. Buat direktori rumah untuk pengguna dan berikan kebenaran yang betul.
    # mkdir -p/var/chroot/home/contoh # Chown Contoh: Contoh/var/chroot/home/contoh # chmod 700/var/chroot/home/contoh 
  10. Pada ketika ini, pengguna harus dapat log masuk dan menggunakan perintah bash asli, tetapi mereka tidak akan mempunyai banyak akses. Mari memberi mereka akses kepada lebih banyak asas seperti LS, CAT, ECHO, RM, VI, TARIKH, MKDIR. Daripada menyalin secara manual ke atas semua perpustakaan bersama untuk arahan ini, anda boleh menggunakan skrip berikut untuk menyelaraskan proses.
    #!/bin/bash # Skrip ini boleh digunakan untuk mencipta persekitaran chroot sederhana # ditulis oleh linuxconfig.org # (c) 2020 linuxconfig di bawah gnu gpl v3.0+ #!/bin/bash chroot = '/var/chroot' mkdir $ chroot for i in $ (ldd $* | grep -v dinamik | cut -d "" -f 3 | sed 's/: //' | sort | uniq ) Adakah CP --Parents $ i $ chroot selesai # ARCH AMD64 jika [-F /lib64 /ld-linux-x86-64.Jadi.2]; Kemudian CP-Parents /LIB64 /LD-LINUX-X86-64.Jadi.2 /$ chroot fi # arch i386 jika [-f /lib /ld -linux.Jadi.2]; Kemudian CP --Parents /lib /ld-linux.Jadi.2 /$ chroot fi echo "Penjara chroot sudah siap. Untuk mengaksesnya melaksanakan: chroot $ chroot " 
    Salinan

    Menggunakan skrip itu, mari kita aktifkan beberapa arahan ini.

    # ./chroot.sh /bin /ls, kucing, echo, rm, vi, tarikh, mkdir 

Kami akhirnya selesai. Anda boleh ssh dengan pengguna yang anda buat untuk memastikan semuanya berfungsi dengan betul.

# ssh contoh@localhost 
Pengguna SSH dipenjara ke chroot tetapi mempunyai akses kepada arahan asas

Seperti yang anda lihat, pengguna kami mempunyai akses kepada arahan yang kami berikan dan tidak dapat mengakses seluruh sistem di luar chroot.

Kesimpulan

Dalam panduan ini, kami melihat cara memenjarakan pengguna SSH ke direktori rumah mereka di Linux. Ini adalah proses yang panjang tetapi skrip yang kami berikan anda harus menyimpan sejumlah besar kerja yang membosankan. Memenjara pengguna ke satu direktori adalah cara yang sangat baik untuk mengekalkan privasi untuk pengguna individu di pelayan bersama.

Tutorial Linux Berkaitan:

  • Perkara yang hendak dipasang di Ubuntu 20.04
  • Perkara yang perlu dilakukan setelah memasang ubuntu 20.04 Focal Fossa Linux
  • Pengenalan kepada Automasi, Alat dan Teknik Linux
  • Fail Konfigurasi Linux: 30 teratas yang paling penting
  • Cara mengeluarkan bloatware dari Samsung Android Mobile anda ..
  • Mengendalikan input pengguna dalam skrip bash
  • Bolehkah linux mendapat virus? Meneroka kelemahan Linux ..
  • Mint 20: Lebih baik daripada Ubuntu dan Microsoft Windows?
  • Muat turun linux
  • Cara Dual Boot Kali Linux dan Windows 10