NIS
TUJUAN PEMBELAJARAN
1. Mahasiswa memahami prinsip NIS.
2. Mahasiswa memahami kegunaan/manfaat NIS.
3. Mahasiswa mampu melakukan installasi dan konfigurasi/setting NIS.
Dasar Teori
Di suatu komputer lab mungkin anda pernah login dengan user name anda sendiri
walaupun anda tahu di komputer tersebut anda tidak mempunyai account. Anda hanya
mempunyai account di komputer server kampus bukan di komputer lab tersebut,
anehnya lagi ketika anda login, anda langung masuk ke home directory anda yang si
server kampus. Maka bisa dipastikan bahwa komputer lab anda tersebut dijadikan
sebagai klien NIS (Network Information Server) dan klien NFS (Network File
System), sedangkan server kampus sebagai server NIS dan NFS.
NIS merupakan layanan yang berfungsi untuk menyediakan informasi lewat jaringan
yaitu informasi user name, password, home directory (/etc/passwd) dan informasi
group (/etc/group). Jika dirunut dari asalnya NIS dulu lebih dikenal dengan Sun
Yellow Pages (YP) tapi berhubung nama Yellow Pages telah dipakai oleh British
Telecom maka nama itu tidak diizinkan lagi untuk dipakai.
Slave server ini hanya merupakan backup terhadap server master, jika server master
mengalami gangguan maka server slave otomatis mengambil alih fungsi server
master. Jadi database server slave merupakan salinan dari server master. Database ini
dinamakan DBM-format yang dikonversi dari format ASCII oleh program makedbm.
Untuk mensinkronkan database antara server master dan slave digunakan program
"yppush".
Layanan NIS bekerja berbasiskan panggilan RPC (Remote Procedure Call) yaitu
panggilan yang dialakukan oleh klien NIS kepada server NIS . Untuk membuat RPC
ini kita harus menjalankan program yang dinamakan portmapper (portmap) yang
bertugas untuk mengkonversi nomor-nomor dalam program RPC ke dalam nomor-
nomor port dalam protokol TCP/IP (atau UDP/IP). Ketika server RPC (server NIS)
sudah diaktifkan, ia akan meminta portmap unutuk membuka nomor port tertentu dan
nomor program RPC berapa yang siap untuk melayani panggilan RPC dari klien. Jadi
apabila komputer klien melakukan panggilan RPC untuk meminta nomor program, ia
harus terlebih dahulu melakukan hubungan dengan portmap pada server RPC untuk
mengetahui nomor port berapa paket RPC harus dikirimkan. Nah, untuk dapat
melakukan komunikasi berbasis RPC ini setting waktu antara server dan klien harus
disinkronisasi terlebih dahulu lewat time service.
Tugas Pendahuluan
1. Apa fungsi/kegunaan dari NIS server ?
2. Apa program RPM yang dibutuhkan untuk menginstall dan mengkonfigurasi
NIS server ?
3. Apa fungsi dari Remote Procedure Call ?
4. Apa fungsi/kegunaan dari portmap ?
5. Sebutkan service-service yang disediakan pada NIS server
Percobaan
Setelah instalasi program di atas sukses maka anda perlu mengaktifkan time service
pada file /etc/inetd.conf:
atau kalau anda menggunakan xinetd maka yang dikonfigurasi adalah file
/etc/xinetd.d/time dan /etc/xinetd.d/time-udp:
# File /etc/xinetd.d/time
# default: off
# description: An RFC 868 time server. This is the tcp \
# version, which is used by rdate.
service time
{
disable = no
type = INTERNAL
id = time-stream
socket_type = stream
protocol = tcp
user = root
wait = no
}
# File /etc/xinetd.d/time-udp
# default: off
# description: An RFC 868 time server. This is the udp \
# version.
service time
{
disable = no
type = INTERNAL UNLISTED
id = time-dgram
socket_type = dgram
protocol = udp
user = root
wait = yes
port = 37
}
# /etc/init.d/inetd restart
atau
# /etc/init.d/xinetd restart
c) Setelah time service-nya berjalan, maka giliran portmap yang harus dijalankan:
# /etc/init.d/portmap start
# /etc/init.d/ypserv start
e) Setelah layanan NIS diaktifkan, test apakah layanan RPC sudah aktif:
At this point, we have to construct a list of the hosts which will run NIS
servers. gate.if.te.ugm.ac.id is in the list of NIS server hosts. Please continue to add
the names for the other hosts, one per line. When you are done with the
list, type a .
next host to add: gate.if.te.ugm.ac.id
next host to add:
The current list of NIS servers looks like this:
gate.if.te.ugm.ac.id
Is this correct? [y/n: y] y
We need some minutes to build the databases...
Building /var/yp/if.te.ugm.ac.id/ypservers...
Running /var/yp/Makefile...
gmake[1]: Entering directory `/var/yp/if.te.ugm.ac.id'
Updating passwd.byname...
Updating passwd.byuid...
Updating group.byname...
Updating group.bygid...
Updating hosts.byname...
Updating hosts.byaddr...
Updating rpc.byname...
Updating rpc.bynumber...
Updating services.byname...
Updating services.byservicename...
Updating netid.byname...
Updating protocols.bynumber...
Updating protocols.byname...
Updating mail.aliases...
gmake[1]: Leaving directory `/var/yp/if.te.ugm.ac.id'
ypserver 172.16.110.1
# domainname if.te.ugm.ac.id
e) Perhatikan apakah direktori /var/yp sudah ada, jika belum maka buatlah secara
manual:
# mkdir /var/yp
# /etc/init.d/ypbind start
g)Kalau sudah OK, test apakah klien yp anda sudah bisa berkomunikasi dengan server
dengan perintah:
Ouput yang dihasilkan dari perintah ini berbeda tergantung versi ypbind yang
dipakai. Cara lain adalah dengan mencoba login dengan user name yang terdapat
pada server tetapi tidak terdapat pada klien. Seperti halnya fungsi file /etc/hosts yang
berfungsi sebagai referensi dalam urutan pencarian suatu host, maka kita perlu
mengkonfigurasi file /etc/nsswitch.conf sebagai referensi dalam urutan pencarian
informasiuser name, group dan password. Konfigurasi file /etc/nsswitch.conf:
passwd: compat
shadow: compat
group: compat
passwd: nis
shadow: nis
group: nis
#hosts: db files nisplus nis dns
hosts: files nisplus dns
Dari konfigurasi di atas kita menginginkan informasi user name, gorup dan password
didapat dari server NIS bukan dari file-file yang ada di klien.
Setelah sukses membuat suatu sistem jaringan yang berbasiskan NIS, tentu saja
kurang lengkap kalau tidak dipadukan dengan layanan NFS (Network File System)
karena kalau kita login saja tidak cukup, tapi kita login dan masuk ke rumah (home
directory) kita sendiri. NFS merupakan layanan untuk menyediakan suatu sistem file
komputer remote pada komputer lokal sebagaimana layaknya seperti sistem file
komputer lokal itu sendiri. Sistem file ini bisa berupa partisi disk atau direktori.
a) Untuk server NFS anda perlu menginstall beberapa program diantaranya nfs-utils
dan portmap yang sudah lengkap tersedia dalam CD Linux.
Instalasi nfs-utils:
Karena dari langkah pembuatan NIS terdahulu portmap sudah terinstall, maka anda
tinggal menjalankan daemon portmap dengan mengetikkan:
#/etc/rc.d/init.d/portmapstart
contoh:
/home172.16.110.0/27(rw)
File konfigurasi menunjukkan bahwa kita men-share direktori /home pada server
untuk diberikan kepada klien yang bernomor IP address 172.16.110.1-172.16.110.30
dengan mode baca dan tulis (rw).
# /etc/rc.d/init.d/nfsstart
d) Setelah daemon nfs anda di server aktif, maka sekarang saatnya anda melakukan
konfigurasi di klien. Karena dari konsep awal bahwa di klien kita ingin memakai
direktori /home yang ada di server sebagai direktori /home di klien, maka apabila
seandainya di klien kita membuat partisi tersendiri untuk /home, maka anda harus
meng-unmount partisi tersebut. Dan seandainya juga anda sudah mempunyai
direktori /home yang sudah berisi tapi tidak dalam partisi tersendiri, maka rename-
lah direktori tersebut dengan nama lain. Setelah itu lakukan mount direktori /home
di server dengan perintah:
# mount 172.16.110.1:/home/home
# df -hT
172.16.110.1:/homenfs/home
Keamanan
Dalam hal ini, keamanan yang dimaksudkan adalah pembatasan pemakaian layanan
NIS dan NFS yang sudah kita buat. File konfigurasinya adalah /etc/hosts.allow dan
/etc/hosts.deny Pada file /etc/hosts.deny kita mengkonfigurasi layanan mana yang
tidak boleh dipakai oleh suatu komputer/jaringan, di sini kita buat agar layanan
portmap tidak diperbolehkan untuk dipakai oleh semua komputer/jaringan:
portmap : ALL
portmap :172.16.110.
Dengan demikian, kelak apabila ada komputer yang tidak termasuk dalam jaringan
kita (di luar 172.16.110.0/255.255.255.224) tetapi misalkan terhubung ke jaringan
kita meminta layanan portmap, maka otomatis permintaan tersebut tidak akan
"terkabul".
Laporan Resmi
Tugas Pendahuluan :
Hasil percobaan :
Daftar Pertanyaan
Berikan kesimpulan praktikum yang anda lakukan.
.