Rabu, 28 Oktober 2009

SERVER
Server adalah sebuah sistem komputer yang menyediakan jenis layanan tertentu dalam sebuah jaringan komputer. Server didukung dengan prosesor yang bersifat scalable dan RAM yang besar, juga dilengkapi dengan sistem operasi khusus, yang disebut sebagai sistem operasi jaringan atau network operating system. Server juga menjalankan perangkat lunak administratif yang mengontrol akses terhadap jaringan dan sumber daya yang terdapat di dalamnya, seperti halnya berkas atau alat pencetak (printer), dan memberikan akses kepada workstation anggota jaringan.
Umumnya, di atas sistem operasi server terdapat aplikasi-aplikasi yang menggunakan arsitektur klien/server. Contoh dari aplikasi ini adalah DHCP Server, Mail Server, HTTP Server, FTP Server, DNS Server dan lain sebagainya. Setiap sistem operasi server umumnya membundel layanan-layanan tersebut atau layanan tersebut juga dapat diperoleh dari pihak ketiga. Setiap layanan tersebut akan merespons terhadap request dari klien. Sebagai contoh, klien DHCP akan memberikan request kepada server yang menjalankan server DHCP; ketika sebuah klien membutuhkan alamat IP, klien akan memberikan perintah/request kepada server, dengan bahasa yang dipahami oleh server DHCP, yakni protokol DHCP itu sendiri.
Contoh sistem operasi server adalah Windows NT 3.51, dan dilanjutkan dengan Windows NT 4.0. Saat ini sistem yang cukup populer adalah Windows 2000 Server dan Windows Server 2003, kemudian Sun Solaris, Unix, dan GNU/Linux.
Server biasanya terhubung dengan client dengan kabel UTP dan sebuah Network Card. Kartu jaringan ini biasanya berupa kartu PCI atau ISA.
Fungsi server sangat banyak, misalnya untuk situs internet, ilmu pengetahuan, atau sekedar penyimpanan data. Namun yang paling umum adalah untuk mengkoneksikan komputer client ke Internet.
Server itu ada bermacam macam tipenya yaitu :
• Web Server
• mail server
• real time communication server, itu lho server-server yang buat chatting, irc, yahoo dan sejenisnya.
• FTP server, dengan ftp server memungkinkan mentransfer memindahkan file dari komputer yang satu ke yang lainnya memalui internet
• Proxy Server
• Â telnet server.

Terdapat tiga Macam macam server antara lain yaitu :
a. Server Web
Server Web adalah perangkat lunak yang melayani permintaan file-file dari browser Web. Server web biasanya disebut juga sebagai HTTP (Hypertext Transfer Protocol ) sever .

b. Server Applikasi
Server Applikasi adalah perangkat lunak yang berfungsi menerjemahkan kode-kode dinamis menjadi kode-kode statis HTML (Hypertext Markup Language )

c. Server Database
Server Database adalah peangkat lunak yang berfungsi mengolah data yang diminta oleh server applikasi. Untuk membuat applikasi web berbasiskan database, komputer atau sistem jaringan harus memiliki paling tidak satu buah sistem database. Jenis database yang bisa digunakan antara lain misalnya: Ms Access, SQL Server, Oracle atau MySQL.
Gambar Server



PENGATURAN SERVER

DHCP (Dynamic Hosts Control Protocol)

DHCP adalah penyambung lidah antara server dengan clientnya, dan mengatur agar setiap client akan meminta alamat IPnya masing2 ke server dengan beberapa aturan seperti ;hanya memperbolehkan client tertentu dengan MAC (Media Access Control) address tertentu yang mendapatkan alamat IP dari server.


Samba
Samba merupakan file sharing, jembatan penghubung windows dan linux, dapat pula berlaku sebagai PDC. Samba menggunakan akses SMB (Server Message Block) yang dipadukan dengan NetBIOS (Network Basic Input Output System) pada mesin Windows dan menterjemahkannya ke jaringan Unix/Gnu Linux. Sehingga pengguna di jaringan Unix/Gnu Linux dapat berbagi resource pula dengan pengguna sistem Windows.
Dah cukup basa-basinya, sekarang prakteknya nyoook...

