622009011 Skripsi Untuk melengka

advertisement
SISTEM PENGIRIMAN TUGAS KULIAH BERBASIS SFTP DAN SSH
MENGGUNAKAN NODE.JS
Oleh
Edo Gunawan
NIM: 622009011
Skripsi
Untuk melengkapi salah satu syarat memperoleh
Gelar Sarjana Teknik
Program Studi Sistem Komputer
Fakultas Teknik Elektronika dan Komputer
Universitas Kristen Satya Wacana
Salatiga
Juli 2016
INTISARI
Perkembangan teknologi dimasa sekarang, pengumpulan tugas kuliah kepada dosen
pada umumnya berbentuk softcopy dan dikumpulkan melalui email. Jika dosen tersebut
mengampu banyak mata kuliah, maka dosen akan susah dalam mengoreksi tugas,
dikarenakan inbox email dosen akan berisi banyak tugas. Karna itulah dibutuhkan suatu
sistem yang dapat digunakan oleh dosen untuk pengorganisasian tugas tersebut.
Skripsi ini bertujuan untuk membuat suatu sistem yang dapat digunakan oleh dosen
secara otomatis untuk mengorganisasikan tugas – tugas tersebut dan ukuran file yang
dibatasi tidak lebih dari 5MB. Sistem yang digunakan menggunakan Node.Js berbasis SSH
dan SFTP, SSH berfungsi sebagai remote server dan mengirim tugas ke direktori yang
diinginkan. Protokol yang digunakan adalah Secure Shell (SSH) dan transfer filenya
mengunakan Secure File Transfer Protocol (SFTP).
Sistem yang dibuat dapat melakukan pengiriman email pemberitahuan otomatis
100%. Sistem dapat remote login dan mengirim file ke server serta membatasi ukuran file
upload 100%. Server dapat mengkategorikan file sesuai direktori tertentu 100%.
Kata kunci : SFTP, SSH, Node.Js
KATA PENGANTAR
Puji dan syukur penulis ucapkan kepada Allah Bapa Tuhan Yang Maha Kuasa atas
segala rahmat karunia yang senantiasa penulis terima dalam menyelesaikan perancangan
serta penulisan skripsi sebagai syarat untuk menyelesaikan studi di Fakultas Teknik
Elektronika dan Komputer Universitas Kristen Satya Wacana.
Pada kesempatan ini penulis juga hendak mengucapkan terima kasih kepada berbagai
pihak yang baik secara langsung maupun tidak telah membantu penulis dalam
menyelesaikan skripsi ini :
1. Yesus Kristus atas rahmat kasih karunia mujizat yang diberikan sehingga penulis
bisa mengerjakan dan menyelesaikan skripsi dengan baik, penyertaan-Mu
sungguh ada dan nyata dalam pengerjaan skripsi ini.
2. Papah saya Tan Tjong Gun, mamah saya Oh Ie En, adik saya Rebecca, atas doa
dan semangat serta motivasi, terima kasih untuk segalanya, dukungan kalian
membuatku selalu bersemangat mengerjakan skripsi ini.
3. Bapak Banu Wirawan Yohanes, M.CompSc dan Hartanto Kusuma Wardana,
M.T selaku pembimbing I dan pembimbing II, terima kasih atas bimbingan,
pengarahan, kesempatan dan motivasi yang menginspirasi penulis selama
mengerjakan skripsi ini.
4. Seluruh staff dosen, karyawan dan laboran FTEK.
5. Mas Daniel “*****K”, Yosua “to**r”, Adhyaksa, Adhen “bandhoetz”, para
penghuni lap.skripsi Simon, Tiras, Kana. yang telah membantu penulis dalam
mengerjakan skripsi ini.
6. Teman-teman angkatan 2009.
7. Segenap squad clan HoRC, penghuni wr.lucky Pak To, Mbak Luk, Mbah Yat,
Mbah Tris, Para member tim talok, Bang Anton, Mas Angga, Mas Joko, Bayu
“bagong”, Vian “brondong_manis”, Kristo, Elkana, Galih “po**ng”, bro Ranto
“bewok”, Bodhi “ojan”, Anca “kuro”, Yohan “mak-e”, ******, **** dan semua
yang tidak bisa saya sebutkan namanya satu persatu.
8. Berbagai pihak yang tidak dapat dituliskan satu persatu, penulis mengucapkan
terima kasih.
Penulis menyadari bahwa skripsi ini masih jauh dari kata “sempurna”, oleh karena
itu penulis sangat mengharapkan kritik maupun saran dari pembaca sekalian sehingga
skripsi ini dapat berguna bagi kemajuan teknik elektronika.
Salatiga, Juli 2015
Penulis
ABSTRACT
On today’s developed technology, college assignment usually collect to the
lecturer’s through email’s and soft copy formatted, if the lecturer’s taught much of courses
then it will be hard for the lecturer’s to correcting those assignments because there will be
plenty of assignments that send to the lecturer’s inbox. That’s why there’s a need of a
system that can be use by lecturer to organize the assignment collecting.
This thesis aims to create a system’s that can be use by lecturer’s that will
automatically organizing those assignments and in a limited file size that not more than
5MB. The system’s, using secure shell (SSH) and secure file transfer protocol (SFTP)
based Node Js, the SSH are use as remote server and send the assignment to the directory
that we want. Protocol that used were SSH and using SFTP as the file transferer.
From ten trials the system’s that made can give an automatic email notification 90%.
From ten trials system’s can remote login and send file to the server also limits size under
5MB, its can upload file 90% because of request time out problem. Also server can
categorize file by a specified directory 90%.
Keywords : SFTP, SSH, Node.Js
DAFTAR ISI
INTISARI
. ...............................................................................................................
i
ABSTRACT . ..............................................................................................................
ii
KATA PENGANTAR ..................................................................................................
iii
DAFTAR ISI .................................................................................................................
v
DAFTAR GAMBAR ......................................................................................................... vii
DAFTAR TABEL ............................................................................................................. viii
DAFTAR SINGKATAN .................................................................................................... ix
BAB I
BAB II
BAB III
BAB IV
PENDAHULUAN ..............................................................................
1
1.1. Tujuan ........................................................................................
1
1.2. Latar Belakang ...........................................................................
1
1.3. Spesifikasi Sistem .......................................................................
2
1.4. Sistematika Penulisan .................................................................
3
DASAR TEORI .................................................................................
4
2.1. SSH ............................................................................................
4
2.2.1. Definisi SSH ................................................................
4
2.2.2. Penggunakan SSH ......................................................
4
2.3.3. Public Key Cryptografi (Kriptografi Kunci Publik) ...
5
2.2. SFTP ............................................................................................
6
2.3. NodeJs .........................................................................................
6
2.6. SQLite .........................................................................................
7
PERANCANGAN ...............................................................................
8
Arsitektur Sistem ..................................................................................
8
3.1. Perancangan Database .................................................................
8
3.2. SSH ...............................................................................................
9
3.3. SFTP ............................................................................................
10
3.4. Manajemen file............................................................................
10
3.5. Pemberitahuan email otomatis ....................................................
11
3.6. Cara kerja sistem .........................................................................
12
PENGUJIAN DAN ANALISIS ........................................................
14
4.1. Pengujian Database ...................................................................
14
4.2. Pengujian SSH ............................................................................
15
4.3. Pengujian SFTP .........................................................................
18
4.4. Pengujian manajemen file ...........................................................
19
4.4.1. Pembatasan file .........................................................
19
4.4.2. Pengujian pemberitahuan emai .................................
20
KESIMPULAN DAN SARAN .........................................................
21
5.1. Kesimpulan ...............................................................................
21
5.2. Saran Pengembangan ................................................................
21
DAFTAR PUSTAKA .................................................................................................
22
BAB V
DAFTAR GAMBAR
Gambar 3.1. Arsitektur Sistem .....................................................................................
8
Gambar 3.2. Tabel relasi database ................................................................................
9
Gambar 3.3. Manajemen file di server .......................................................................
10
Gambar 3.4. Flowchart pemberitahuan email otomatis ...............................................
11
Gambar 3.5. Flowchart cara kerja sistem ....................................................................
13
Gambar 4.1. Data mahasiswa berformat .xlsx ...............................................................
14
Gambar 4.2. Merubah format .xlsx menjadi .csv ...........................................................
14
Gambar 4.3. Tabel user database ....................................................................................
15
Gambar 4.4. User login ke server ...................................................................................
16
Gambar 4.5. User login, tampilan dari sisi server ..........................................................
16
Gambar 4.6. User remote server .....................................................................................
16
Gambar 4.7. User remote server, tampilan dari sisi server .............................................
17
Gambar 4.8. Pengiriman file oleh user ...........................................................................
18
Gambar 4.9. Pengiriman file, tampilan dari sisi server ..................................................
18
Gambar 4.10. File gagal terkirim ..................................................................................
19
Gambar 4.11. File gagal terkirim tampak dari sisi server ...............................................
19
Gambar 4.12. Pemberitahuan otomatis id dan password ...............................................
20
Gambar 4.13. Pemberitahuan otomatis file telah terkirim .............................................
20
DAFTAR TABEL
Tabel 1.1. Perbandingan sistem pengumpulan tugas . ......................................................
2
Tabel 3.1. Database Mahasiswa .......................................................................................
9
Tabel 3.2. Database Tugas Mahasiswa .............................................................................
9
Tabel 3.3. Database Matakuliah .......................................................................................
9
Download