PRAKTIKUM 11 APPLICATION LAYER I. Tujuan 1. Mahasiswa memahami konsep aplikasi web server, remote access dan file transfer di jaringan. 2. Mahasiswa mampu membangun web server, telnet, tftp dan ftp II. Peralatan Yang Dibutuhkan 1. Beberapa komputer yang berfungsi sebagai server. 2. Beberapa komputer yang berfungsi sebagai client. 3. Hub/switch sebagai penghubung jaringan. 4. Kabel jaringan secukupnya. III. Dasar Teori A. HTTP HTTP adalah sebuah protokol yang menangani aplikasi web. Dimana aplikasi ini bekerja pada jaringan TCP/IP dengan port 80. Untuk membangun sebuah aplikasi Web dibutuhkan sebuah WebServer, dimana yang fungsinya adalah sebagai tempat aplikasinya sendiri dan sebagai penerima REQUEST dari client. Contoh Webserver antara lain : Apache, IIS. Sedangkan contoh dari webclient atau yang biasa disebut web browser antara lain: Mozilla, Internet Explorer, Opera. Untuk pengembangan aplikasi berbasis web, dapat menggunakan bahasa pemrograman HTML (HyperText Markup Language), sedangkan untuk membangun aplikasi web yang dinamis dapat menggunakan bahasa pemrograman PHP, ASP, CGI dan lain sebagainya. Gb 1. Diagram webserver dan aplikasinya B. Remote Akses Remote akses merupakan suatu pelayanan di jaringan yang dapat memudahkan kita untuk mengontrol jarak jauh sebuah atau beberapa PC yang terhubung dengan jaringan. 1 Gambar 2. Remote Akses Pada gb2. terlihat ilustrasi remoteakses dimana pengguna pada PC client melalukan remote akses sehingga seolaholah user telah berada di depan server. Setelah user masuk ke server, user dapat menggunakan PC tersebut seperti dia sedang menggunakan langsung di depan PC tersebut. Aplikasi remoteaccess : – Telnet – SSH Untuk melakukan aplikasi remote akses ini diperlukan aplikasi clientserver dimana pada PC yg akan kita remote harus terdapat aplikasi server. Aplikasi Client Server – Telnet (23) telnet telnetd – SSH (22) openssh-client, putty openssh-server C. File Transfer File Trasnfer merupakan salah satu aplikasi di jaringan yang dapat memberikan pelayanan berupa pengiriman suatu file ke PC yang lain. Gambar 3. File Transfer 2 Pada gb 3. Panah dengan garis lurus diartikan client dapat masuk ke server, sedangkan garis putusputus memiliki arti file tersebut dapat dikirim dari client ke server atau file tersebut dapat ditarik dari server ke client, sehingga garis putusputus memiliki 2 arah. Aplikasi File Transfer : - FTP - SFTP Untuk melakukan aplikasi file transfer ini diperlukan aplikasi clientserver dimana pada PC yg akan kita transfer harus terdapat aplikasi server. Aplikasi Client Server – FTP (21) ftp, mc proftpd, wuftpd, vsftpd – SFTP (22) sftp, scp, mc openssh-server Perintah-perintah pada aplikasi file transfer : – OPEN <IP>, digunakan untuk membuka koneksi baru – GET <FILE> , digunakan untuk mengambil file dari server ke client – PUT <FILE> , digunakan untuk menaruh file dari client ke server – MKDIR <DIR> , digunakan untuk membuat direktori baru di server – HELP , digunakan untuk perintah pertolongan – QUIT, digunakan untuk keluar dari sesi file transfer IV. Tugas Pendahuluan 1. Bagaimana konsep Web Server dalam jaringan komputer 2. Sebutkan beberapa software aplikasi web server yang ada di internet. 3. Sebutkan beberapa software aplikasi web browser (client) yang ada di internet. 4. Bagaimana konsep telnet dan ftp dalam jaringan komputer 5. Sebutkan beberapa software aplikasi ftp server dan server yang ada di internet. V. Percobaan 1. Bangunlah jaringan seperti berikut : Gambar 2 Jaringan Percobaan NB: Gunakan dhclient di masing-masing PC untuk mendapatkan IP dari router. 192.168.50.x & y : IP dari router Pilih 192.168.50.x sebagai PC Server Pilih 192.168.50.y sebagai PC Client 3 A. Percobaan dengan Web Server 1. Instalasi Web Server a. Pada praktikum ini menggunakan aplikasi webserver apache. Dimana untuk installasinya dapat dilakukan dengan cara: # apt-get install apache2 b. Untuk mengecek apakah webserver sudah berjalan dengan benar, gunakan perintah: # netstat -nlptu | grep apache2 Amati dan catat hasil dari perintah diatas. NB : Direktori kerja dari webserver apache2 berada di /var/www/, sehingga semua aplikasi web harus ditaruh di direktori tersebut. 2. Instalasi Web Browser (Client) a. Bukalah aplikasi web browser, jika belum ada lakukan instalasi Mozillafirefox. # apt-get install iceweasel b. Untuk mengetes aplikasi web server, dari PC Server, akses alamat berikut : http://localhost File yang diakses adalah : /var/www/index.html Jika ingin mengakses dari PC Client, maka masukkan no IP dari server (misal 192.168.50.10) : http://192.168.50.10 atau http://192.168.50.10:80/index.html Amati perbedaan output dari kedua perintah diatas. 3. Aplikasi web dinamis berbasis PHP a. Untuk menginstall php dapat dilakukan dengan # apt-get install php5 libapache2-mod-php5 b. Restart apache2 # /etc/init.d/apache2 restart c. Untuk mengecek, apakah apakah php kita sudah terinstall dengan benar dengan cara membuat aplikasi web info.php pada direktory /var/www/ di PC Server. 4 # vim /var/www/info.php <? phpinfo(); ?> d. Kemudian dari web browser di PC Client, akses ke alamat : http://192.168.50.10/info.php e. Buatlah file php di PC Server untuk menampilkan informasi. # vim /var/www/coba.php <? echo “Nama saya : Muhammad Faruq <br>”; echo “Alamat : Surabaya”; ?> f. Akseslah file tersebut dari PC Client http://192.168.50.10/coba.php g. Sekarang, akseslah dari PC Client, data yang tidak ada di PC Server (misal jarkom.php) http://192.168.50.10/jarkom.php Amati output yang dihasilkan. B. Percobaan dengan Remote Akses 4. Pada PC server : a. Install paket telnet # apt-get install telnetd 5 NB : Untuk konfigurasi telnet : # vim /etc/inetd.conf # /etc/init.d/openbsd-inetd restart b. Amati dan catat, apakah paket tersebut sudah berjalan atau belum : # netstat –nlptu | grep inetd => untuk telnet Telnet akan bekerja pada port 23. c. Buat user yang akan digunakan untuk login dari PC Client: # adduser faruq 5. Pada PC Client : a. Jalankan telnet, untuk melakukan remote akses ke sisi server # telnet <no_ip_server> b. Kemudian lakukan login sesuai dengan user pada poin 4.c, apabila login dan password benar, user bisa langsung menggunakan PC server tersebut. c. Sekarang anda sudah dapat mengendalikan PC Server sepenuhnya. Coba matikan aplikasi web server (apache2) di PC Server, dengan login ke root terlebih dahulu # su # eject => untuk membuka CD Drive di server # /etc/init.d/apache2 stop d. Kemudian, akseslah kembali Web server dari web browser PC Client : http://<no_ip_server> C. File Transfer TFTP (trivial file transfer protokol) 6. Pada PC Server: a. Install paket tftp server # apt-get install tftpd NB : Untuk konfigurasi tftp : # vim /etc/inetd.conf b. File-file yang akan didownload dan diupload akan ditempatkan di /srv/tftp # mkdir /srv/tftp c. Buat file di /srv/tftp , yang akan didownload dari PC Client : # vim /srv/tftp/data.txt Ini data dari server 7. Pada PC Client : a. Jalankan wireshark, untuk mengamati proses transfer data antara client-server b. Instalasi paket tftp client # apt-get install tftp c. Akses tftp dari PC Client, misal IP Server (192.168.50.10) : # tftp 192.168.50.10 tftp> trace tftp> get data.txt sent RRQ <file=dtftp, mode=netascii> received DATA <block=1, 21 bytes> Received 21 bytes in 0.2 seconds 6 tftp> quit d. Amati, apakah file tersebut sudah di PC Client # ls # cat data.txt e. Tutup aplikasi wireshark, amati apakah ada proses ACK setiap ada pengiriman data, TFTP bekerja menggunakan protokol UDP. FTP (file transfer protokol) 8. Pada PC server : a. Install paket ftp # apt-get install proftpd b. Amati dan catat, apakah paket tersebut sudah berjalan atau belum : # netstat –nlptu | grep inetd => untuk telnet FTP akan bekerja pada port 21. c. Buat user yang akan digunakan untuk login dari PC Client: # adduser fakhri d. Buat beberapa file di /home/fakhri 9. Pada PC client : a. Jalankan wireshark, untuk mengamati proses transfer data antara client-server b. Jalankan ftp, untuk melakukan remote akses ke sisi server # ftp <no_ip_server> d. Kemudian lakukan login sesuai dengan user pada poin 8.c, apabila login dan password benar, user bisa langsung menggunakan PC server tersebut. e. Beberapa perintah di ftp : Untuk mengirim file ke server ftp> put <nama_file> Untuk mengirim semua file ke server ftp> mput * Untuk mendownload file dari server ftp> get <nama_file> Untuk mendownload semua file dari server ftp> mget * Untuk melihat info file di server ftp> ls Untuk keluar dari ftp ftp> quit f. Matikan wireshark, dan amati apakah ada proses ACK setiap pengiriman data dari PC Server ke PC Client (FTP menggunakan protokol TCP) Laporan Resmi Daftar Pertanyaan 1. Berikan kesimpulan praktikum yang anda lakukan. 7 LEMBAR ANALISA Praktikum Jaringan Komputer -1 (Application Layer) Tanggal Praktikum : Kelas : Nama dan NRP : A. Gambar topologi jaringan beserta informasi IP Address dan interfacenya. WEB SERVER B. Catat hasil pada poin 1.b C. Catat hasil poin 2.b, tuliskan output dari : a. http://192.168.50.10 b. http://192.168.50.10:80/index.html D. Catat hasil pada poin 3.d E. Catat hasil pada poin 3.f dan 3.g F. Catat hasil pada poin 4.b TELNET G. Catat dan jelaskan proses pada 5.c dan 5.d TFTP H. Catat hasil proses tftp pada poin 7, terutama pada wireshark. FTP I. Catat hasil pada poin 8.b J. Catat hasil proses ftp pada poin 9, terutama pada wireshark dan bandingkan dengan proses tftp 8