KASUS
Domain : daunpintu.net
Net ID : 192.168.5.0
beberapa nama host : (sebagai contoh)
server.daunpintu.net 192.168.5.254 (host ini sebagai server DNS)
cl001.daunpintu.net 192.168.5.11 (client)
cl003.daunpintu.net 192.168.5.12 (client)
cl003.daunpintu.net 192.168.5.13 (client)
Jalankan konsole dengan mengetik pada Run Command > konsole atau pergi ke Start Applications >
System Tools > Terminal
[lab@server home]$ su
Password: [masukan password root]
[root@server home]#
Mengecek apakah file-file yang dibutuhkan sudah terinstall:
[root@server home]# rpm -qa |grep dhcp
dhcp-3.0pl1-23
[root@server home]# rpm -qa |grep bind
bind-9.2.1-16
redhat-config-bind-1.9.0-13
bind-utils-9.2.1-16
ypbind-1.11-4
[root@server home]# rpm -qa |grep samba
samba-common-2.2.7a-7.9.0
samba-client-2.2.7a-7.9.0
samba-2.2.7a-7.9.0
redhat-config-samba-1.0.4-1
[root@server home]#
Jika belum terinstall, silakan install terlebih dahulu, agar lebih mudah, saya menyarankan untuk
menggunakan redhat-config-packages. Ketik di Run Command (Start Applications > Run
Command..) redhat-config-packages. Selanjutnya cari file-file tersebut dan install.Apabila sudah
terinstall,siap-siap buat perang tiada akhir...
Berikut langkah2nya
###################################################################################
---------------------setting ethernet (/etc/sysconfig/networking/devices/ifcfg-eth0)
[root@server home]# vi /etc/sysconfig/networking/devices/ifcfg-eth0 (u/ menulis/edit tekan tombol insert)
DEVICE=eth0 #nama device
BOOTPROTO=static
BROADCAST=192.168.5.255
IPADDR=192.168.5.254
NETMASK=255.255.255.0
NETWORK=192.168.5.0
ONBOOT=yes # dijalankan saat boot
Simpan file dengan menekan tombol escape/Esc kemudian ketik :wq kemudian tekan enter
[root@server home]#
###################################################################################
---------------------setting HOSTS (/etc/hosts)
[root@server home]# vi /etc/hosts (u/ menulis/edit tekan tombol insert)
#Do not remove the following lines, or various programs
#that require network functionality will fails
127.0.0.1 localhost.localdomain localhost
192.168.5.254 server.daunpintu.net server
Simpan file dengan menekan tombol escape/Esc kemudian ketik :wq kemudian tekan enter
[root@server home]#
###################################################################################
----------------------setting RESOLV.CONF (/etc/resolv.conf)
[root@server home]# vi /etc/resolv.conf (kemudian u/ menulis/edit tekan tombol insert)
# Samakan dengan dibawah ini,atau konfigurasi sesuai kebutuhan
search daunpintu.net
nameserver 192.168.5.254
Simpan file dengan menekan tombol escape/Esc kemudian ketik :wq kemudian tekan enter
[root@server home]#
Saatnya restart network
[root@server /]# /etc/init.d/network restart
Shutting down interface eth0: [ OK ]
Shutting down loopback interface: [ OK ]
Setting network parameters: [ OK ]
Bringing up loopback interface: [ OK ]
Bringing up interface eth0: [ OK ]
[root@server /]#
Apabila tidak ada pesan error, berarti sejauh ini berhasil. Untuk memastikan, ping ke 192.168.5.254
[root@server named]# ping 192.168.5.254
64 bytes from 192.168.5.254: icmp_seq=0 ttl=128 time=0.366 ms
64 bytes from 192.168.5.254: icmp_seq=1 ttl=128 time=0.354 ms
64 bytes from 192.168.5.254: icmp_seq=2 ttl=128 time=0.309 ms
64 bytes from 192.168.5.254: icmp_seq=3 ttl=128 time=0.318 ms
64 bytes from 192.168.5.254: icmp_seq=4 ttl=128 time=0.250 ms
--- 192.168.5.254 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4044ms
rtt min /avg/max/dev = 0.250/0.297/0.354/0.044 ms
[root@server named]#
Good, semuanya berjalan lancar. Lanjutkan ke proses berikutnya.
###################################################################################
###################################################################################
DNS SERVER (named) > BIND (Berkeley Internet Name Domain)
Pengaturan DNS sebaiknya ditentukan sesuai kebutuhan, seperti pertanyaan pertama, apakah server ini berlaku sebagai gateway, atau mail server, proxy server, web server, database server, backup server
atau yang lain?
Oleh karena itu, saya lebih serahkan sepenuhnya pada yang membacanya.
Letak konfigurasi bind yang terpenting ada di direktori:
/etc/named.conf
/var/named/
masih sebagai root, kita akan mengkonfigurasi file-file diatas..
NAMED.CONF (/etc/named.conf)
[root@server home]# vi /etc/named.conf
ketikkan baris dibawah ini, atau lebih baik backup file named.conf aslinya(buat jaga2), dan buat file
ini..
## named.conf - configuration for bind
#
# Generated automatically by redhat-config-bind, alchemist et al.
# Any changes not supported by redhat-config-bind should be put
# in /etc/named.custom
#c
ontrols {
inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};
include "/etc/named.custom";
include "/etc/rndc.key";
zone "0.0.127.in-addr.arpa" {
type master;
file "0.0.127.in-addr.arpa.zone";
};
zone "localhost" {
type master;
file "localhost.zone";
};
zone "5.168.192.in-addr.arpa" { | |
type master; |# script yang ditambahkan|
file "5.168.192.in-addr.arpa.zone"; | |
};
zone "daunpintu.net" { | |
type master; |# script yang ditambahkan|
file "daunpintu.net.zone"; | |
};
kalo sudah diketik semua, simpan file tersebut dengan mengetikkan :wq dan tekan [enter]
[root@server home]#
Penjelasan:
Perhatikan baris perintah berikut:
zone "daunpintu.net" { #menambahkan zona baru / domain baru yaitu daunpintu.net
type master; #merupakan master domain, domain utama...
file "daunpintu.net.zone"; #file database yang menyimpan konfigurasi seluruh domain dan
host
};
zone "5.168.192.in-addr.arpa" { #menambahkan zona reverse baru yaitu daunpintu.net
type master; #merupakan reverse master domain, domain reverse utama...
file "5.168.192.in-addr.arpa.zone"; #file database yang menyimpan konfigurasi seluruh
domain dan host
};
##################################################################################
file pada direktori /var/named/
[root@server home]# cd /var/named
[root@server named]# vi daunpintu.net.zone
ketikan perintah berikut: (isi file ini cuma contoh, dapat disesuaikan dengan kebutuhan)
$TTL 86400
@ IN SOA server.daunpintu.net. root.localhost (
2005911918 ; serial
28800 ; refresh
7200 ; retry
604800 ; expire
86400 ; ttl
)
IN NS 192.168.5.254.
server IN A 192.168.5.254
cl001 IN A 192.168.5.11
cl002 IN A 192.168.5.12
cl003 IN A 192.168.5.13
simpan file dengan mengetik > : + w + q
[root@server named]# vi 5.168.192.in-addr.arpa.zone
ketikkan perintah berikut: (Ingat, sekali lagi isi file ini cuma contoh, dapat disesuaikan dengan
kebutuhan)
$TTL 86400
5.168.192.in-addr.arpa. IN SOA server.daunpintu.net. root.daunpintu.net. (
2005121900 ; serial
28800 ; refresh
2700 ; retry
604800 ; expire
86400 ; ttl
)
IN NS server.daunpintu.net.
11 IN PTR cl001.daunpintu.net.
12 IN PTR cl002.daunpintu.net.
13 IN PTR cl003.daunpintu.net.
simpan file dengan mengetik > : + w + q
[root@server named]#
Kemudian restart service BIND dengan perintah:
[root@server named]# service named restart
Shutting down named: [ OK ]
Starting named: [ OK ]
[root@server named]#
Kalo udah, coba test dengan menjalankan perintah host
[root@server named]# host cl001
cl001.daunpintu.net has address 192.168.5.11
[root@server named]#
Setelah itu silakan ping ke cl001
[root@server named]# ping cl001
64 bytes from cl001.daunpintu.net (192.168.5.11): icmp_seq=0 ttl=128 time=0.366 ms
64 bytes from cl001.daunpintu.net (192.168.5.11): icmp_seq=1 ttl=128 time=0.354 ms
64 bytes from cl001.daunpintu.net (192.168.5.11): icmp_seq=2 ttl=128 time=0.309 ms
64 bytes from cl001.daunpintu.net (192.168.5.11): icmp_seq=3 ttl=128 time=0.318 ms
64 bytes from cl001.daunpintu.net (192.168.5.11): icmp_seq=4 ttl=128 time=0.250 ms
--- cl001.daunpintu.net ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4044ms
rtt min /avg/max/dev = 0.250/0.297/0.354/0.044 ms
[root@server named]#
Berhasil, konfigurasi DNS telah berjalan dengan baik, selanjutnya membuat client-client meminta IP mereka masing-masing ke server dengan menggunakan DHCP server. Penggunaan DHCP dilakukan agar IP client tidak dapat digunakan selain IP yang terdaftar pada DHCP server, karena DHCP membatasi akses IP client dengan mendeteksi MAC Address masing-masing kartu jaringan.Lebih jelasnya, bisa di lihat dari konfigurasi dan keberhasilan proses konfigurasi nanti ☺
######################################################################

