GNU/Linux >> Belajar Linux >  >> Linux

Cara menyesuaikan lingkungan pengguna Linux

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.


Linux
  1. Cara Mendaftar atau Mengurutkan Semua File berdasarkan Ukuran di Linux

  2. Cara Mengatur Hak Istimewa Sudo untuk Pengguna di Linux

  3. Cara menonaktifkan login jarak jauh untuk pengguna root di mesin Linux

  1. Cara Mengubah Nama Pengguna di Linux

  2. Bagaimana cara menambahkan pengguna ke grup di Linux

  3. Cara menjalankan Elasticsearch 2.1.1 sebagai pengguna root di mesin Linux

  1. Cara Menyesuaikan Bash Prompt di Linux

  2. Bagaimana memberi pengguna hak akses root di Kali Linux

  3. Cara Mendaftar Pengguna di Linux