CentOS 7 : Konfigurasi Dasar
Rumahit.ID - Hallo, dalam seri CentOS 7 kali ini kita akan membahas Konfigurasi Dasar atau Basic Configuration pada CentOS 7.
Pada sesi kali ini kita akan mempelajari konfigurasi dasar pada CentOS 7 yang terdiri dari :
1. Menambahkan user baru
2. Manajemen Firewall & SELinux
3. Konfigurasi Network
4. Manajemen Services
5. Update System
6. Menambahkan Repositori
7. Konfigurasi vim
8. Konfigurasi sudo
9. Konfigurasi cron
Untuk poin 1 sampai 3 kami sudah buatkan materinya secara terpisah pada seri CentOS 7 sebelumnya. Silahkan klik tautan dibawah untuk membuka materi sebelumnya :
1. Manajemen Services CentOS 7
A. Untuk mengetahui service yang sedang berjalan kita bisa menggunakan systemctl -t service . Perintah tersebut digunakan untuk menampilkan daftar service yang sedang berjalan atau Running .
# menampilkan daftar layanan yang sedang berjalan
[root@rumahit ~]# systemctl -t service
UNIT LOAD ACTIVE SUB DESCRIPTION
auditd.service loaded active running Security Auditing Service
avahi-daemon.service loaded active running Avahi mDNS/DNS-SD Stack
crond.service loaded active running Command Scheduler
dbus.service loaded active running D-Bus System Message Bus
getty@tty1.service loaded active running Getty on tty1
...
...
...
LOAD = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB = The low-level unit activation state, values depend on unit type.
39 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use 'systemctl list-unit-files'.
[root@rumahit ~]# systemctl -t service
UNIT LOAD ACTIVE SUB DESCRIPTION
auditd.service loaded active running Security Auditing Service
avahi-daemon.service loaded active running Avahi mDNS/DNS-SD Stack
crond.service loaded active running Command Scheduler
dbus.service loaded active running D-Bus System Message Bus
getty@tty1.service loaded active running Getty on tty1
...
...
...
LOAD = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB = The low-level unit activation state, values depend on unit type.
39 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use 'systemctl list-unit-files'.
B. Untuk melihat semua service menggunakan perintah systemctl list-unit-files -t service .
# Menampilkan daftar semua layanan
[root@rumahit ~]# systemctl list-unit-files -t service
UNIT FILE STATE
auditd.service enabled
autovt@.service disabled
avahi-daemon.service enabled
blk-availability.service disabled
brandbot.service static
...
...
...
systemd-user-sessions.service static
systemd-vconsole-setup.service static
teamd@.service static
tuned.service enabled
wpa_supplicant.service disabled
125 unit files listed.
[root@rumahit ~]# systemctl list-unit-files -t service
UNIT FILE STATE
auditd.service enabled
autovt@.service disabled
avahi-daemon.service enabled
blk-availability.service disabled
brandbot.service static
...
...
...
systemd-user-sessions.service static
systemd-vconsole-setup.service static
teamd@.service static
tuned.service enabled
wpa_supplicant.service disabled
125 unit files listed.
C. Menjalankan, menghentikan dan mengetahui status service
#Mengetahui status service mysql
[root@rumahit ~]# systemctl status mysql
#Menghidupkan service mysql
[root@rumahit ~]# systemctl start mysql
#Menghentikan service mysql
[root@rumahit ~]# systemctl stop mysql
#Menonaktifkan service mysql
[root@rumahit ~]# systemctl disable mysql
[root@rumahit ~]# systemctl status mysql
#Menghidupkan service mysql
[root@rumahit ~]# systemctl start mysql
#Menghentikan service mysql
[root@rumahit ~]# systemctl stop mysql
#Menonaktifkan service mysql
[root@rumahit ~]# systemctl disable mysql
D. Mengaktifkan dan menonaktifkan System V init.
Distribusi Linux yang mengimplementasikan skema SysV dapat berada di salah satu dari banyak keadaan berbeda di mana sejumlah proses yang telah ditentukan dapat berjalan. Status ini disebut runlevel dan untuk mencapai runlevel tertentu berarti sistem berada pada tahap operasional tertentu.
[root@rumahit ~]# chkconfig --list
Note: This output shows SysV services only and does not include native
systemd services. SysV configuration data might be overridden by native
systemd configuration.
If you want to list systemd services use 'systemctl list-unit-files'.
To see services enabled on particular target use
'systemctl list-dependencies [target]'.
iprdump 0:off 1:off 2:on 3:on 4:on 5:on 6:off
iprinit 0:off 1:off 2:on 3:on 4:on 5:on 6:off
iprupdate 0:off 1:off 2:on 3:on 4:on 5:on 6:off
netconsole 0:off 1:off 2:off 3:off 4:off 5:off 6:off
network 0:off 1:off 2:on 3:on 4:on 5:on 6:off
# Contoh : menonaktifkan fitur auto-start service untuk netconsole
[root@rumahit ~]# chkconfig netconsole off
Note: This output shows SysV services only and does not include native
systemd services. SysV configuration data might be overridden by native
systemd configuration.
If you want to list systemd services use 'systemctl list-unit-files'.
To see services enabled on particular target use
'systemctl list-dependencies [target]'.
iprdump 0:off 1:off 2:on 3:on 4:on 5:on 6:off
iprinit 0:off 1:off 2:on 3:on 4:on 5:on 6:off
iprupdate 0:off 1:off 2:on 3:on 4:on 5:on 6:off
netconsole 0:off 1:off 2:off 3:off 4:off 5:off 6:off
network 0:off 1:off 2:on 3:on 4:on 5:on 6:off
# Contoh : menonaktifkan fitur auto-start service untuk netconsole
[root@rumahit ~]# chkconfig netconsole off
2. Updating System CentOS 7
Setelah melalukan instalasi CentOS langkah selanjutnya adalah melakukan update untuk memungkinkan mendapatkan beberapa paket terbaru. Jika pada linux distro debian menggunakan perintah apt untuk manajer paketnya, maka pada centos 7 menggunakan perintah yum. Yellowdog Updater, Modified atau disingkat yum merupakan salah satu manajemen paket open-source berbasis konsol/perintah teks di lingkungan sistem operasi Linux yang menggunakan RPM Package Manager. Meski yum merupakan aplikasi berbasis konsol, sejumlah pihak sudah menyediakan perangkat berbasis grafik yang mendukung fungsionalitas yum.
[root@rumahit ~]# yum -y update
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.iij.ad.jp
* extras: ftp.iij.ad.jp
* updates: ftp.iij.ad.jp
Resolving Dependencies
--> Running transaction check
---> Package NetworkManager.x86_64 1:0.9.9.1-13.git20140326.4dba720.el7 will be updated
---> Package NetworkManager.x86_64 1:0.9.9.1-23.git20140326.4dba720.el7_0 will be an update
...
...
...
--> Finished Dependency Resolution
Dependencies Resolved
= == == == == == == == == == == == == == == == == == == == == == == == == == == == == ==
Package Arch Version Repository Size
= == == == == == == == == == == == == == == == == == == == == == == == == == == == == ==
Installing:
kernel x86_64 3.10.0-123.4.2.el7 updates 29 M
Updating:
NetworkManager x86_64 1:0.9.9.1-23.git20140326... updates 1.4 M
NetworkManager-glib x86_64 1:0.9.9.1-23.git20140326... updates 369 k
NetworkManager-tui x86_64 1:0.9.9.1-23.git20140326... updates 190 k
gnutls x86_64 3.1.18-9.el7_0 updates 609 k
json-c x86_64 0.11-4.el7_0 updates 31 k
kernel-tools x86_64 3.10.0-123.4.2.el7 updates 669 k
kernel-tools-libs x86_64 3.10.0-123.4.2.el7 updates 609 k
kexec-tools x86_64 2.0.4-32.el7.centos.1 updates 320 k
libtasn1 x86_64 3.3-5.el7_0 updates 316 k
mariadb-libs x86_64 1:5.5.37-1.el7_0 updates 752 k
microcode_ctl x86_64 2:2.1-7.1.el7_0.1 updates 488 k
openssl x86_64 1:1.0.1e-34.el7_0.3 updates 705 k
openssl-libs x86_64 1:1.0.1e-34.el7_0.3 updates 939 k
selinux-policy noarch 3.12.1-153.el7_0.10 updates 340 k
selinux-policy-targeted noarch 3.12.1-153.el7_0.10 updates 3.8 M
tuned noarch 2.3.0-11.el7_0.3 updates 145 k
tzdata noarch 2014e-1.el7_0 updates 433 k
Transaction Summary
= == == == == == == == == == == == == == == == == == == == == == == == == == == == == ==
Install 1 Package
Upgrade 17 Packages
Total download size: 41 M
...
...
...
Verifying : kernel-tools-libs-3.10.0-123.el7.x86_64 34/35
Verifying : 1:NetworkManager-tui-0.9.9.1-13.git20140326.4dba720.el7.x86_64 35/35
Installed:
kernel.x86_64 0:3.10.0-123.4.2.el7
Updated:
NetworkManager.x86_64 1:0.9.9.1-23.git20140326.4dba720.el7_0 NetworkManager-glib.x86_64 1:0.9.9.1-2
NetworkManager-tui.x86_64 1:0.9.9.1-23.git20140326.4dba720.el7_0 gnutls.x86_64 0:3.1.18-9.el7_0
json-c.x86_64 0:0.11-4.el7_0 kernel-tools.x86_64 0:3.10.0-123.4.2.e
kernel-tools-libs.x86_64 0:3.10.0-123.4.2.el7 kexec-tools.x86_64 0:2.0.4-32.el7.cent
libtasn1.x86_64 0:3.3-5.el7_0 mariadb-libs.x86_64 1:5.5.37-1.el7_0
microcode_ctl.x86_64 2:2.1-7.1.el7_0.1 openssl.x86_64 1:1.0.1e-34.el7_0.3
openssl-libs.x86_64 1:1.0.1e-34.el7_0.3 selinux-policy.noarch 0:3.12.1-153.el7
selinux-policy-targeted.noarch 0:3.12.1-153.el7_0.10 tuned.noarch 0:2.3.0-11.el7_0.3
tzdata.noarch 0:2014e-1.el7_0
Complete!
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.iij.ad.jp
* extras: ftp.iij.ad.jp
* updates: ftp.iij.ad.jp
Resolving Dependencies
--> Running transaction check
---> Package NetworkManager.x86_64 1:0.9.9.1-13.git20140326.4dba720.el7 will be updated
---> Package NetworkManager.x86_64 1:0.9.9.1-23.git20140326.4dba720.el7_0 will be an update
...
...
...
--> Finished Dependency Resolution
Dependencies Resolved
= == == == == == == == == == == == == == == == == == == == == == == == == == == == == ==
Package Arch Version Repository Size
= == == == == == == == == == == == == == == == == == == == == == == == == == == == == ==
Installing:
kernel x86_64 3.10.0-123.4.2.el7 updates 29 M
Updating:
NetworkManager x86_64 1:0.9.9.1-23.git20140326... updates 1.4 M
NetworkManager-glib x86_64 1:0.9.9.1-23.git20140326... updates 369 k
NetworkManager-tui x86_64 1:0.9.9.1-23.git20140326... updates 190 k
gnutls x86_64 3.1.18-9.el7_0 updates 609 k
json-c x86_64 0.11-4.el7_0 updates 31 k
kernel-tools x86_64 3.10.0-123.4.2.el7 updates 669 k
kernel-tools-libs x86_64 3.10.0-123.4.2.el7 updates 609 k
kexec-tools x86_64 2.0.4-32.el7.centos.1 updates 320 k
libtasn1 x86_64 3.3-5.el7_0 updates 316 k
mariadb-libs x86_64 1:5.5.37-1.el7_0 updates 752 k
microcode_ctl x86_64 2:2.1-7.1.el7_0.1 updates 488 k
openssl x86_64 1:1.0.1e-34.el7_0.3 updates 705 k
openssl-libs x86_64 1:1.0.1e-34.el7_0.3 updates 939 k
selinux-policy noarch 3.12.1-153.el7_0.10 updates 340 k
selinux-policy-targeted noarch 3.12.1-153.el7_0.10 updates 3.8 M
tuned noarch 2.3.0-11.el7_0.3 updates 145 k
tzdata noarch 2014e-1.el7_0 updates 433 k
Transaction Summary
= == == == == == == == == == == == == == == == == == == == == == == == == == == == == ==
Install 1 Package
Upgrade 17 Packages
Total download size: 41 M
...
...
...
Verifying : kernel-tools-libs-3.10.0-123.el7.x86_64 34/35
Verifying : 1:NetworkManager-tui-0.9.9.1-13.git20140326.4dba720.el7.x86_64 35/35
Installed:
kernel.x86_64 0:3.10.0-123.4.2.el7
Updated:
NetworkManager.x86_64 1:0.9.9.1-23.git20140326.4dba720.el7_0 NetworkManager-glib.x86_64 1:0.9.9.1-2
NetworkManager-tui.x86_64 1:0.9.9.1-23.git20140326.4dba720.el7_0 gnutls.x86_64 0:3.1.18-9.el7_0
json-c.x86_64 0:0.11-4.el7_0 kernel-tools.x86_64 0:3.10.0-123.4.2.e
kernel-tools-libs.x86_64 0:3.10.0-123.4.2.el7 kexec-tools.x86_64 0:2.0.4-32.el7.cent
libtasn1.x86_64 0:3.3-5.el7_0 mariadb-libs.x86_64 1:5.5.37-1.el7_0
microcode_ctl.x86_64 2:2.1-7.1.el7_0.1 openssl.x86_64 1:1.0.1e-34.el7_0.3
openssl-libs.x86_64 1:1.0.1e-34.el7_0.3 selinux-policy.noarch 0:3.12.1-153.el7
selinux-policy-targeted.noarch 0:3.12.1-153.el7_0.10 tuned.noarch 0:2.3.0-11.el7_0.3
tzdata.noarch 0:2014e-1.el7_0
Complete!
3. Menambahkan Repositori CentOS 7
Ada beberapa repositori eksternal yang bisa kita tambahkan untuk paket yum. Yaitu :A. Menginstal Plugin Priority
[root@rumahit ~]# yum -y install yum-plugin-priorities
# set [priority=1] untuk repositori resmi
[root@rumahit ~]# sed -i -e "s/\]$/\]\npriority=1/g" /etc/yum.repos.d/CentOS-Base.repo
# set [priority=1] untuk repositori resmi
[root@rumahit ~]# sed -i -e "s/\]$/\]\npriority=1/g" /etc/yum.repos.d/CentOS-Base.repo
B. Menginstal EPEL Repository
Extra Packages for Enterprise Linux (atau EPEL) adalah Grup Minat Khusus Fedora yang membuat, memelihara, dan mengelola serangkaian paket tambahan berkualitas tinggi untuk Enterprise Linux, termasuk, tetapi tidak terbatas pada, Red Hat Enterprise Linux (RHEL), CentOS dan Linux Ilmiah (SL), Oracle Linux (OL).
Paket EPEL biasanya didasarkan pada mitra Fedora mereka dan tidak akan pernah bertentangan dengan atau mengganti paket dalam distribusi Enterprise Linux dasar. EPEL menggunakan banyak infrastruktur yang sama dengan Fedora, termasuk sistem pembangunan, instance bugzilla, manajer pembaruan, manajer cermin, dan banyak lagi.
[root@rumahit ~]# yum -y install epel-release
# set [priority=5]
[root@rumahit ~]# sed -i -e "s/\]$/\]\npriority=5/g" /etc/yum.repos.d/epel.repo
# change to [enabled=0] dan gunakan hanya saat dibutuhkan
[root@rumahit ~]# sed -i -e "s/enabled=1/enabled=0/g" /etc/yum.repos.d/epel.repo
# if [enabled=0], input a command to use the repository
[root@rumahit ~]# yum --enablerepo=epel install [Package]
# set [priority=5]
[root@rumahit ~]# sed -i -e "s/\]$/\]\npriority=5/g" /etc/yum.repos.d/epel.repo
# change to [enabled=0] dan gunakan hanya saat dibutuhkan
[root@rumahit ~]# sed -i -e "s/enabled=1/enabled=0/g" /etc/yum.repos.d/epel.repo
# if [enabled=0], input a command to use the repository
[root@rumahit ~]# yum --enablerepo=epel install [Package]
C. Menginstal CentOS SCLo Software collections Repository.
[root@rumahit ~]# yum -y install centos-release-scl-rh centos-release-scl
# set [priority=10]
[root@rumahit ~]# sed -i -e "s/\]$/\]\npriority=10/g" /etc/yum.repos.d/CentOS-SCLo-scl.repo
[root@rumahit ~]# sed -i -e "s/\]$/\]\npriority=10/g" /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo
# ubah ke [enabled=0] dan gunakan hanya saat dibutuhkan
[root@rumahit ~]# sed -i -e "s/enabled=1/enabled=0/g" /etc/yum.repos.d/CentOS-SCLo-scl.repo
[root@rumahit ~]# sed -i -e "s/enabled=1/enabled=0/g" /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo
# if [enabled=0], input a command to use the repository
[root@rumahit ~]# yum --enablerepo=centos-sclo-rh install [Package]
[root@rumahit ~]# yum --enablerepo=centos-sclo-sclo install [Package]
# set [priority=10]
[root@rumahit ~]# sed -i -e "s/\]$/\]\npriority=10/g" /etc/yum.repos.d/CentOS-SCLo-scl.repo
[root@rumahit ~]# sed -i -e "s/\]$/\]\npriority=10/g" /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo
# ubah ke [enabled=0] dan gunakan hanya saat dibutuhkan
[root@rumahit ~]# sed -i -e "s/enabled=1/enabled=0/g" /etc/yum.repos.d/CentOS-SCLo-scl.repo
[root@rumahit ~]# sed -i -e "s/enabled=1/enabled=0/g" /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo
# if [enabled=0], input a command to use the repository
[root@rumahit ~]# yum --enablerepo=centos-sclo-rh install [Package]
[root@rumahit ~]# yum --enablerepo=centos-sclo-sclo install [Package]
D. Menambahkan repositori Remi's RPM Repository
[root@rumahit ~]# yum -y install http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
# set [priority=10]
[root@rumahit ~]# sed -i -e "s/\]$/\]\npriority=10/g" /etc/yum.repos.d/remi-safe.repo
# ubah ke [enabled=0] dan gunakan hanya saat dibutuhkan
[root@rumahit ~]# sed -i -e "s/enabled=1/enabled=0/g" /etc/yum.repos.d/remi-safe.repo
# if [enabled=0], input a command to use the repository
[root@rumahit ~]# yum --enablerepo=remi-safe install [Package]
# set [priority=10]
[root@rumahit ~]# sed -i -e "s/\]$/\]\npriority=10/g" /etc/yum.repos.d/remi-safe.repo
# ubah ke [enabled=0] dan gunakan hanya saat dibutuhkan
[root@rumahit ~]# sed -i -e "s/enabled=1/enabled=0/g" /etc/yum.repos.d/remi-safe.repo
# if [enabled=0], input a command to use the repository
[root@rumahit ~]# yum --enablerepo=remi-safe install [Package]
4. Konfigurasi VIM CentOS 7
Vim adalah editor teks powerfull yang digunakan dalam CLI (antarmuka baris perintah). Linux menggunakan banyak file konfigurasi, Anda harus sering mengeditnya dan vim adalah alat yang handal untuk melakukannya. Alternatif untuk vim adalah nano dan joe editor. Editor vim akan muncul di jendela terminal.A. Menginstal vim
[root@rumahit ~]# yum -y install vim-enhanced
B. Menggunakan perintah alias
[root@rumahit ~]# vi /etc/profile
# tambahkan nama alias sesuai keinginan di akhir baris
alias vi='vim'
[root@rumahit ~]# source /etc/profile # reload
# tambahkan nama alias sesuai keinginan di akhir baris
alias vi='vim'
[root@rumahit ~]# source /etc/profile # reload
C. Konfigurasi vim
[root@rumahit ~]# vi ~/.vimrc
" use extended function of vim (no compatible with vi)
set nocompatible
" specify encoding
set encoding=euc-jp
" specify file encoding
set fileencodings=iso-2022-jp,sjis
" specify file formats
set fileformats=unix,dos
" take backup
" if not, specify [ set nobackup ]
set backup
" specify backup directory
set backupdir=~/backup
" take 50 search histories
set history=50
" ignore Case
set ignorecase
" distinct Capital if you mix it in search words
set smartcase
" highlights matched words
" if not, specify [ set nohlsearch ]
set hlsearch
" use incremental search
" if not, specify [ set noincsearch ]
set incsearch
" show line number
" if not, specify [ set nonumber ]
set number
" Visualize break ( $ ) or tab ( ^I )
set list
" highlights parentheses
set showmatch
" not insert LF at the end of file
set binary noeol
" enable auto-indent
" if not, specify [ noautoindent ]
set autoindent
" show color display
" if not, specify [ syntax off ]
syntax on
" change colors for comments if it's set [ syntax on ]
highlight Comment ctermfg=LightCyan
" wrap lines
" if not, specify [ set nowrap ]
set wrap
" use extended function of vim (no compatible with vi)
set nocompatible
" specify encoding
set encoding=euc-jp
" specify file encoding
set fileencodings=iso-2022-jp,sjis
" specify file formats
set fileformats=unix,dos
" take backup
" if not, specify [ set nobackup ]
set backup
" specify backup directory
set backupdir=~/backup
" take 50 search histories
set history=50
" ignore Case
set ignorecase
" distinct Capital if you mix it in search words
set smartcase
" highlights matched words
" if not, specify [ set nohlsearch ]
set hlsearch
" use incremental search
" if not, specify [ set noincsearch ]
set incsearch
" show line number
" if not, specify [ set nonumber ]
set number
" Visualize break ( $ ) or tab ( ^I )
set list
" highlights parentheses
set showmatch
" not insert LF at the end of file
set binary noeol
" enable auto-indent
" if not, specify [ noautoindent ]
set autoindent
" show color display
" if not, specify [ syntax off ]
syntax on
" change colors for comments if it's set [ syntax on ]
highlight Comment ctermfg=LightCyan
" wrap lines
" if not, specify [ set nowrap ]
set wrap
5. Konfigurasi sudo
sudo adalah suatu program untuk sistem operasi komputer sejenis Unix yang memungkinkan para pengguna untuk menjalankan program-program hak keamanan pengguna lain, secara default merupakan "superuser".A. Mentransfer hak akses root ke semua pengguna
[root@rumahit ~]# visudo
# tambahkan di akhir baris: user 'admin' dapat digunakan untuk semua hak akses root
admin ALL=(ALL) ALL
# how to write ⇒ destination host=(owner) command
# pastikan menggunakan user 'admin' sesuai contoh diatas
[admin@rumahit ~]$ /usr/bin/cat /etc/shadow
cat: /etc/shadow: Permission denied # akses ditolak
[admin@rumahit ~]$ sudo /usr/bin/cat /etc/shadow
[sudo] password for admin: # masukkan password
daemon:*:16231:0:99999:7:::
adm:*:16231:0:99999:7:::
lp:*:16231:0:99999:7:::
...
...
# tambahkan di akhir baris: user 'admin' dapat digunakan untuk semua hak akses root
admin ALL=(ALL) ALL
# how to write ⇒ destination host=(owner) command
# pastikan menggunakan user 'admin' sesuai contoh diatas
[admin@rumahit ~]$ /usr/bin/cat /etc/shadow
cat: /etc/shadow: Permission denied # akses ditolak
[admin@rumahit ~]$ sudo /usr/bin/cat /etc/shadow
[sudo] password for admin: # masukkan password
daemon:*:16231:0:99999:7:::
adm:*:16231:0:99999:7:::
lp:*:16231:0:99999:7:::
...
...
B. Mengatur agar beberapa perintah tidak diizinkan meskipun mempunyai hak akses root.
[root@rumahit ~]# visudo
# dekat baris 49: tambahkan alias untuk jenis perintah shutdown
Cmnd_Alias SHUTDOWN = /sbin/halt, /sbin/shutdown, \
/sbin/poweroff, /sbin/reboot, /sbin/init
# add ( commands in aliase 'SHUTDOWN' are not allowed )
admin ALL=(ALL) ALL, !SHUTDOWN
# pastikan menggunakan user admin sesuai contoh
[admin@rumahit ~]$ sudo /sbin/shutdown -r now
Sorry, user admin is not allowed to execute '/sbin/shutdown -r now' as root on rumahit.id. # akses ditolak
# dekat baris 49: tambahkan alias untuk jenis perintah shutdown
Cmnd_Alias SHUTDOWN = /sbin/halt, /sbin/shutdown, \
/sbin/poweroff, /sbin/reboot, /sbin/init
# add ( commands in aliase 'SHUTDOWN' are not allowed )
admin ALL=(ALL) ALL, !SHUTDOWN
# pastikan menggunakan user admin sesuai contoh
[admin@rumahit ~]$ sudo /sbin/shutdown -r now
Sorry, user admin is not allowed to execute '/sbin/shutdown -r now' as root on rumahit.id. # akses ditolak
C. Mentransfer beberapa perintah dengan privilege root ke pengguna dalam grup.
[root@rumahit ~]# visudo
# dekat baris 51: tambahkan alias untuk jenis comamnds manajemen pengguna
Cmnd_Alias USERMGR = /usr/sbin/useradd, /usr/sbin/userdel, /usr/sbin/usermod, \
/usr/bin/passwd
# tambahkan di akhir baris
%usermgr ALL=(ALL) USERMGR
[root@rumahit ~]# groupadd usermgr
[root@rumahit ~]# usermod -G usermgr cent
# pastikan menggunakan user admin sesuai contoh
[admin@rumahit ~]$ sudo /usr/sbin/useradd testuser
[admin@rumahit ~]$ # berhasil
[admin@rumahit ~]$ sudo /usr/bin/passwd testuser
Changing password for user testuser.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
# dekat baris 51: tambahkan alias untuk jenis comamnds manajemen pengguna
Cmnd_Alias USERMGR = /usr/sbin/useradd, /usr/sbin/userdel, /usr/sbin/usermod, \
/usr/bin/passwd
# tambahkan di akhir baris
%usermgr ALL=(ALL) USERMGR
[root@rumahit ~]# groupadd usermgr
[root@rumahit ~]# usermod -G usermgr cent
# pastikan menggunakan user admin sesuai contoh
[admin@rumahit ~]$ sudo /usr/sbin/useradd testuser
[admin@rumahit ~]$ # berhasil
[admin@rumahit ~]$ sudo /usr/bin/passwd testuser
Changing password for user testuser.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
D. Mentransfer perintah dengan hak akses root ke pengguna.
[root@rumahit ~]# visudo
# tambahkan pada akhir baris
admin ALL=(ALL) /usr/sbin/visudo
fedora ALL=(ALL) /usr/sbin/useradd, /usr/sbin/userdel, /usr/sbin/usermod, /usr/bin/passwd
ubuntu ALL=(ALL) /bin/vi
# gunakan user admin sesuai contoh
[admin@rumahit ~]$ sudo /usr/sbin/visudo
# possible to open and edit
## Sudoers allows particular users to run various commands as
## the root user, without needing the root password.
##
# pastikan menggunakan user 'fedora'
[fedora@rumahit ~]$ sudo /usr/sbin/userdel -r testuser
[fedora@rumahit ~]$ # berhasil
# pastikan menggunakan user 'ubuntu'
[ubuntu@rumahit ~]$ sudo /bin/vi /boot/grub/grub.conf
# possible to open and edit
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# tambahkan pada akhir baris
admin ALL=(ALL) /usr/sbin/visudo
fedora ALL=(ALL) /usr/sbin/useradd, /usr/sbin/userdel, /usr/sbin/usermod, /usr/bin/passwd
ubuntu ALL=(ALL) /bin/vi
# gunakan user admin sesuai contoh
[admin@rumahit ~]$ sudo /usr/sbin/visudo
# possible to open and edit
## Sudoers allows particular users to run various commands as
## the root user, without needing the root password.
##
# pastikan menggunakan user 'fedora'
[fedora@rumahit ~]$ sudo /usr/sbin/userdel -r testuser
[fedora@rumahit ~]$ # berhasil
# pastikan menggunakan user 'ubuntu'
[ubuntu@rumahit ~]$ sudo /bin/vi /boot/grub/grub.conf
# possible to open and edit
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
E. Log untuk sudo disimpan di '/ var / log / secure', tetapi ada banyak jenis log di dalamnya. Jadi, jika Anda ingin menyimpan hanya sudo yang masuk dalam file, Tetapkan seperti berikut.
[root@rumahit ~]# visudo
# tambahkan di akhir baris
Defaults syslog=local1
[root@rumahit ~]# vi /etc/rsyslog.conf
# pada baris 54: tambahkan
*.info;mail.none;authpriv.none;cron.none;local1.none /var/log/messages
# setelah itu tambahkan baris ini juga
local1.* /var/log/sudo.log
[root@rumahit ~]# systemctl restart rsyslog
# tambahkan di akhir baris
Defaults syslog=local1
[root@rumahit ~]# vi /etc/rsyslog.conf
# pada baris 54: tambahkan
*.info;mail.none;authpriv.none;cron.none;local1.none /var/log/messages
# setelah itu tambahkan baris ini juga
local1.* /var/log/sudo.log
[root@rumahit ~]# systemctl restart rsyslog
6. Konfigurasi cron
Pekerjaan reguler dikendalikan oleh anacron secara default. Tapi anacron berjalan secara acak dalam sehari (jam 3-22), jadi jika Anda ingin menggunakan cron dan mengontrol pekerjaan sekaligus, ubah seperti berikut.Tetapi Pertimbangkan untuk mengubahnya jika server Anda adalah lingkungan virtualisasi. Di server virtual, beberapa mesin virtual sedang berjalan dan jika mereka menjalankan pekerjaan reguler sekaligus, server akan memiliki banyak pemuatan sekaligus. Jadi, perlu untuk mengubah waktu pada setiap mesin dengan manual, atau Menyimpan pengaturan anacron.
#untuk menginstal anacron gunakan perintah berikut
[root@rumahit ~]# yum -y install cronie-noanacron
#untuk menghapus paket anacron yang terinstal, gunakan perintah berikut
[root@rumahit ~]# yum -y remove cronie-anacron
[root@rumahit ~]# yum -y install cronie-noanacron
#untuk menghapus paket anacron yang terinstal, gunakan perintah berikut
[root@rumahit ~]# yum -y remove cronie-anacron
Demikian tutorial konfigurasi dasar centOS 7 . Semoga bermanfaat .