Konfigurasi Server

Secara default, /etc/sshd_config Anda akan tampak sebagai berikut :
Port 22
ListenAddress 0.0.0.0
HostKey /etc/ssh_host_key
RandomSeed /etc/ssh_random_seed
ServerKeyBits 768
LoginGraceTime 600
KeyRegenerationInterval 3600
PermitRootLogin yes
IgnoreRhost no
StrictModes yes
QuietMode no
X11Forwarding yes
X11DisplayOffset 10
FascistLogging no
PrintMod yes
KeepAlive yes
SyslogFacility DAEMON
RhostsAuthentication no
RhostsRSAAuthentication yes
PasswordAuthentication yes
PermitEmptyPasswords yes
UserLogin no
# Checkmail no
#PidFile /u/zappa/.ssh/pid
# AllowHosts *.our.com friend.other.com
# DenyHosts lowsecurity.theirs.com *.evil.org evil.org
# Umask 022
#SilentDeny yes

Sebagai referensi dalam mengedit konfigurasi tersebut, berikut penjelasan tentang fungsi-fungsi dari beberapa parameter yang perlu :


Table: Parameter /etc/sshd_config
Parameter/etc/sshd_config Parameter Penjelasan
AllowGroups [groups] Digunakan untuk mengontrol grup yang dapat memanfaatkan fasilitas SSH. Antar grup dipisahkan dengan spasi. Misal AllowGroups root user
AllowHosts [hosts] Dipergunakan untuk mengontrol host-host yang dapat mengakses layanan SSH. Host dapat diberikan dalam bentuk nama atau nomor IP. Misalnya AllowHosts *.pasarrumput.com 192.168.11.1
AllowTCPForwarding Dipergunakan untuk menentukan apakah TCP forwarding diperbolehkan. Secara default di set yes.
CheckMail Digunakan untuk menentukan apakah user yang sedang login dengan ssh diberitahu jika ada email masuk atau tidak. Secara default diset yes.
DenyGroups Digunakan untuk mengontrol grup yang tidak diperbolehkan untuk memanfaatkan fasilitas SSH. Sebagaimana AllowGroup, parameter ini menggunakan spasi untuk memisahkan grup satu dengan lainnya.
DenyHosts Untuk mengontrol host-host yang tidak diperbolehkan untuk mengakses layanan SSH.
FascistLogging Untuk menentukan apakah sshd menjalankan aktivitas logging
HostKey Untuk menentukan letak file kunci dari host. Secara default file kunci ada di /etc/ssh_host_key
IdleTimeout Untuk menentukan waktu pemutusan layanan jika ada session yang tidak melakukan aktivitas.
IgnoreRhosts Untuk menentukan apakah sshd membaca file .rhosts atau tidak.
KeepAlive Untuk menentukan apakah sshd mengirimkan pesan bahwa layanan masih berjalan atau tidak
LoginGraceTime Untuk menentukan waktu jeda saat user bisa login kembali akibat kegagalan login pada sesi sebelumnya
PermitEmptyPassword Untuk menentukan apakah diperbolehkan atau tidak user mengirimkan password kosong
PermitRootLogin Untuk menentukan apakah root dapat log in dengan ssh, dan jika diperbolehkan apakah masih perlu autentikasi password
PrintMod Untuk menentukan apakah sshd perlu menyampaikan motd (message of the day) saat user login
RSAAuthentication Untuk menentukan apakah sshd menggunakan autentikasi model RSA
ServerkeyBits Untuk menentukan berapa bit yang dipakai sebagai kunci untuk server
SilentDeny Untuk menentukan sshd menolak terhadap suatu session tanpa pemberitahuan sama sekali
StrictModes Untuk menentukan sshd mengecek hak akses file terhadap home direktori sebagai pertimbangan untuk menerima atau menolak suatu login
X11Forwarding Untuk



