Tutorial FTP - SFTP – FTPS DAN HTTP – HTTPS
A.
PERCOBAAN
MENGGUNAKAN FTP, SFTP, DAN FTPS
FTP
(menggunakan port 21)
1.
Langkah pertama install
ftp server terlebih dahulu dengan perintah apt-get
install proftpd
2.
Kemudian cek daemon ftp
sudah ada dan berjalan dengan perintah netstat
–a|grep ftp
Statusnya listen
berarti ftp server sudah berjalan
3.
Lakukan restart service
pada ftp server denagn perintah pada gambar di bawah ini
4.
Setelah itu buatlah
user baru dengan perintah adduser
(nama_user)
5.
Jika sudah selesai
membuat user segera buka filezilla pada windows dengan mengisi
Password :
(password_saat_membuat_user_baru) Port
: 21 à
port untuk ftp
Lihatlah pada filezilla
telah tersambung dengan user kamdat yang ada pada debian. Pada daerah yang
dilingkari merah adalah status report saat kita masuk pada direktori yang ada
pada user kamdat berhasil.
6.
Bukalah wireshark dan
pilih pada interface VMWare1 untuk mengamati
Pada saat menggunakan
ftp untuk melakukan sambungan antara client dan server menggunakan protocol ftp
port 21. Semua aktifitas yang ada pada protocol ftp ini terjadi secara
terang-terangan data sebenarnya. Dapat dilihat dari gambar di atas. Tanpa ada
proses enkripsi yang terjadi.
7.
Pada saat dari windows
mengupload file ke debian atau ftp server
Dari gambar di atas
jika kita amati ip 178 pada windows melakukan penguploadan file .png dengan ip
tujuan .179 milik server. Setelah terjadi request STOR file. Baru terjadi
komunikasi dengan protocol TCP dari ip 178 melakukan SYN ke ip 179 dan setelah
itu server membalas dan barulah terjadi proses pengiriman data dengan ditandai
adanya protocol FTP-DATA pada gambar di atas.
8.
Upload complete
Gambar di atas adalah
pada saat proses uploading file selesai yang melakukan closing data connection
karena data sudah berhasil di kirim adalah server. Coba kita amati pada
lingkaran merah ip source berasal dari ip 179 milik server.
SFTP
(menggunakan SSH port 22)
2.
Lakukan sambungan ke
sftp dengan menggunakan filezilla dari windows dengan mengisi
Host :
sftp://(ip_sftp_server). Username, Password sama dengan percobaan ftp. Port :
22
3.
Melakukan pengunggahan
file melalui sftp
Pada gambar di atas
client pada windows melakukan pengunggahan file .pptx pada server. Dapat
dilihat pada lingkaran merah bahwa proses pengunggahan file .pptx ke server
berhasil dan jika kita lihat juga pada direktori user kamdat file yang diunggah
juga telah ada di direktori tersebut.
4.
Monitoring pada wireshark
saat proses pengunggahan file
Jika diamati dari
gambar di atas pada lingkaran merah adalah proses pertukaran private key awal
antara client dengan server hingga menghasilkan key baru untuk berkomunikasi.
Baru setelah itu proses interaksi data pada SSH versi 2 semua data dienkripsi.
FTPS
(menggunakan SSL : Secure Socket Layer)
1.
Install open ssl
terlebih dahulu
2.
Lakukan konfigurasi
pada proftpd.conf sebagai berikut
5.
Edit konfigurasi
proftpd.conf dengan menghilangkan tanda # pada baris include di bawah ini
6.
Copy file tls.conf dan
beri nama seperti gambar di bawah ini
9.
Restart service proftpd
10. Lakukan
koneksi dengan filezilla dengan format koneksi sama dengan percobaan ftp. Maka
pada saat melakukan koneksi pada filezilla akan muncul sertifikat di bawah ini.
Kemudian tekan OK
11. Monitoring
pada wireshark pada saat mengkonfirmasi tls sertifikat
Pada gambar di atas
server meminta sertifikat tls pada client. Kemudian ketika client merequest
uthentikasi sertifikat tls server memberikan respon AUTH TLS successful.
Kemudian barulah terjadi koneksi yang datanya terenkripsi yang dapat kita lihat
pada gamabar di atas.
13. Pengamatan
melalui wireshark
Semua kegiatan
komunikasi antara client dengan server dan pengiriman data dienkripsi semua
karena menggunakan secure socket layer(ssl)
B.
PERCOBAAN
MENGGUNAKAN HTTP DAN HTTPS
HTTP
HTTP
1. Langkah
pertama lakukan installasi web server apache2 pada server terlebih dahulu(pada
virtual debian) dengan perintah apt-get
install apache2
Pastikan proses
installasi berahasil seperti gambar di bawah ini.
2.
Cek apakah web server
berjalan dengan baik. Bukalah browser pada windows(client) pastikan ip client
berada satu jaringan dengan server. Kemudian jika server tak menggunakan proxy
atau port tertentu gunakan no proxy pada pengaturan jaringan browser. Ketikkan
ip server pada url
3.
Lakukan monitoring
taffic jaringan dengan menggunakan wireshark
HTTPS
1. Karena
web server sudah di install, selanjutnya aktifkan mode ssl dengan perintah a2enmod ssl
2. Lakukan
restart pada web service apache2 dengan perintah /etc/init.d/apache2 restart
3. Setelah
itu buatlah folder baru dengan nama ssl
di dalam direktori /etc/apache2/ dengan
perintah mkdir /etc/apache2/(nama_folder)
untuk menyimpan server key dan sertifikat
4. Kemudian
kita akan membuat Sertifikat SSL dengan perintah di bawah ini
Saat kita membuat
Sertifikat SSL, bisa ditentukan masa berlakunya seperti pada contoh gambar di
atas –days 730 berarti masa
berlakunya 730 hari (2 tahun). Pada perintah –keyout /etc/apache2/ssl/apache.key berarti server key akan
disimpan pada direktori ssl dengan nama apache.key,
sedangkan pada perintah –out
/etc/apache2/ssl/apache.crt berarti sertifikat akan disimpan pada direktori
ssl dengan nama apache.crt
5. Di
bawah ini adalah proses generate untuk mendapatkan server key dan Sertifikat
SSL
Pada sertifikat SSL di
atas kita isi data perusahaan penyedia sertifikat mulai dari lokasi perusahaan,
nama organisasi, nama domain(server FQDN), dan alamat e-mail.
6. Karena
kita mengaktifkan 2 metode, yaitu HTTP dan HTTPS. Kita bisa mengabaikan HTTP,
karena secara default pasti berjalan dengan semestinya. Konfigurasi pada file default
pada direktori /etc/apache2/sites-available.
File ini yang menunjukkan di mana letak website kita disimpan, secara default
file ini merujuk ke direktori /var/www.
Di dalam direktori /etc/apache2/sites-available terdapat 2
buah file, yaitu default yang telah dibahas di atas dan default-ssl untuk membuat
mode HTTPS aktif.
Selanjutnya bukalah
file default-ssl.
Pada file ini tambahkan baris SSLEngine On
Jika baris yang diberi
lingkaran kuning belum ada tambahkan di bawah SSLEngine pada file tersebut,
kemudian hilangkan tanda # di depan perintah yang diberi lingkaran merah di
atas. Jika sudah simpanlah perubahan file tersebut.
7. Lakukan
pengaktifan website default-ssl dengan perintah di bawah ini
8. Setelah
itu restartlah lagi service apache agar perubahan konfigurasi dijalankan.
Karena kita
mengaktifkan mode secure(HTTPS) maka protocol yang digunakan adalah TLS.
Kemudian saat client hendak mengakses halaman web server tidak langsung
diizinkan seperti pada HTTP sebelumnya, namun ada pengenalan terlebih dahulu
oleh si server pada saat pertama kali(belum terinstall sertifikat pada browser
client). Pada saat pertama client(ip .107) mengakses halaman web server(ip
.108) Hello. Kemudian Server membalas Hello, Certificate(server meminta
sertifikat pada client untuk dapat membuka halaman tujuan client, disaat itu
juga server mengirimkan public key miliknya ke client). Kemudian Client
membalas dengan private key miliknya dengan menggunakan algoritma cipher client
melakukan request lagi ke server. Kemudian server proses enkripsi dan menggunakan
private key milik client saat melakukan komunikasi dengan client.
Karena pada proses
sebelumnya sertifikat telah terinstall pada browser maka disaat client
mengakses halaman web server untuk yang kedua kali dan seterusnya maka halaman
web akan langsung terbuka karena server telah menyimpan private key client dan
client telah menyimpan public key server melalui sertifikat yang terinstall
pada web browser.
Akan terjadi galat/
error lagi dalam mengakses halaman web server jika menggunakan browser lain
atau sertifikat pada browser dihapus(di uninstall).
C.
TABEL
PERBEDAAN FTP, SFTP, DAN FTPS
PERBEDAAN
|
FTP
|
SFTP
|
FTPS
|
Protokol yang dipakai
|
FTP
|
SSH
|
FTP secure(enkripsi
SSL)
|
Port
|
21
|
22
|
21
|
Proses pertukaran
data
|
Menggunakan command
channel dan data channel
|
Menggunakan
transformasi paket dengan format yang spesial melalui sebuah koneksi
|
Komunikasi dan
pertukaran data melalui proses enkripsi dan dekripsi melalui SSL
|
Keamanan
|
Channel command dan
channel data tidak dienkrip, data yang dikirim dapat dicegat atau dibaca
|
Semua data yang
dikirim dari client ke server terencrypt menggunakan encryption cipher
|
FTPS Implicit SSL dan
FTPS Explicit SSL
|
Firewall
|
Server mengijinkan koneksi masuk pada port 21 dan
PASSIVE on-demand port antara 2000-2500.
|
Server mengijinkan
koneksi masuk pada port 22
|
Server mengijinkan
koneksi masuk pada port 21 atau 990 dan PASSIVE on-demand port antara 2000-2500
|
Client mengijinkan
koneksi keluar pada port 21 dan passive sama seperti server
|
Client mengijinkan
koneksi keluar pada port 22
|
Client mengijinkan
koneksi keluar pada port 21 dan passive sama seperti server
|
D.
PERBEDAAN
HTTP DAN HTTPS
1.
HTTP adalah dasar komunikasi
data untuk World Wide Web (WWW). Setiap kali kita membuka website / halaman web
kita akan menggunakan protokol ini. Sisi client meminta sisi server untuk
membuka komunikasi pada port 80, port terbuka sisi server 80 dan di sisi client
port acak terbuka.
Data paket yang dikirim menggunakan HTTP tidak terenkripsi, siapapun dapat melihat data dalam teks biasa seperti BadGuy lakukan. Itulah mengapa tidak menggunakan HTTP untuk perbankan atau transaksi di internet, dan juga itu tidak dianjurkan jika Anda membuka website halaman login yang menggunakan HTTP pada jaringan publik seperti area hotspot nirkabel.
Data paket yang dikirim menggunakan HTTP tidak terenkripsi, siapapun dapat melihat data dalam teks biasa seperti BadGuy lakukan. Itulah mengapa tidak menggunakan HTTP untuk perbankan atau transaksi di internet, dan juga itu tidak dianjurkan jika Anda membuka website halaman login yang menggunakan HTTP pada jaringan publik seperti area hotspot nirkabel.
2.
HTTPS adalah kombinasi dari
Hyper Text Transfer Protocol dan Secure Socket Layer protokol (SSL) / Transport
Layer Security (TLS) untuk menyediakan komunikasi terenkripsi antara web server
dan klien. Protokol ini menggunakan port 443 untuk komunikasi.
Data paket dikirim
menggunakan HTTPS dienkripsi, orang tidak dapat melihat data paket dalam
jaringan publik. Selain itu pada https selalui memiliki sertifikat untuk dapat
mengakses halaman web tersebut. Tanpa adanya sertifikat maka client tak akan
dapat mengakses server. Itu sebabnya HTTPS biasanya digunakan untuk perbankan
atau transaksi di internet, dan halaman juga login atau halaman lain perlu
untuk mengenkripsi data
0 komentar: