Penjara SSH Pengguna ke Direktori Rumah di Linux
- 4373
- 1072
- Noah Torp
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
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.
- Mulakan dengan membuat direktori chroot, yang akan mengandungi pelbagai nod, lib, dan shell untuk pengguna kami yang dipenjara.
# mkdir /var /chroot
- 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
- 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
- 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
- Shell bash memerlukan pelbagai
libs
untuk berjalan, jadi mereka juga perlu disalin kechroot
direktori. Anda dapat melihat apalibs
diperlukan denganldd
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
- Sekarang kita boleh membuat pengguna dan menetapkan kata laluan untuk akaun.
# UserAdd Contoh # Contoh Passwd
- Tambah
/etc/passwd
dan/etc/kumpulan
fail ke dalam direktori chroot.# mkdir/var/chroot/etc # cp/etc/passwd, kumpulan/var/chroot/etc
- 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 SSHSimpan perubahan anda dan mulakan semula perkhidmatan SSH untuk perubahan yang akan berlaku.
# Systemctl mulakan semula sshd
- 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
- 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.
Salinan#!/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 "
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@localhostPengguna 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