Untuk menjalankan sshd, cukup ketikkan sshd sebagai root.
# sshd
Ada beberapa pilihan dalam menjalankan sshd. Pilihan ini diketikkan sebagai prefiks saat menjalankan sshd. Misal :
# sshd -g 60 (menjalankan sshd dengan timeout untuk klien 60 detik)


Table: Pilihan saat menjalankan sshd
Pilihan (prefiks) Fungsi
-b [bits] Dipergunakan untuk menentukan berapa bit yang dipergunakan sebagai kunci. Secara default dipakai 768 bits.
-d Dipergunakan untuk menjalankan dalam modus DEBUG. Ini berguna untuk mengamati proses server yang sedang berjalan.
-f [config-file] Dipergunakan untuk menentukan file config yang lain selain yang ditunjuk secara default (/etc/sshd_config)
-g [timeout] Dipergunakan untuk menentukan timeout jika ada pengguna yang meminta sebuah sesi tetapi tidak melakukan autentikasi. Defaultya 600 detik. Disarankan untuk mengeset ke 60 detik.
-h [host-key] Dipergunakan untuk menentukan alternatif lain dari file host key. Defaulntya adalah /etc/ssh_host_key.
-i Dipergunakan untuk menjalankan sshd dari inetd. Namun oleh pembuatnya disarankan untuk tidak dijalankan lewat inetd. Hal ini disebabkan karena sshd harus membuat key untuk tiap sesi, sehingga mempengaruhi kinerja daemon lain yang dijalankan lewat inetd.
-k Dipergunakan untuk mengeset waktu, berapa lama sshd harus membuat (generating) kunci (session key) yang baru. Defaultnya adalah sekali dalam sejam. Jika diset 0 maka sshd tidak akan pernah membuat session key yang baru.
-p [port] Dipergunakan untuk menentukan port alternatif bagi sshd. Defaultnya adalah port 22.
-q Dipergunakan untuk mematikan logging (tidak melakukan pencatatan terhadap aktifitas sshd.

Untuk klien, ssh mempergunakan file /etc/ssh_config. Secara default file tersebut berisi :
# This is ssh client systemwide configuration file. This file provides
# default for users, and the values can be changed in per-user #configuration
# files or on yhe command line.

# configuration data is parsed as follows:
# 1. Command line options
# 2. User- specificc file
# 3. Systemwide file
# Any configuration value is only change the first time it is set.
# Thus, host-specific definitistion should be at the beginning of the
# configuration file, and defaults at the the end.

# Sitewide defaults for various options

# Host *
# ForwardAgent yes
# ForwardX11 yes
# RhostsAuthentication yes
# RhostRSAAuthentication yes
# RSAAuthentication yes
# TISAuthentication no
# PasswordAuthentication yes
# FallBackToRsh yes
# UserRSH no
# BatchMode no
# StrictHostKeyChecking no
# IdentifyFile -/.ssh/identity
# Port 22
# Chiper idea
# EscapeChar -
Tabel berikut menjelaskan parameter yang dipergunakan dalam file ssh_config


Table: Parameter ssh_config (untuk klien ssh)
Pilihan Fungsi
BatchMode [yes/no] Dipergunakan untuk meminta username dan kata kunci pada saat koneksi dimulai.
Cipher [cipher] Dipergunakan untuk menentukan metode enkripsi. Pilihannya adalah idea, des, 3des (triple DES), blow-fish, arcfour, dan none.
ClearA11Forwadings Dipergunakan untuk meminta agar ssh meneruskan untuk membaca beberapa file konfigurasi dalam satu sesi.
Compression [yes/no] Dipergunakan untuk meminta ssh menggunakan kompresi selama sesi berjalan.
Compressionlevel [0-9] Dipergunakan untuk menentukan level kompresi. Semakin kecil nomornya, kompresi semakin cepat, tapi kualitas lebih jelek. Paling besar adalah 9, memberikan kompresi dengan kualitas bagus, tapi memperlambat kinerja.
ConnectAttempts [#] Dipergunakan untuk menentukan berapa kali ssh akan mencoba berkoneksi kembali saat sebuah sesi tidak berhasil di inisialisasikan.
EscapeChar [charracter] Dpergunakan untuk menentukan karakater Escape.
FallBackToRsh [yes/no] Dipergunakan untuk menentukan apakah ssh harus berpindah ke rsh jika koneksi ke ssh server tidak berhasil.
ForwardAgent [yes/no] Dipergunakan untuk menentukan apakah koneksi dengan program autentikasi lain akan diteruskan atau tidak.
ForwardX11 [yes/no] Dipergunakan untuk meneruskan sesi X11 secara otomatis.
GetewayPorts [yes/no] Dipergunakan untuk menentukan apakah host remote dapat tersambung secara lokal lewat port yang meneruskannya.
Hostname [hostname] Dipergunakan untuk menentukan nama host yang login secara default.
Identityfile [file] Dipergunakan untuk menetukan file alternatif identitas RSA. Defaultnya adalah .ssh/identity.
KeepAlive [yes/no] Dipergunakan untuk menentukan apakah klien ssh mengirimkan pesan secara terus menerus kepada server remote.
KerberosAuthentication Dipergunakan untuk menentukan ssh memakai autentikasi Kerberos 5.
KerberosTgtPassing Dipergunakan untuk menentukan ssh memakai Kerberos ticket passing.
LocalForwading Port host:port Dipergunakan untuk menentukan ssh meneruskan port lokal kepada host remote.
PasswordAuthentication [yes/no] Dipergunakan untuk menentukan ssh memakai autentikasi basis password.
PasswordPromptHost [yes/no] Dipergunakan untuk menentukan apakah host remote diperlihatkan dalam prompt login.
PasswordLogin [yes/no] Dipergunakan untuk menentukan ssh memperlihatkan host remote pada saat autentikasi.
Port [port] Dipergukan untuk menentukan port alternatif.
RhostsAuthentication Dipergunakan untuk menentukan apakah autentikasi rhost dapat dipergunakan. Jangan dipergunakan tanpa alasan yang kuat, sebab rhost kurang aman.
RhostsRSAAuthentication Dipergunakan untuk menentukan ssh memakai autentikasi rhost dan RSA pada saat koneksi dimulai.
SrictHostKeyChecking Dipergunakan untuk menentukan apakah ssh menambahkan secara otomatis host key baru ke host file. Pilihannya adalah yes, no, dan ask.


Klien windows dapat memmanfaatkan SSH dengan mempergunakan program telnet Tera Term Pro + TTSSH for Windows. Secara default Tera Term Pro tidak mendukung ssh, untuk itu perlu ditambahkan program TTSSH for Windows. Terra Term Pro dapat diperoleh di
http://hp.vector.co.jp/authors/VA002416/teraterm.html. Sedangkan TTSSH dapat diperoleh di
http://www.zip.com.au/roca/ttssh.html.




sumber :
http://kambing.ui.ac.id/bebas/v15/berseri/ahmad-serverlinux/node170.html
http://bizlab.sbm.itb.ac.id/index.php?option=content&task=view&id=37&lang=en

Tidak ada komentar:

Posting Komentar