Keamanan sistem menjadi perhatian utama. Sebagai sysadmin, seperti yang telah saya nyatakan sebelumnya, ini adalah perhatian utama Anda. Menambahkan pengguna ke sistem mengurangi keamanan. Tugas Anda adalah menciptakan lingkungan yang dapat digunakan tetapi aman bagi pengguna Anda. Anda memiliki aset perusahaan untuk dilindungi, sistem untuk dipelihara, dan pengguna untuk memuaskan. Seringkali ada konflik di antara ketiga aspek administrasi sistem itu, seperti yang Anda ketahui. Salah satu cara untuk memenuhi ketiganya adalah dengan menyesuaikan lingkungan pengguna Anda dengan menerapkan dan menegakkan standar perusahaan. Mencapai keseimbangan antara produktivitas pengguna dan keamanan sistem tidaklah mudah. Saya tidak dapat menulis spesifikasi untuk situasi khusus Anda, tetapi saya dapat menunjukkan tempat untuk membuat perubahan yang diperlukan agar Anda dapat melakukannya.
Artikel ini mencakup menyesuaikan lingkungan pengguna Anda menggunakan file yang ditemukan di /etc/skel
dan /etc/profile.d
direktori. Dengan instalasi sistem baru, Anda akan menemukan tiga file di bawah /etc/skel: .bash_logout
, .bash_profile
, dan .bashrc
. Saat Anda membuat akun pengguna baru di sistem, ketiga file ini disalin ke direktori home pengguna dan dimiliki oleh pengguna. Jika Anda tidak tahu, apa yang disebut titik file (yang diberi nama dengan titik sebelumnya (.) disembunyikan dari daftar file standar. Untuk melihatnya, Anda harus menggunakan -a
beralih dengan perintah ls.
-rw-r--r--. 1 root root 18 Mar 31 21:17 .bash_logout
-rw-r--r--. 1 root root 193 Mar 31 21:17 .bash_profile
-rw-r--r--. 1 root root 231 Mar 31 21:17 .bashrc
Seperti yang Anda lihat, file-file ini dimiliki oleh root dan hanya dapat diedit atau diubah oleh pengguna root.
.bash_profile
.bash_profile
file adalah yang paling penting dari tiga file yang terdaftar. Ini paling penting karena ini adalah satu-satunya file "wajib" dalam daftar. Itu dijalankan setiap kali pengguna masuk ke sistem, ia meluncurkan .bashrc
file, dan mendefinisikan dan mengekspor variabel PATH. Pengaturan defaultnya sederhana.
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/.local/bin:$HOME/bin
export PATH
.bash_profile
juga dapat digunakan untuk mendefinisikan prompt shell khusus, menentukan editor pilihan, atau apa pun yang ingin Anda tempatkan ke dalam file untuk pengguna.
[ Anda mungkin juga menyukai: Kiat dan trik variabel lingkungan Linux ]
.bashrc
Isi file .bashrc, secara default, hanya memanggil /etc/bashrc
mengajukan. /etc/bashrc
file terdiri dari pengaturan yang dapat dikonfigurasi untuk semua pengguna.
# .bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# Uncomment the following line if you don't like systemctl's auto-paging feature:
# export SYSTEMD_PAGER=
# User specific aliases and functions
Anda juga dapat memanggil file lain yang dikonfigurasi untuk grup pengguna tertentu. Misalnya, jika pengguna adalah anggota grup keuangan, Anda dapat memanggil file untuk menyiapkan kumpulan variabel tertentu untuk semua pengguna di grup keuangan.
/etc/bashrc dan /etc/profile
Daftar untuk /etc/bashrc
terlalu panjang untuk tempat ini, tetapi Anda dapat melihatnya dan melihat apa fungsinya. /etc/bashrc
file mengacu pada /etc/profile
file untuk lebih banyak variabel dan pengaturan lingkungan. Kedua file datang dengan peringatan berikut.
# It's NOT a good idea to change this file unless you know what you
# are doing. It's much better to create a custom.sh shell script in
# /etc/profile.d/ to make custom changes to your environment, as this
# will prevent the need for merging in future updates.
Jadi, Anda tahu, menyesuaikan lingkungan pengguna tidak sesederhana yang Anda kira.
/etc/profile.d
Jika Anda mencantumkan file di /etc/profile.d
, Anda akan melihat yang berikut:
-rw-r--r--. 1 root root 771 Mar 31 21:50 256term.csh
-rw-r--r--. 1 root root 841 Mar 31 21:50 256term.sh
-rw-r--r--. 1 root root 196 Mar 24 2017 colorgrep.csh
-rw-r--r--. 1 root root 201 Mar 24 2017 colorgrep.sh
-rw-r--r--. 1 root root 1741 Aug 6 2019 colorls.csh
-rw-r--r--. 1 root root 1606 Aug 6 2019 colorls.sh
-rw-r--r--. 1 root root 80 Mar 31 23:29 csh.local
-rw-r--r--. 1 root root 1706 Mar 31 21:50 lang.csh
-rw-r--r--. 1 root root 2703 Mar 31 21:50 lang.sh
-rw-r--r--. 1 root root 123 Jul 30 2015 less.csh
-rw-r--r--. 1 root root 121 Jul 30 2015 less.sh
-rw-r--r--. 1 root root 81 Mar 31 23:29 sh.local
-rw-r--r--. 1 root root 164 Jan 27 2014 which2.csh
-rw-r--r--. 1 root root 169 Jan 27 2014 which2.sh
Anda dapat melihat bahwa banyak file untuk digunakan di shell C. File terpenting untuk fokus artikel ini adalah sh.local
. Isi sh.local
tercantum di bawah ini.
#Add any required envvar overrides to this file, it is sourced from /etc/profile
Seperti yang Anda lihat dari pesan, jika Anda ingin mengganti entri envvar (variabel lingkungan) yang dikonfigurasi saat ini dengan standar perusahaan, buat entri dalam file ini untuk melakukannya.
Peringatan
Saat pengguna mempelajari lebih lanjut tentang lingkungan mereka dan hal-hal Google, mereka akan menyesuaikannya sendiri—seringkali merugikan mereka. Anda harus mencapai keseimbangan antara menjadi sysadmin laissez-faire dan sysadmin diktator yang kejam. Anda ingin pengguna menjadi produktif tetapi memiliki kontrol terbatas atas lingkungan mereka sendiri. Saran saya untuk membuat kedua belah pihak senang adalah dengan mengatur semua parameter lingkungan pengguna standar perusahaan di /etc/bashrc
dan di /etc/profile.d/sh.local
yang tidak ingin Anda edit atau ubah.
Sadarilah bahwa /home/user/.bash_profile
, .bashrc
, dan .bash_logout
adalah file yang dapat diedit pengguna. Satu-satunya cara untuk mengatasinya adalah dengan mengubah izin pada file tersebut dengan skrip pengguna root setelah Anda membuat akun. Dengan kata lain, jalankan skrip setelah Anda membuat akun pengguna untuk mengubah izin pada /home/user/.bash*
file ke root: rw-r--r--
. Pengguna tidak akan dapat mengubah file.
Jika Anda ingin mengunci lingkungan dengan mengubah .bash*
file ke root kepemilikan, Anda dapat membuat file baru di /etc/skel
seperti .user
file yang dapat diedit oleh pengguna dan dimasukkan ke dalam .bash_profile
berkas.
[ Ingin mempelajari lebih lanjut tentang keamanan? Lihat daftar periksa keamanan dan kepatuhan TI. ]
Menutup
Menyesuaikan lingkungan pengguna dapat meningkatkan keamanan sistem dan menstandarkan apa yang dilihat pengguna dan bagaimana mereka berinteraksi dengan sistem. Memberikan akses shell ke sistem produksi memiliki implikasinya sendiri, tetapi Anda harus menyediakan sumber daya bagi pengguna Anda untuk memaksimalkan produktivitas mereka dan memaksimalkan keamanan sistem. Jika Anda menemukan keseimbangan yang sempurna, silakan tuliskan ke dalam artikel untuk Aktifkan Sysadmin. Dalam pengalaman saya sendiri, setiap pengguna merasa bahwa mereka adalah pengecualian untuk standar perusahaan dan, segera, Anda memiliki banyak pengecualian dan tidak ada standar perusahaan sama sekali.