Kamis, 04 Februari 2016

internet gratis

OPenSource Techno Makassar: Konsep dan Konfigurasi FTP Server di Debian
Diberdayakan oleh Blogger.

Pengikut

Konsep dan Konfigurasi FTP Server di Debian


Daftar Materi
Linux Networking
    c. Konfigurasi DHCP Server 
2. DNS Server
    a. Konfigurasi DNS Server Master
    b. Konfigurasi DNS Server Slave
3. Web Server
    a. Konfigurasi HTTP Server
    b. Konfigurasi HTTPS Server
5. Mail Server dan Web Mail
    a. Konfigurasi POP dan IMAP dengan Courier
    b. Konfigurasi POP dan IMAP dengan Dovecot
6. File Sharing ( Samba Server )
7. SSH Server
8. Proxy Server
9. NTP Server (Server Waktu)
Daftar isi 
The Concept & Configuration of FTP Server in Debian
    FTP merupakan protokol yang berbasis Client/Server serta menyediakan fasilitas untuk transfer data dalam jaringan atau dengan protokol lain, yang dapat melakukan pertukaran file antar dua host/komputer dalam jaringan TCP/IP (Internet Protokol). Protokol FTP ini berjalan pada "Application Layer" pada TCP/IP Layer. Standarisasi transfer data antar jaringan komputer menggunakan protokol FTP.

    Awal pengembangan dari FTP yaitu diprioritaskan untuk proses Download dan Upload yang dilakukan oleh FTP Client dan FTP Server. Sebuah FTP Client berupa aplikasi yang dapat melakukan perintah FTP ke sebuah FTP Server, kemudian FTP Server adalah sebuah layanan yang berjalan pada PC untuk merespon perintah dari FTP client. Perintah/command FTP dapat digunakan untuk mengubah Direktori, mengubah modus transfer antar binari dan ASCII, menngapload file ke FTP Server, dan mendownload file dari FTP Server. Metode yang digunakan FTP  server agar dapat diakses oleh FTP Client yaitu menggunakan format yang hampir sama dengan Protokol HTTP. Jika http menggunakan format "http://domainname" atau "http://nameserver", maka pada Protokol FTP menggunakan format "ftp://domainname" atau "ftp://nameserver".

    format "ftp://" mendefiniskan sebuah layanan komunikasi yang digunakan untuk aktifitas tranfer data menggunakan protokol FTP. Format "ftp://" ini mendefinisikan port 21, dalam artian domain name atau name server yang diawal dengan format "ftp://" maka akan diarkan ke layanan FTP. begitupula pada format "http://" juga mendefinisikan layanan komunikasi yang digunakan untuk aktifiktas transfer data dalam bentuk protokol HTTP

    Secara umum layanan yang diberikan oleh FTP Server dapat diakses tidak hanya pada web browser namun dapat juga digunakan pada aplikasi file manager seperti: "Windows Explorer", "Gnome File Manager", dll. Walaupun terdapat aplikasi yang berfungsi sebagai FTP Client, namun untuk aktifitas Transfer  data melalui FTP Server yang bersifitat Anonymous, maka Anda dapat menggunakan File Manager maupun Web Browser.

    FTP Server terdiri atas dua macam yaitu:
    • FTP Server anonymous
    • FTP server non-anonymous
      FTP Server anonymous merupakan layanan FTP Server yang dapat langsung di akses oleh FTP Client biasa (File Manager atau Web Browser), atau dengan kata lain FTP Server Anonymous bersifat Public yang dapat diakses oleh semua orang melalui File Manager atau Web Browser. Sedangkan FTP Server non-anonymous yaitu layanan FTP Server yang menggunakan authentikasi untuk mengakses FTP Server tersebut, Nah.. Aplikasi khusus untuk FTP Client dapat digunakan untuk mengakses FTP Server non-anonymous. Contoh Aplikasi FTP Client yaitu FileZilla, CoreFTP, SmartFTP, dll.

      Layanan FTP Server menggunakan 2 (dua) port komunikasi yaitu Port 20 dan Port 21. Port 21 diguankan untuk mengakses halaman FTP Server., sedangkan untuk proses transfer data antar FTP Client dengan FTP Server mengguankan port 20. Adapun isitlah yang digunakan pada FTP yaitu Get dan Put., Get merupakan proses mengambilan data dari FTP Server atau Download. Put merupakan proses pengiriman file dari FTP Client ke FTP Server (Upload).
      Gambar 1. Komunikasi antara FTP Client dengan FTP Server

      Dari Gambar diatas terlihat bahwa terdapat 2 (dua) port komunikasi yang digunakan oleh layanan FTP. Proses yang dilakukan oleh FTP Client pada saat membuka halaman dari FTP Server, Komunikasi antara dua pihak yaitu FTP Client dan server menggunakan port 21, sedangkan pada saat FTP Client akan mendownload sebuah file dari Halaman FTP Server, maka komunikasi yang terjadi antara FTP Client dan FTP Server yaitu menggunakan port 20.

      Selain itu Komunikasi antara FTP Client dan FTP Server dengan menggunakan port 20, yaitu mencakup perintah FTP yang dilakukan oleh Client maupun Server, berikut ilustrasinya:
      Gambar 2. Komunikasi Antara FTP Client dengan FTP Server menggunakan port 21
      Pada saat FTP Client hendak me-request halaman dari FTP Server, baik dalam bentuk perintah text maupun permintaan halaman FTP Server dari FTP Client. Respon permintaan dari FTP Client yang dilakukan oleh FTP Server, dalam bentuk tampilan halaman baik pada Aplikasi FTP Client maupun Interface Text.

      Kemudian Pada saat halaman layanan FTP Server telah ditampilkan di FTP Client, kemungkinan FTP Client hendak melakukan mengambilan data yang ada pada halaman FTP Server maka terjadi proses komunikasi menggunakan port 20, atau dengan kata lain proses Download file dari FTP Server.

      Pembuatan Koneksi antara FTP Client dengan FTP Server.

      Secara sederhana Koneksi yang dibuat oleh FTP Client ke FTP Server, dalam bentuk Pembuatan koneksi untuk membuka/mengakses halaman layanan FTP Server yang berisi file-file yang mungkin berupa informasi atau file binari yang siap untuk di download. Kurang lebih ilustrasinya seperti berikut:
      Gambar 3. Ilustrasi komunikasi awal antara FTP Client dengan FTP Server
      Dari Ilustrasi Gambar Proses komunikasi awal antara FTP Client dengan FTP Server, terdiri atas beberapa Message Sending dari FTP Client ke FTP Server dengan respon dari FTP Server dari Message Sending FTP Client., Berikut Deskripsi dari Ilustrasi komunikasi menggunakan protokol FTP :

      Ketika FTP Client hendak membangun sebuh koneksi menggunakan protokol FTP, terjadi beberapa Sending Message dan Respone Message.,
      • Create Establish TCP Connection From FTP Client to FTP Server, Proses ini merupakan proses dimana sebuah FTP Client mencoba berkomunikai dengan FTP Server dengan cara membangun komunikasi yang baik antara FTP Client dan FTP Server,
      • Establish TCP Connection from FTP Client to FTP Server is success, merupakan sebuah proses dimana FTP Server merespon dari permintaan dari FTP Client yang mencoba membangun koneksi dengan FTP Server,
      • Send User Name to Login, Message atau pesan yang dikirm oleh FTP Server ke FTP Client dengan meminta FTP Client memasukkan Username yang terdaftar di database FTP Server,
      • FTP Client Sent Username in FTP Server, merupakan proses dimana FTP Client merespon pesan dari FTP Server, dan mengirimkan Username yang diminta oleh FTP Server,
      • FTP Server Respon, Then FTP Server Send Message: Send Password, merupakan permintaan atau pesan yang dikirim oleh FTP Server yang meminta FTP Client memasukkan password dari username yang telah dikirim,
      • FTP Client Send Password to login FTP page, merupakan suatu proses dimana FTP Client mengirimkan Password dari username yang sebelumnya sudah dikirim oleh FTP Client ke FTP Server agar dapat login ke Halaman FTP Server,
      • FTP Server Respon, Then FTP Server send message: "Welcome to FTP Server Page", merupakan proses dimana FTP Server telah menyatakan bahwa Username dan Password yang dikirim oleh FTP Client, sudah valid dan terdaftar di database FTP Server.
        Pada penjelasan diatas, menyangkut masalah FTP Server yang memberikan pembatasan terhadapa akses login pada halaman FTP Server, lalu bagaimana dengan FTP Anonymous, yang tidak memerlukan username dan password untuk login ke halaman FTP Server? apakah prosesnya hampir sama?., FTP Server yang bersifat anonymous tetap memiliki Username dan password namun username dan passwordnya bersifat public dan secara default FTP Server mengirimkan username dan password FTP anonymous pada Client yang akan mengakses FTP Anonymous.

        FTP Client mengakses FTP Server Anonymous.
        Gambar 4. Ilustrasi Komunikasi awal antara FTP Client dengan FTP Server Anonymous

        Pada gambar 4 diatas, terlihat terdapat perbedaan yang cukup signifikan pada FTP Server Anonymous. perbedaan ini terlihat pada saat koneksi antara FTP Server Anonymous dengan FTP Client terbangun., secara otomatis pada saat FTP Client mengakses FTP Server Anonymous, FTP Server secara default mengirimkan username dan password publik pada FTP Client agar dapat mengakses halaman FTP Server., Ilustrasi yang ditunjukkan pada gambar diatas mengimplementasikan Halaman FTP Server yang diakses melalui Web Browser. Jika Halaman FTP Server baik anonymous maupun non-anonymous yang diakses oleh FTP Client, menggunakan Aplikasi khusus FTP Client, tetap mengharuskan memasukkan UserName dan Password., Ilustrasi gambar yang dapat diterapkan yaitu gambar 3.

        FTP Client mengakses FTP Server dengan DomainName.
          Pada saat FTP Server diakses dengan IP Address Server, metode yang skemanya dapat dilihat pada gambar 3, sedangkan skema proses untuk FTP Server yang diakses menggunakan NamaDomain, yakni melibatkan komunikasi dengan DNS Server, berikut skema prosesnya:
          Gambar 5. Skema Koneksi FTP Client menggunakan DomainName

          Dari Skema Gambar 5 diatas menunjukkan bahwa pada saat FTP Client mengakses FTP Server menggunakan DomainName, maka terjadi percakapan antara DNS Server dengan FTP Client, baik antara FTP Client dengan DNS Server local maupun FTP Client dengan DNS server ISP. Ketika FTP Client telah mengetahui alamat IP dari NamaDomain, misalkan "blog.opstechno.org" maka FTP Client akan langsung mengakses alamat IP dari domain "blog.opstechno.org" menggunakan protokol FTP.

          FTP Client mengakses FTP Server yang diarahkan ke SubDomain.
          Ketika FTP Client mengakses FTP Server yang diarahkan pada sub domain, maka terjadi proses tambahan selain dari proses yang ditunjukkan pada gambar 5 diatas, agar lebih jelas silahkan perhatikan gambar berikut:
          Gambar 6. Ilustrasi Proses koneksi FTP Client dengan FTP Server menggunakan domain name "ftp.opstechno.com"

          Deskripsi dari ilustrasi Proses yang ditunjukkan pada gambar 6:
          Desktripsi komunikasi FTP Client dengan DNS Server:
          • FTP Client hendak mengakses subdomain "ftp.opstechno.com",
          • Karena FTP Client akan mengakses FTP Server dengan subdomain "ftp.opstechno.com", maka terlebih dahulu FTP Client harus mengetahui alamat IP dari domain "opstechno.com", lalu FTP Client menanyakan alamat IP domain "opstechno.com" ke DNS server local.
          • karena DNS Server Local tidak mengetahui alamat IP dari domain "opstechno.com", maka DNS Server Local bertanya ke DNS Server ISP untuk mengetahui alamat IP domain "opstechno.com", dan DNS Server ISP memberitahukan bahwa IP Address dari domain "opstechno.com" adalah 27.88.12.11,
          • karena DNS Server local sudah mengetahui alamat IP dari domain "opstechno.com" yaitu "27.88.12.11", maka DNS Server Local langsung memberikan jawaban pertanyaan dari FTP Client.
            Deskripsi komunikasi FTP Client dengan DNS Server opstechno:
            • Dalam hal ini FTP Client telah mengetahui IP address dari domain "opstechno.com", kemudian FTP Client menanyakan, apakah terdapat database untuk subdomain "ftp.opstechno.com" di zone file DNS Server opstechno ?,
            • Karena pada DNS Server opstechno terdapat database subdomain "ftp.opstechno.com", maka DNS Server opstechno merespon permintaan dari FTP Client, dan memberikan izin untuk mengakses subdomain "ftp.opstechno.com".
              Deskripsi Komunikasi FTP Client dengan FTP Server:
              • Establish TCP Connection from FTP Client to FTP Server, FTP Client mencoba membangun koneksi dengan FTP Server,
              • Establish TCP Connection from FTP Client to FTP Server Succeed, FTP Server menyatakan bahwa FTP Client telah berhasil membangun koneksi ke FTP Server.
              • FTP Server send message: Send UserName Password for login to Page, Dengan terjalinnya koneksi antara FTP Client dan FTP Server, maka FTP Server mengirimkan pesan yang berisi permintaan FTP Server terhadap Username dan Password agar FTP Client dapat login/masuk ke halaman FTP Server,
              • FTP Client Send UserName and Password for login to Page, kemudian FTP Client mengirimkna UserName dan Password sesuai permintaan dari FTP Server,
              • Kemudian, FTP Server mengidentifikasi UserName dan Password yang dikirim oleh FTP Client agar dapat login ke halaman FTP Server, s
              • FTP Server send message: "Welcome to FTP Server Page", setelah FTP server menyatakan bahwa UserName dan Password yang dikirim oleh FTP Client valid, maka FTP Server mengirimkan pesan kepada FTP Client bahwa FTP Client dapat mengakses halaman FTP Server.
              • Finally, FTP Client and FTP Server can communicate, and FTP Client can full access of the FTP Serve Page, Komunikasi telah terjalin dengan baik, dan FTP Client dapat mengakses penuh halaman dari FTP Server.
                Selain istilah dari FTP Client dan FTP Server, FTP Client dapat di istilahkan sebagai User Protocol Interpreter (User PI) dan FTP Server dapat di istilahkan sebagai Server Protocol Interpreter (Server PI). Mengapa terdapat istilah demikian?. Interpreter merupakan bahasa yang digunakan untuk berinteraksi antara satu dengan yang lainnya. User PI, dapat juga disebut sebuah antarmuka yang digunakan untuk berkomunikasi, begitupun dengan Server PI, merupakan sebuah antarmuka yang digunakan untuk berkomunikasi. Ketika kita berbicara tentang FTP (File Transfer Protocol) jelas dalam komunikasi tersebut, masing-masing memiliki interface. Client menggunakan interface berupa Web Browser ataupun aplikasi khusus, Sedang Server menggunakan interface yang menyediakan layanan agar dapat mengatur dan memanajemen komunikasi menggunakan FTP Protocol.

                  Proses Download (Get) dan Upload (Put) FTP Client ke FTP Server.
                  Protokol FTP dirancang agar dapat menjadi Protokol Transfer data yang baik serta dapat diimplementasikan oleh Protokol lainnya. Secara umum Port yang digunakan untuk aktifitas transfer data antar FTP Client dengan FTP Server yaitu port 20, selain dari itu, terkadang FTP Client melakukan transfer data menggunakan port berbeda (selain dari port 20). Pada saat FTP Client menggunakan perintah untuk mendownload (Get) file dari halaman FTP Server dengan port berbeda, namun pada saat permintaan tersebut sampai ke FTP Server tetap menggunakan port 20 dan port 21.

                  Komunikasi pada Protokol FTP, tidak pernah berlari dari port 20 dan port 21, ketika FTP Client mengirimkan perintah kepada FTP Server, dengan port apapun yang digunakan FTP Client, FTP Server tetap mengirimkan balasannya menggunakan port 21, namun jia FTP Client mengirimkan perintah Download (Get) file ke FTP Server menggunakan port berbeda, tetap Perintah Download (Get) file yang dikirimkan oleh FTP Client menggunakan port berbeda, akan dijawab oleh FTP Server dengan Port 21, dan pada saat FTP Server mengizinkan FTP Client untuk mendownload file, FTP Server mengirimkan file yang diminta FTP Client melalui port 20.

                  Secara umum proses komunikasi dan transfer data dengan menggunakan protokol FTP, kurang lebih seperti berikut:
                  Gambar 7. Proses pembangunan komunikasi dan Transfer data antara FTP Client dan Server
                  Deskripsi Gambar:
                  Step 1, FTP Client Establish Connection With DNS & Web Server.
                  • Someone will access FTP Server using web browser with address: "ftp.opstechno.com", using port 80., Proses dimana seseorang yang menggunakan Web Browser hendak mengakses FTP Server dengan alamat "ftp.opstechno.com", dan secara otomatis Web Browser membacanya sebagai permintaan untuk akses ke Web Server, maka Web Browser akan mengarahkannya ke DNS dan Web Server.
                  • Web Server identifies the request from FTP Client, Because FTP Client accessing the address "ftp.opstechno.com", and the address accessed by the Client, is an address that leads to an FTP Server, then the Web Server with imtermediary DNS Server directs the reques of the Client to the FTP The Server., Proses ini merupakan proses identifikasi yang dilakukan oleh DNS dan Web Server atas permintaan dari Client menggunakan Web Browser dengan alamat "ftp.opstechno.com", karena pada database DNS Server alamat "ftp.opstechno.com" adalah alamat yang mengarah ke FTP Server, maka DNS Server mengarahkan permintaan Client tersebut ke FTP Server.
                    Step 2, FTP Client Direct Connection With FTP Server.
                    • Karena Repon dari permintaan Client telah diserahkan kepada FTP Server, maka FTP Server akan terhubung langsung ke FTP Client. FTP Server respond the reques by FTP Client with port 21., Proses ini merupakan respon dari FTP Server atas permintaan dari FTP Client dengan mengirimkan pesan melalui port 21.
                    • FTP Client Respond the Message from FTP Server with port 21., FTP Client merespon pesan dari FTP Server kemudian mengirimkan permintaan ke FTP Server menggunakan port 21.
                    • FTP Server send Message: Send UserName & Password., FTP Server mengerimkan pesan ke FTP Client untuk mengirim Username dan Password agar dapat login ke halaman FTP.
                    • FTP Client sends the username & password upon request from The FTP Server., FTP Client mengirimkan username dan password sesuai permintaan dari FTP Server,
                    • FTP Server give allow connection for FTP Client., Proses ini merupakan proses dimana FTP Server menanggapi username dan password yang dikirim oleh FTP Client untuk mengakses halaman FTPnya., namun sebelum FTP Server mengizinkan FTP Client untuk mengakses halamannnya, FTP Server pertama-tama melakukan identifikasi terhadap Username dan password yang dikirm oleh Client, apakah sudah benar atau tidak, setelah Username dan Password yang dikirm oleh FTP Client dinyatakan Valid oleh FTP Server, maka FTP Server mengirimkan pesan "Welcome to FTP Server Page", artinya FTP Client dapat mengakses Halaman dari FTP Server,
                    • Between the FTP Client & FTP Server communicating with each other., pada bagian ini, antara FTP Client dan FTP Server dapat berkomunikasi dengan baik,
                      Step 3, Processing Transfer data, between The FTP Client with FTP Server,
                      • FTP Client Send: "Acknowledge Data Connection" using port 20., Proses ini merupakan proses dimana FTP Client meminta FTP Server agar dapat melakukan Transfer data, baik Download (Get) maupun Upload (Put).
                      • FTP Server Respond, the FTP Server Open Acknowledge Data Connection using port 20., Proses ini merupakan Respon dari permintaan FTP Client untuk melakukan transfer data. Pesan yang dikirm oleh FTP Server yaitu "Open Acknowledge Data Connection" menggunakan port 20., yang berarti FTP Server mengizinkan proses transfer data yang akan dilakukan oleh FTP Client.
                      • Then, there was a proses of data transfer between FTP Client and FTP Server., Bagian ini merupakan proses dimana FTP Client dan FTP Server saling melakukan transfer data, jadi terjadi proses "Send or Received Data".
                        Penjelasan dan skema diatas mengartikan suatu bentuk proses login connection dan transfer data yang dilakukan melalui protokol FTP, Namun pada proses transfer data pada protokol FTP dikenal dengan dua bentuk mode transfer data yakni: "Active Mode FTP Data Connection" dan "Passive Mode FTP Data Connection"., kedua bentuk mode ini yang paling sering digunakan yaitu "Passive Mode FTP Data Connection".

                        a. Active Mode FTP data Connection., Merupakan metode data connection yang pada saat kita hendak mengakses halaman FTP tersebut, membutuhkan authentikasi agar dapat mengakses halaman FTP Server. Ilustrasinya seperti berikut:
                        Gambar 8. Alur Koneksi FTP Active

                        Ilustrasi diatas sebenarnya telah dijelaskan pada paragraf sebelumnya, Active FTP Connection ini tergolong sebagai FTP non-Anonymous.

                        b. Passive Mode FTP Data Connection, Merupakan koneksi FTP yang bisa disebut Anonymous FTP., mengapa demikian, sebab koneksi terbentuk bukan dimulai oleh FTP Client, namun dibentuk oleh FTP Server., Namun FTP Client hanya melakukan permintaan dalam untuk mengakses Halaman FTP Server, kemudian setelah FTP Server merespon permintaan FTP Client, maka sambungan hingga akses terhadap halaman FTP Server diatur oleh FTP Server itu sendiri. berikut ilustrasi FTP Passive Data Connection:
                        Gambar 9. Alur Koneksi FTP Passive
                        Ilustrasi diatas, tergolong FTP Anonymous, sebab FTP Client dapat mengakses FTP secara langsung tanpa harus melalu authentikasi. Jika kita melihat berbagai teori yang menjelaskan tentang Protokol FTP, mungkin sangat sulit bagi kita untuk memahami dan mengambil kesimpulan tentang koneksi FTP, namun di artikel ini, penulis cukup menjelaskan secara singkat tentang apa yang dimaksud dengan FTP Active dan Passive.



                        Instalasi FTP Server
                        Pada bagian ini, penulis akan menjelaskan tentang langkah-langkah instalasi FTP Server., terdapat dua aplikasi server untuk FTP, yang akan dijelaskan pada artikel ini yaitu aplikasi ProFTPD, dan VsFTPD., kedua aplikasi ini merupakan aplikasi yang sangat banyak digunakan, dan pengaplikasiannya cukup mudah. berikut langkah-langkahnya:

                        Instalasi FTP Server dengan ProFTP.
                        Sebelum melakukan instalasi FTP server, ada beberapa hal yang perlu Anda ketahui yaitu:
                        • Anda harus login sebagai super user (user root)
                        • Pada file script konfigurasi Server, tanda "#" yang terdapat pada file script tersebut, menandakan bahwa script tersebut tidak dijalankan atau tidak aktif.
                        • Setelah Konfigurasi harus merestart service dari Server tersebut.
                        • Ketelitian saat mengkonfigurasi file.
                          Skema atau Topologi Jaringan untuk FTP Server
                          Gambar 10. Skema atau Topologi Jarinagn FTP Server

                          Step 1:
                          • Tentukan jenis Repositori yang akan digunakan untuk menginstall Aplikasi Server, misalkan DVD Repo atau Repo Online,
                          • Jika menggunakan DVD Repo, maka gunakan perintah "apt-cdrom add"
                          • Jika menggunakan Repo Online, maka gunakan perintah "apt-get update", di sertai dengan mengedit File konfigurasi untuk Repo Online di "/etc/apt/sources.list".
                            Pada bagian ini penulis menggunakan DVD Repo, sebelum melakukan instalasi penulis terlebih dahulu memasukkan DVD 1 Debian, kemudian menjalankan perintah berikut:
                            # apt-cdrom add
                            * Output dari perintah tersebut yaitu sebagai berkut:
                            Using CD-ROM mount point /media/cdrom0/
                            Identifying.. [fc8e621edc1562bcd78d25ecb0e9d1e1-2]
                            Scanning disc for index files..
                            Found 2 package indexes, 0 source indexes, 0 translation indexes and 0 signatures
                            This disc is called:
                            'Debian GNU/Linux 6.0.3 _Squeeze_ - Official i386 DVD Binary-1 20111008-13:01'
                            Reading Package Indexes... Done
                            Writing new source list
                            Source list entries for this disc are:
                            deb cdrom:[Debian GNU/Linux 6.0.3 _Squeeze_ - Official i386 DVD Binary-1 20111008-13:01]/ squeeze contrib main
                            Repeat this process for the rest of the CDs in your set.
                            #

                            Step2:
                            * Jalankan perintah berikut:
                            # apt-get -y install proftpd
                            * kemudian Output dari perintah tersebut yaitu:
                            Reading package lists... Done
                            Building dependency tree
                            Reading state information... Done
                            Note, selecting 'proftpd-basic' instead of 'proftpd'
                            The following extra packages will be installed:
                              libfile-copy-recursive-perl proftpd-basic update-inetd
                            Suggested packages:
                              proftpd-doc proftpd-mod-mysql proftpd-mod-pgsql proftpd-mod-ldap
                              proftpd-mod-odbc proftpd-mod-sqlite openbsd-inetd inet-superserver
                            The following NEW packages will be installed:

                            * lalu akan tampil menu seperti berikut:
                            Gambar 11. Menu Package Configuration
                            * Pada menu tersebut pilihlah "standalone" kemudian "Enter", setelah itu akan tampil pesan seperti berikut:
                            The following NEW packages will be installed:
                              libfile-copy-recursive-perl proftpd-basic update-inetd
                            0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
                            Need to get 0 B/2,372 kB of archives.
                            After this operation, 4,000 kB of additional disk space will be used.
                            Preconfiguring packages ...
                            Selecting previously deselected package libfile-copy-recursive-perl.
                            (Reading database ... 24049 files and directories currently installed.)
                            Unpacking libfile-copy-recursive-perl (from .../libfile-copy-recursive-perl_0.38-1_all.deb) ...
                            Selecting previously deselected package update-inetd.
                            Unpacking update-inetd (from .../update-inetd_4.38+nmu1+squeeze1_all.deb) ...
                            Selecting previously deselected package proftpd-basic.
                            Unpacking proftpd-basic (from .../proftpd-basic_1.3.3a-6squeeze1_i386.deb) ...
                            Processing triggers for man-db ...
                            Setting up libfile-copy-recursive-perl (0.38-1) ...
                            Setting up update-inetd (4.38+nmu1+squeeze1) ...
                            Setting up proftpd-basic (1.3.3a-6squeeze1) ...
                            grep: /etc/inetd.conf: No such file or directory
                            Warning: The home dir /var/run/proftpd you specified can't be accessed: No such file or directory
                            Adding system user `proftpd' (UID 104) ...
                            Adding new user `proftpd' (UID 104) with group `nogroup' ...
                            Not creating home directory `/var/run/proftpd'.
                            Adding system user `ftp' (UID 105) ...
                            Adding new user `ftp' (UID 105) with group `nogroup' ...
                            Creating home directory `/home/ftp' ...
                            `/usr/share/proftpd/templates/welcome.msg' -> `/home/ftp/welcome.msg.proftpd-new'
                            Starting ftp server: proftpd.
                            #
                            * Jika semua output dari perintah yang dijalankan seperti diatas, maka dapat diartikan bahwa Instalasi Proftpd berhasil, kemudian kita lanjut ke Konfigurasi Proftpd, sebagai berikut:


                            Konfigurasi ProFTPD (FTP Server Non-Anonymous).

                            Diketahui:
                            Jenis FTP Server = FTP Server Non-Anonymous
                            user yang digunakan untuk login = user1
                            file yang akan dikonfigurasi = "/etc/proftpd/proftpd.conf"
                            IP Address FTP Server = 192.168.3.1
                            IP Address FTP Client = 192.168.3.3
                            Penyelesaian:
                            * Jalankan perintah berikut:
                            # pico /etc/proftpd/proftpd.conf
                            * kemudian edit script berikut:
                            Gambar 12. File konfigurasi Proftpd
                            * ganti "on" menjadi "off" seperti berkut:
                            Gambar 13. File konfigurasi Proftd
                            * Setelah mengedit script dari file "/etc/proftpd/proftpd.conf" lalu simpanlah file tersebut dengan perintah: "CTRL + X", kemudian tekan "Y", lalu "Enter".
                            * Kemudian selanjutnya, buatlah user account untuk mengakses FTP Server yaitu dengan perintah berikut:
                            # adduser user1

                            Adding user `user1' ...
                            Adding new group `user1' (1002) ...
                            Adding new user `user1' (1002) with group `user1' ...
                            Creating home directory `/home/user1' ...
                            Copying files from `/etc/skel' ...
                            Enter new UNIX password: 123 (Masukkan password untuk user account "user1")

                            Retype new UNIX password: 123 (masukkan password yang sama dengan yang sebelumnya)
                            passwd: password updated successfully
                            Changing the user information for user1
                            Enter the new value, or press ENTER for the default
                                    Full Name []: Achmad Yusri Afandi (Masukkan Nama Lengkapnya)

                                    Room Number []: (tekan enter saja)
                                    Work Phone []:
                            (tekan enter saja)
                                    Home Phone []: (tekan enter saja)
                                    Other []: (tekan enter saja)
                            Is the information correct? [Y/n] Y (lalu enter)

                            #
                            * lalu Restart-lah service dari Proftpd dengan perintah berikut:
                            # /etc/init.d/proftpd restart
                            * Output dari perintah tersebut:
                            Stopping ftp server: proftpd.
                            Starting ftp server: proftpd.
                            #
                            * Jika output dari perintah restart service seperti diatas, maka konfigurasi FTP Server Anda berhasil, kemudian lakukan pengujian FTP server di FTP Client melalui Web Browser, seperti Mozilla Firefox atau Google Chrome.



                            Menguji Konfigurasi FTP Server Non-Anonymous.
                            Diketahui:
                            Web Browser yang digunakan = Mozilla Firefox
                            Alamat FTP Server = "ftp://192.168.3.1"
                            username = user1
                            password = 123
                            Penyelesaian:
                            Gambar 14. Login ke Halaman FTP
                            * Setelah Anda memasukkan username dan password dan meng-klik Ok, lalu akan tampil halaman ftp seperti berikut:
                            Gambar 15. Halaman FTP setelah login menggunakan username dan password yang valid


                            Konfigurasi ProFTPD (FTP Server Anonymous "Passive FTP")
                            Pada bagian ini penulis akan menjelaskan tentang cara mengkonfigurasi Proftpd untuk FTP Server Anonymous, berikut langkah-langkahnya:
                            Diketahui:
                            Jenis FTP Server = FTP Server Anonymous
                            file yang akan dikonfigurasi = "/etc/proftpd/proftpd.conf"
                            IP Address FTP Server = 192.168.3.1
                            IP Address FTP Client = 192.168.3.3
                            Penyelesaian:
                            * Jalankan perintah berikut:

                            # pico /etc/proftpd/proftpd.conf
                            * Kemudian editlah file script berikut:

                            # <Anonymous ~ftp>
                            #   User                                ftp

                            #   Group                               nogroup
                            #   # We want clients to be able to login with "anonymous" as well as "ftp"
                            #   UserAlias                   anonymous ftp
                            #   # Cosmetic changes, all files belongs to ftp user
                            #   DirFakeUser on ftp
                            #   DirFakeGroup on ftp
                            #
                            #   RequireValidShell           off
                            #
                            #   # Limit the maximum number of anonymous logins
                            #   MaxClients                  10
                            #
                            #   # We want 'welcome.msg' displayed at login, and '.message' displayed
                            #   # in each newly chdired directory.
                            #   DisplayLogin                        welcome.msg
                            #   DisplayChdir                .message
                            #
                            #   # Limit WRITE everywhere in the anonymous chroot
                            #   <Directory *>
                            #     <Limit WRITE>

                            #       DenyAll
                            #     </Limit>
                            #   </Directory>
                            #
                            #   # Uncomment this if you're brave.
                            #   # <Directory incoming>
                            #   #   # Umask 022 is a good standard umask to prevent new files and dirs
                            #   #   # (second parm) from being group and world writable.
                            #   #   Umask                           022  022
                            #   #            <Limit READ WRITE>
                            #   #            DenyAll
                            #   #            </Limit>
                            #   </Directory>
                            #
                            #   # Uncomment this if you're brave.
                            #   # <Directory incoming>
                            #   #   # Umask 022 is a good standard umask to prevent new files and dirs
                            #   #   # (second parm) from being group and world writable.
                            #   #   Umask                           022  022
                            #   #            <Limit READ WRITE>
                            #   #            DenyAll
                            #   #            </Limit>
                            #   #            <Limit STOR>
                            #   #            AllowAll
                            #   #            </Limit>
                            #   # </Directory>
                            #
                            # </Anonymous>
                            * Carilah Script diatas, kemudian Editlah script diatas menjadi seperti berikut:
                             <Anonymous ~ftp>
                               User                                ftp
                               Group                               nogroup
                               # We want clients to be able to login with "anonymous" as well as "ftp"
                               UserAlias                   anonymous ftp
                               # Cosmetic changes, all files belongs to ftp user
                               DirFakeUser on ftp
                               DirFakeGroup on ftp

                               RequireValidShell           off

                               # Limit the maximum number of anonymous logins
                               MaxClients                  10

                               # We want 'welcome.msg' displayed at login, and '.message' displayed
                               # in each newly chdired directory.
                               DisplayLogin                        welcome.msg
                               DisplayChdir                .message

                               # Limit WRITE everywhere in the anonymous chroot
                               <Directory *>
                                 <Limit WRITE>

                                   DenyAll
                                </Limit>
                               </Directory>

                               # Uncomment this if you're brave.
                                <Directory incoming>
                                  # Umask 022 is a good standard umask to prevent new files and dirs
                                  # (second parm) from being group and world writable.
                                  Umask                           022  022
                                           <Limit READ WRITE>
                                           DenyAll
                                           </Limit>
                               </Directory>

                               # Uncomment this if you're brave.
                                <Directory incoming>
                                  # Umask 022 is a good standard umask to prevent new files and dirs
                                  # (second parm) from being group and world writable.
                                  Umask                           022  022
                                           <Limit READ WRITE>
                                           DenyAll
                                           </Limit>
                                           <Limit STOR>
                                           AllowAll
                                           </Limit>
                                </Directory>

                            </Anonymous>
                            * Setelah itu simpanlah file tersebut dengan perintah: "CTRL + X", lalu tekan "Y", kemudian "Enter". kemudian akan tampil shell prompt seperti berikut:
                            #
                            * Kemudian restart-lah service dari Proftpd dengan perintah berikut:
                            # /etc/init.d/proftpd restart
                            * Output dari perintah restart service yaitu sebagai berikut:
                            Stopping ftp server: proftpd.
                            Starting ftp server: proftpd.




                            Menguji Konfigurasi FTP Server Anonymous.

                            Diketahui:
                            Web Browser yang digunakan = Mozilla Firefox
                            Alamat FTP Server = "ftp://192.168.3.1"
                            Penyelesaian:
                            Gambar 16. Memasukkan alamat FTP Server di Address Bar Web Browser
                            * Kemudian setelah memasukkan alamat dari FTP Server, lalu tekan Enter, kemudian akan tampil halaman dari FTP Server tanpa authentikasi seperti berikut:
                            Gambar 17. Halaman FTP Server Anonymous.


                            Instalasi FTP Server dengan VSFTPD
                            Sebelum melakukan instalasi FTP server, ada beberapa hal yang perlu Anda ketahui yaitu:
                            • Anda harus login sebagai super user (user root)
                            • Pada file script konfigurasi Server, tanda "#" yang terdapat pada file script tersebut, menandakan bahwa script tersebut tidak dijalankan atau tidak aktif.
                            • Setelah Konfigurasi harus merestart service dari Server tersebut.
                            • Ketelitian saat mengkonfigurasi file.
                            Skema atau topologi jaringan FTP Server
                            Gambar 18. Skema atau Topologi Jaringan FTP Server

                            Step 1:
                            1. Tentukan jenis Repositori yang akan digunakan untuk menginstall Aplikasi Server, misalkan DVD Repo atau Repo Online,
                            2. Jika menggunakan DVD Repo, maka gunakan perintah "apt-cdrom add"
                            3. Jika menggunakan Repo Online, maka gunakan perintah "apt-get update", di sertai dengan mengedit File konfigurasi untuk Repo Online di "/etc/apt/sources.list".
                            Pada bagian ini penulis menggunakan DVD Repo, sebelum melakukan instalasi penulis terlebih dahulu memasukkan DVD 1 Debian, kemudian menjalankan perintah berikut:
                            # apt-cdrom add
                            * Output dari perintah tersebut yaitu sebagai berkut:
                            Using CD-ROM mount point /media/cdrom0/
                            Identifying.. [fc8e621edc1562bcd78d25ecb0e9d1e1-2]
                            Scanning disc for index files..
                            Found 2 package indexes, 0 source indexes, 0 translation indexes and 0 signatures
                            This disc is called:
                            'Debian GNU/Linux 6.0.3 _Squeeze_ - Official i386 DVD Binary-1 20111008-13:01'
                            Reading Package Indexes... Done
                            Writing new source list
                            Source list entries for this disc are:
                            deb cdrom:[Debian GNU/Linux 6.0.3 _Squeeze_ - Official i386 DVD Binary-1 20111008-13:01]/ squeeze contrib main
                            Repeat this process for the rest of the CDs in your set.
                            #

                            Step2:
                            * Jalankan perintah berikut:
                            # apt-get -y install vsftpd openssl
                            * Output dari perintah tersebut yaitu sebagai berikut:
                            Reading package lists... Done
                            Building dependency tree
                            Reading state information... Done
                            The following packages were automatically installed and are no longer required:
                              libfile-copy-recursive-perl update-inetd
                            Use 'apt-get autoremove' to remove them.
                            Suggested packages:
                              ca-certificates
                            The following NEW packages will be installed:
                              openssl vsftpd
                            0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
                            Need to get 0 B/1,195 kB of archives.
                            After this operation, 2,892 kB of additional disk space will be used.
                            Preconfiguring packages ...
                            Selecting previously deselected package openssl.
                            (Reading database ... 23643 files and directories currently installed.)
                            Unpacking openssl (from .../openssl_0.9.8o-4squeeze3_i386.deb) ...
                            Selecting previously deselected package vsftpd.
                            Unpacking vsftpd (from .../vsftpd_2.3.2-3+squeeze2_i386.deb) ...
                            Processing triggers for man-db ...
                            Setting up openssl (0.9.8o-4squeeze3) ...
                            Setting up vsftpd (2.3.2-3+squeeze2) ...
                            Starting FTP server: vsftpd.
                            #
                            * Jika output dari perintah instalasi aplikasi server untuk FTP server yaitu vsftpd dan openssl, maka instalasi tersebut dinyatakan berhasil, kemudian kita akan melanjutkan ke konfigurasi FTP Server dengan vsftpd, berikut langkah-langkahnya:



                            Konfigurasi VSFTPD (FTP Server Non-Anonymous "Active FTP Data Connection")

                            Diketahui:
                            Jenis FTP Server = FTP Server Non-Anonymous
                            user yang digunakan untuk login = nonanonym1
                            file yang akan dikonfigurasi = "/etc/vsftpd.conf"
                            lokasi file ssl = "/etc/vsftpd/"
                            IP Address FTP Server = 192.168.3.1
                            IP Address FTP Client = 192.168.3.3
                            Penyelesaian:
                            * Jalankan perintah membuat direktori untuk sertifikat OpenSSL, dengan perintah berikut:
                            # mkdir /etc/vsftpd

                            * Kemudian, Jalankan perintah membuat file sertifikat untuk OpenSSL, berikut
                            # openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout /etc/vsftpd/vsftpd.pem -out /etc/vsftpd/vsftpd.pem
                            *** Perhatian !!!: Jalankan perintah diatas dengan tidak memisahkannya dengan Enter, namun masing-masing kata tersebut di pisahkan oleh tanda "spasi" atau dalam artian perintah tersebut bersambung. ***
                            * output dari perintah diatas yaitu seperti berikut:
                            Generating a 1024 bit RSA private key
                            .++++++
                            ...........++++++
                            writing new private key to '/etc/vsftpd/vsftpd.pem'
                            -----
                            You are about to be asked to enter information that will be incorporated
                            into your certificate request.
                            What you are about to enter is what is called a Distinguished Name or a DN.
                            There are quite a few fields but you can leave some blank
                            For some fields there will be a default value,
                            If you enter '.', the field will be left blank.
                            -----
                            Country Name (2 letter code) [AU]:ID (Isi dengan "ID")
                            State or Province Name (full name) [Some-State]:South Sulawesi (Isi dengan Nama provisi Anda)
                            Locality Name (eg, city) []:Makassar (isi dengan nama kota Anda)
                            Organization Name (eg, company) [Internet Widgits Pty Ltd]:noname (bisa "noname" saja)
                            Organizational Unit Name (eg, section) []:noname (bisa "noname" saja)
                            Common Name (eg, YOUR name) []:Achmad Yusri Afandi (isi dengan nama lengkap Anda)
                            Email Address []:yusri@opstechno.com (isi dengan Alamat Email Anda)
                            #

                            * Setelah Anda membuat sertifikasi untuk OpenSSL, lalu editlah file konfigurasi "vsftpd" berikut:
                            # Example config file /etc/vsftpd.conf
                            #
                            # The default compiled in settings are fairly paranoid. This sample file
                            # loosens things up a bit, to make the ftp daemon more usable.
                            # Please see vsftpd.conf.5 for all compiled in defaults.
                            #
                            # READ THIS: This example file is NOT an exhaustive list of vsftpd options.
                            # Please read the vsftpd.conf.5 manual page to get a full idea of vsftpd's
                            # capabilities.
                            #
                            #
                            # Run standalone?  vsftpd can run either from an inetd or as a standalone
                            # daemon started from an initscript.
                            listen=YES
                            #
                            # Run standalone with IPv6?
                            # Like the listen parameter, except vsftpd will listen on an IPv6 socket
                            # instead of an IPv4 one. This parameter and the listen parameter are mutually
                            # exclusive.
                            #listen_ipv6=YES
                            #
                            # Allow anonymous FTP? (Beware - allowed by default if you comment this out).
                            anonymous_enable=YES
                            #
                            # Uncomment this to allow local users to log in.
                            #local_enable=YES
                            #
                            # Uncomment this to enable any form of FTP write command.
                            #write_enable=YES
                            #
                            # Default umask for local users is 077. You may wish to change this to 022,
                            # if your users expect that (022 is used by most other ftpd's)
                            #local_umask=022
                            #
                            # Uncomment this to allow the anonymous FTP user to upload files. This only
                            # has an effect if the above global write enable is activated. Also, you will
                            # obviously need to create a directory writable by the FTP user.
                            #anon_upload_enable=YES
                            #
                            # Uncomment this if you want the anonymous FTP user to be able to create
                            # new directories.
                            #anon_mkdir_write_enable=YES
                            #
                            # Activate directory messages - messages given to remote users when they
                            # go into a certain directory.
                            dirmessage_enable=YES
                            #
                            # If enabled, vsftpd will display directory listings with the time
                            # in  your  local  time  zone.  The default is to display GMT. The
                            # times returned by the MDTM FTP command are also affected by this
                            # option.
                            use_localtime=YES
                            #
                            # Activate logging of uploads/downloads.
                            xferlog_enable=YES
                            #
                            # Make sure PORT transfer connections originate from port 20 (ftp-data).
                            connect_from_port_20=YES
                            #
                            # If you want, you can arrange for uploaded anonymous files to be owned by
                            # a different user. Note! Using "root" for uploaded files is not
                            # recommended!
                            #chown_uploads=YES
                            #chown_username=whoever
                            #
                            # You may override where the log file goes if you like. The default is shown
                            # below.
                            #xferlog_file=/var/log/vsftpd.log
                            #
                            # If you want, you can have your log file in standard ftpd xferlog format.
                            # Note that the default log file location is /var/log/xferlog in this case.
                            #xferlog_std_format=YES
                            #
                            # You may change the default value for timing out an idle session.
                            #idle_session_timeout=600
                            #
                            # You may change the default value for timing out a data connection.
                            #data_connection_timeout=120
                            #
                            # It is recommended that you define on your system a unique user which the
                            # ftp server can use as a totally isolated and unprivileged user.
                            #nopriv_user=ftpsecure
                            #
                            # Enable this and the server will recognise asynchronous ABOR requests. Not
                            # recommended for security (the code is non-trivial). Not enabling it,
                            # however, may confuse older FTP clients.
                            #async_abor_enable=YES
                            #
                            # By default the server will pretend to allow ASCII mode but in fact ignore
                            # the request. Turn on the below options to have the server actually do ASCII
                            # mangling on files when in ASCII mode.
                            # Beware that on some FTP servers, ASCII support allows a denial of service
                            # attack (DoS) via the command "SIZE /big/file" in ASCII mode. vsftpd
                            # predicted this attack and has always been safe, reporting the size of the
                            # raw file.
                            # ASCII mangling is a horrible feature of the protocol.
                            #ascii_upload_enable=YES
                            #ascii_download_enable=YES
                            #
                            # You may fully customise the login banner string:
                            #ftpd_banner=Welcome to blah FTP service.
                            #
                            # You may specify a file of disallowed anonymous e-mail addresses. Apparently
                            # useful for combatting certain DoS attacks.
                            #deny_email_enable=YES
                            # (default follows)
                            #banned_email_file=/etc/vsftpd.banned_emails
                            #
                            # You may restrict local users to their home directories.  See the FAQ for
                            # the possible risks in this before using chroot_local_user or
                            # chroot_list_enable below.
                            #chroot_local_user=YES
                            #
                            # You may specify an explicit list of local users to chroot() to their home
                            # directory. If chroot_local_user is YES, then this list becomes a list of
                            # users to NOT chroot().
                            #chroot_local_user=YES
                            #chroot_list_enable=YES
                            # (default follows)
                            #chroot_list_file=/etc/vsftpd.chroot_list
                            #
                            # You may activate the "-R" option to the builtin ls. This is disabled by
                            # default to avoid remote users being able to cause excessive I/O on large
                            # sites. However, some broken FTP clients such as "ncftp" and "mirror" assume
                            # the presence of the "-R" option, so there is a strong case for enabling it.
                            #ls_recurse_enable=YES
                            #
                            # Debian customization
                            #
                            # Some of vsftpd's settings don't fit the Debian filesystem layout by
                            # default.  These settings are more Debian-friendly.
                            #
                            # This option should be the name of a directory which is empty.  Also, the
                            # directory should not be writable by the ftp user. This directory is used
                            # as a secure chroot() jail at times vsftpd does not require filesystem
                            # access.
                            secure_chroot_dir=/var/run/vsftpd/empty
                            #
                            # This string is the name of the PAM service vsftpd will use.
                            pam_service_name=vsftpd
                            #
                            # This option specifies the location of the RSA certificate to use for SSL
                            # encrypted connections.
                            rsa_cert_file=/etc/ssl/private/vsftpd.pem
                            * Ubahlah beberapa script diatas menjadi seperti berikut:
                            # Example config file /etc/vsftpd.conf
                            #
                            # The default compiled in settings are fairly paranoid. This sample file
                            # loosens things up a bit, to make the ftp daemon more usable.
                            # Please see vsftpd.conf.5 for all compiled in defaults.
                            #
                            # READ THIS: This example file is NOT an exhaustive list of vsftpd options.
                            # Please read the vsftpd.conf.5 manual page to get a full idea of vsftpd's
                            # capabilities.
                            #
                            #
                            # Run standalone?  vsftpd can run either from an inetd or as a standalone
                            # daemon started from an initscript.
                            listen=YES
                            #
                            # Run standalone with IPv6?
                            # Like the listen parameter, except vsftpd will listen on an IPv6 socket
                            # instead of an IPv4 one. This parameter and the listen parameter are mutually
                            # exclusive.
                            #listen_ipv6=YES
                            #
                            # Allow anonymous FTP? (Beware - allowed by default if you comment this out).
                            anonymous_enable=NO
                            #
                            # Uncomment this to allow local users to log in.
                            local_enable=YES
                            #
                            # Uncomment this to enable any form of FTP write command.
                            write_enable=YES
                            #
                            # Default umask for local users is 077. You may wish to change this to 022,
                            # if your users expect that (022 is used by most other ftpd's)
                            #local_umask=022
                            #
                            # Uncomment this to allow the anonymous FTP user to upload files. This only
                            # has an effect if the above global write enable is activated. Also, you will
                            # obviously need to create a directory writable by the FTP user.
                            anon_upload_enable=YES
                            #
                            # Uncomment this if you want the anonymous FTP user to be able to create
                            # new directories.
                            #anon_mkdir_write_enable=YES
                            #
                            # Activate directory messages - messages given to remote users when they
                            # go into a certain directory.
                            dirmessage_enable=YES
                            #
                            # If enabled, vsftpd will display directory listings with the time
                            # in  your  local  time  zone.  The default is to display GMT. The
                            # times returned by the MDTM FTP command are also affected by this
                            # option.
                            use_localtime=YES
                            #
                            # Activate logging of uploads/downloads.
                            xferlog_enable=YES
                            #
                            # Make sure PORT transfer connections originate from port 20 (ftp-data).
                            connect_from_port_20=YES

                            # Script Tambahan
                            anon_root=/srv/ftp
                            delete_failed_uploads=YES
                            ssl_enable=YES
                            allow_anon_ssl=NO
                            force_local_data_ssl=NO
                            force_local_logins_ssl=NO
                            ssl_tlsv1=YES
                            ssl_tlsv2=NO
                            ssl_tlsv3=NO


                            #
                            # If you want, you can arrange for uploaded anonymous files to be owned by
                            # a different user. Note! Using "root" for uploaded files is not
                            # recommended!
                            #chown_uploads=YES
                            #chown_username=whoever
                            #
                            # You may override where the log file goes if you like. The default is shown
                            # below.
                            #xferlog_file=/var/log/vsftpd.log
                            #
                            # If you want, you can have your log file in standard ftpd xferlog format.
                            # Note that the default log file location is /var/log/xferlog in this case.
                            #xferlog_std_format=YES
                            #
                            # You may change the default value for timing out an idle session.
                            #idle_session_timeout=600
                            #
                            # You may change the default value for timing out a data connection.
                            #data_connection_timeout=120
                            #
                            # It is recommended that you define on your system a unique user which the
                            # ftp server can use as a totally isolated and unprivileged user.
                            #nopriv_user=ftpsecure
                            #
                            # Enable this and the server will recognise asynchronous ABOR requests. Not
                            # recommended for security (the code is non-trivial). Not enabling it,
                            # however, may confuse older FTP clients.
                            #async_abor_enable=YES
                            #
                            # By default the server will pretend to allow ASCII mode but in fact ignore
                            # the request. Turn on the below options to have the server actually do ASCII
                            # mangling on files when in ASCII mode.
                            # Beware that on some FTP servers, ASCII support allows a denial of service
                            # attack (DoS) via the command "SIZE /big/file" in ASCII mode. vsftpd
                            # predicted this attack and has always been safe, reporting the size of the
                            # raw file.
                            # ASCII mangling is a horrible feature of the protocol.
                            #ascii_upload_enable=YES
                            #ascii_download_enable=YES
                            #
                            # You may fully customise the login banner string:
                            ftpd_banner=Welcome to My FTP service.
                            #
                            # You may specify a file of disallowed anonymous e-mail addresses. Apparently
                            # useful for combatting certain DoS attacks.
                            #deny_email_enable=YES
                            # (default follows)
                            #banned_email_file=/etc/vsftpd.banned_emails
                            #
                            # You may restrict local users to their home directories.  See the FAQ for
                            # the possible risks in this before using chroot_local_user or
                            # chroot_list_enable below.
                            #chroot_local_user=YES
                            #
                            # You may specify an explicit list of local users to chroot() to their home
                            # directory. If chroot_local_user is YES, then this list becomes a list of
                            # users to NOT chroot().
                            #chroot_local_user=YES
                            #chroot_list_enable=YES
                            # (default follows)
                            #chroot_list_file=/etc/vsftpd.chroot_list
                            #
                            # You may activate the "-R" option to the builtin ls. This is disabled by
                            # default to avoid remote users being able to cause excessive I/O on large
                            # sites. However, some broken FTP clients such as "ncftp" and "mirror" assume
                            # the presence of the "-R" option, so there is a strong case for enabling it.
                            #ls_recurse_enable=YES
                            #
                            # Debian customization
                            #
                            # Some of vsftpd's settings don't fit the Debian filesystem layout by
                            # default.  These settings are more Debian-friendly.
                            #
                            # This option should be the name of a directory which is empty.  Also, the
                            # directory should not be writable by the ftp user. This directory is used
                            # as a secure chroot() jail at times vsftpd does not require filesystem
                            # access.
                            secure_chroot_dir=/var/run/vsftpd
                            #
                            # This string is the name of the PAM service vsftpd will use.
                            pam_service_name=vsftpd
                            #
                            # This option specifies the location of the RSA certificate to use for SSL
                            # encrypted connections.
                            rsa_cert_file=/etc/vsftpd/vsftpd.pem
                            rsa_cert_key_file=/etc/vsftpd/vsftpd.pem
                            * Setelah itu Sesuaikan Script default Anda dengan script yang berwarna "biru" diatas, kemudian simapan file tersebut dengan cara menekan tombol kombinasi "CTRL +X", lalu tekan "Y", kemudian tekan "Enter".
                            # adduser nonanonym1

                            Adding user `nonanonym1' ...
                            Adding new group `
                            nonanonym1' (1002) ...
                            Adding new user `user1' (1002) with group `
                            nonanonym1' ...
                            Creating home directory `/home/
                            nonanonym1' ...
                            Copying files from `/etc/skel' ...
                            Enter new UNIX password: 123 (Masukkan password untuk user account "user1")

                            Retype new UNIX password: 123 (masukkan password yang sama dengan yang sebelumnya)
                            passwd: password updated successfully
                            Changing the user information for
                            nonanonym1
                            Enter the new value, or press ENTER for the default
                                    Full Name []: Achmad Yusri Afandi (Masukkan Nama Lengkapnya)

                                    Room Number []: (tekan enter saja)
                                    Work Phone []:
                            (tekan enter saja)
                                    Home Phone []: (tekan enter saja)
                                    Other []: (tekan enter saja)
                            Is the information correct? [Y/n] Y (lalu enter)
                            #
                            * Kemudian restart-lah service dari vsftpd dengan perintah berikut:
                            # /etc/init.d/vsftpd restart
                            * kemudian output dari perintah tersebut yaitu sebagai berikut:
                            Stopping FTP server: vsftpd.
                            Starting FTP server: vsftpd.



                            Menguji Konfigurasi FTP Server Non-Anonymous.
                            Diketahui:
                            Web Browser yang digunakan = Mozilla Firefox
                            Alamat FTP Server = "ftp://192.168.3.1"
                            username = nonanonym1
                            password = 123
                            Penyelesaian:
                            Gambar 14. Login ke Halaman FTP
                            * Setelah Anda memasukkan username dan password dan meng-klik Ok, lalu akan tampil halaman ftp seperti berikut:
                            Gambar 15. Halaman FTP setelah login menggunakan username dan password yang valid


                            Konfigurasi VSFTPD (FTP Server Anonymous "Passive FTP Data Connection")
                            Pada bagian ini penulis akan menjelaskan tentang cara mengkonfigurasi VSFTPD untuk FTP Server Anonymous, berikut langkah-langkahnya:
                            Diketahui:
                            Jenis FTP Server = FTP Server Anonymous
                            file yang akan dikonfigurasi = "/etc/vsftpd.conf"
                            IP Address FTP Server = 192.168.3.1
                            IP Address FTP Client = 192.168.3.3
                            Penyelesaian:
                            * Karena Sebelumnya Anda telah mempelajari tentang konfigurasi FTP Server Non-Anonymous dengan "vsftpd",.. Nah.., jika Anda ingin mengubahkan atau mengkonfiguarsi vsftpd menjadi FTP Server Anonymous, maka anda tinggal mengedit script "anonymous_enable=NO" di file "/etc/vsftpd.conf" menjad "anonymous_enable=YES". berikut contoh file konfigurasinya:

                            # Example config file /etc/vsftpd.conf
                            #
                            # The default compiled in settings are fairly paranoid. This sample file
                            # loosens things up a bit, to make the ftp daemon more usable.
                            # Please see vsftpd.conf.5 for all compiled in defaults.
                            #
                            # READ THIS: This example file is NOT an exhaustive list of vsftpd options.
                            # Please read the vsftpd.conf.5 manual page to get a full idea of vsftpd's
                            # capabilities.
                            #
                            #
                            # Run standalone?  vsftpd can run either from an inetd or as a standalone
                            # daemon started from an initscript.
                            listen=YES
                            #
                            # Run standalone with IPv6?
                            # Like the listen parameter, except vsftpd will listen on an IPv6 socket
                            # instead of an IPv4 one. This parameter and the listen parameter are mutually
                            # exclusive.
                            #listen_ipv6=YES
                            #
                            # Allow anonymous FTP? (Beware - allowed by default if you comment this out).
                            anonymous_enable=YES
                            #
                            # Uncomment this to allow local users to log in.
                            local_enable=YES
                            #
                            # Uncomment this to enable any form of FTP write command.
                            write_enable=YES
                            #
                            # Default umask for local users is 077. You may wish to change this to 022,
                            # if your users expect that (022 is used by most other ftpd's)
                            #local_umask=022
                            #
                            # Uncomment this to allow the anonymous FTP user to upload files. This only
                            # has an effect if the above global write enable is activated. Also, you will
                            # obviously need to create a directory writable by the FTP user.
                            anon_upload_enable=YES
                            #
                            # Uncomment this if you want the anonymous FTP user to be able to create
                            # new directories.
                            #anon_mkdir_write_enable=YES
                            #
                            # Activate directory messages - messages given to remote users when they
                            # go into a certain directory.
                            dirmessage_enable=YES
                            #
                            # If enabled, vsftpd will display directory listings with the time
                            # in  your  local  time  zone.  The default is to display GMT. The
                            # times returned by the MDTM FTP command are also affected by this
                            # option.
                            use_localtime=YES
                            #
                            # Activate logging of uploads/downloads.
                            xferlog_enable=YES
                            #
                            # Make sure PORT transfer connections originate from port 20 (ftp-data).
                            connect_from_port_20=YES

                            # Script Tambahan
                            anon_root=/srv/ftp
                            delete_failed_uploads=YES
                            ssl_enable=YES
                            allow_anon_ssl=NO
                            force_local_data_ssl=NO
                            force_local_logins_ssl=NO
                            ssl_tlsv1=YES
                            ssl_tlsv2=NO
                            ssl_tlsv3=NO


                            #
                            # If you want, you can arrange for uploaded anonymous files to be owned by
                            # a different user. Note! Using "root" for uploaded files is not
                            # recommended!
                            #chown_uploads=YES
                            #chown_username=whoever
                            #
                            # You may override where the log file goes if you like. The default is shown
                            # below.
                            #xferlog_file=/var/log/vsftpd.log
                            #
                            # If you want, you can have your log file in standard ftpd xferlog format.
                            # Note that the default log file location is /var/log/xferlog in this case.
                            #xferlog_std_format=YES
                            #
                            # You may change the default value for timing out an idle session.
                            #idle_session_timeout=600
                            #
                            # You may change the default value for timing out a data connection.
                            #data_connection_timeout=120
                            #
                            # It is recommended that you define on your system a unique user which the
                            # ftp server can use as a totally isolated and unprivileged user.
                            #nopriv_user=ftpsecure
                            #
                            # Enable this and the server will recognise asynchronous ABOR requests. Not
                            # recommended for security (the code is non-trivial). Not enabling it,
                            # however, may confuse older FTP clients.
                            #async_abor_enable=YES
                            #
                            # By default the server will pretend to allow ASCII mode but in fact ignore
                            # the request. Turn on the below options to have the server actually do ASCII
                            # mangling on files when in ASCII mode.
                            # Beware that on some FTP servers, ASCII support allows a denial of service
                            # attack (DoS) via the command "SIZE /big/file" in ASCII mode. vsftpd
                            # predicted this attack and has always been safe, reporting the size of the
                            # raw file.
                            # ASCII mangling is a horrible feature of the protocol.
                            #ascii_upload_enable=YES
                            #ascii_download_enable=YES
                            #
                            # You may fully customise the login banner string:
                            ftpd_banner=Welcome to My FTP service.
                            #
                            # You may specify a file of disallowed anonymous e-mail addresses. Apparently
                            # useful for combatting certain DoS attacks.
                            #deny_email_enable=YES
                            # (default follows)
                            #banned_email_file=/etc/vsftpd.banned_emails
                            #
                            # You may restrict local users to their home directories.  See the FAQ for
                            # the possible risks in this before using chroot_local_user or
                            # chroot_list_enable below.
                            #chroot_local_user=YES
                            #
                            # You may specify an explicit list of local users to chroot() to their home
                            # directory. If chroot_local_user is YES, then this list becomes a list of
                            # users to NOT chroot().
                            #chroot_local_user=YES
                            #chroot_list_enable=YES
                            # (default follows)
                            #chroot_list_file=/etc/vsftpd.chroot_list
                            #
                            # You may activate the "-R" option to the builtin ls. This is disabled by
                            # default to avoid remote users being able to cause excessive I/O on large
                            # sites. However, some broken FTP clients such as "ncftp" and "mirror" assume
                            # the presence of the "-R" option, so there is a strong case for enabling it.
                            #ls_recurse_enable=YES
                            #
                            # Debian customization
                            #
                            # Some of vsftpd's settings don't fit the Debian filesystem layout by
                            # default.  These settings are more Debian-friendly.
                            #
                            # This option should be the name of a directory which is empty.  Also, the
                            # directory should not be writable by the ftp user. This directory is used
                            # as a secure chroot() jail at times vsftpd does not require filesystem
                            # access.
                            secure_chroot_dir=/var/run/vsftpd
                            #
                            # This string is the name of the PAM service vsftpd will use.
                            pam_service_name=vsftpd
                            #
                            # This option specifies the location of the RSA certificate to use for SSL
                            # encrypted connections.
                            rsa_cert_file=/etc/vsftpd/vsftpd.pem
                            rsa_cert_key_file=/etc/vsftpd/vsftpd.pem
                            * Perhatikan script yang berwarnet "merah" diatas, itulah script yang Anda ubah dari "anonymous_enable=NO" menjadi "anonymous_enable=YES", jika script diubah menjadi "anonymous_enable=YES" maka anda mengkonfigurasi vsftpd agar menjadi FTP Server Anonymous, namun jika Anda memberikan "NO" pada script "anonymous_enable=" maka Anda mengkonfigurasi vsftp sebagai FTP Server Non-Anonymous.
                            * Setelah Anda mengedit file tersebut, lalu simpanlah file konfigurasinya dengan cara: menekan tombol kombinasi "CTRL + X", lalu Tekan "Y", kemudian "Enter".


                            Menguji Konfigurasi FTP Server Anonymous
                            Diketahui:
                            Web Browser yang digunakan = Mozilla Firefox
                            Alamat FTP Server = "ftp://192.168.3.1"
                            Penyelesaian:
                            Gambar 16. Memasukkan alamat FTP Server di Address Bar Web Browser
                            * Kemudian setelah memasukkan alamat dari FTP Server, lalu tekan Enter, kemudian akan tampil halaman dari FTP Server tanpa authentikasi seperti berikut:
                            Gambar 17. Halaman FTP Server Anonymous.



                            Perbedaan aplikasi server Proftpd dengan VSFTPD
                            Kedua aplikasi untuk FTP Server tersebut, memiliki masing-masing kelebihan dan kekurangannya. Aplikasi Proftpd merupakan aplikasi yang digunakan untuk FTP Server dengan konfigurasi yang cukup mudah, dan tidak memberikan kesulitan kepada Administrator saat mengkonfigurasi aplikasi server Proftpd, namun kelemahan dari aplikasi Server Proftpd yaitu pada saat aplikasi Proftpd ini hendak dikonfigurasi dengan menyertakan sertifikast OpenSSL, maka FTP Server tidak dapat diakses menggunakan Web Browser, namun harus menggunakan aplikasi khusus untuk FTP Client seperti "FlieZilla", "CoreFTP", dll. Sedangkan pada aplikasi VSFTPD walaupun pada saat dikonfigurasi terdapat sedikit kesulitan namun cukup fleksibel jika kita ingin mengkonfigurasi FTP Server Anonymous dan Non-Anonymous, disamping itu VSFTPD jika saat dikonfigurasi menyertakan sertifikat OpenSSL, FTP Server dapat diakses aplikasi manapun, baik Web Browser maupun Aplikasi Khusus unuk FTP Client.


                            Koneksi FTP Server dengan FileZilla
                            Pada bagian ini penulis menggunakan Sistem Operasi Ms-Windows 7 di Client untuk mengkoneksi FTP Server dengan FileZilla, Berikut langkah-langkah:
                            * Buka Aplikasi FileZilla di menu Start MS.Windows 7, lalu akan tampil jendel FileZilla seperti berikut:
                            Gambar 18. Jendela WireShark
                            * Kemudian klik Menu File lalu klik Site Manager atau tekan tombol Kombinasi CTRL + S, kemudian akan tampil jendela Site Manager seperti berikut:
                            Gambar 19. Jendela Site Manager
                             * Pada jendela Site Manager, Klik New Site lalu akan tampil Site baru seperti gambar berikut:
                            Gambar 20. Membuat Site Baru
                            * Pada Gambar di atas, ubahlah nama site baru dengan sesuai keinginana Anda, lalu Enter. Setelah itu lakukan pengaturan seperti berikut:
                            Gambar 21. Pengaturan Site yang telah dibuat
                            * Sesuai pengaturan seperti diatas, lalu klik Connect, kemudian akan tampil proses koneksi seperti berikut:
                            Gambar 22. Koneksi FTP dengan Enkripsi SSL/TLS

                            * Gambar diatas menunjukkan bahwa Koneksi antara FTP Client dengan FTP Server, menggunakan Enkripsi SSL/TLS, dengan demikian koneksi antara FTP Client dengan FTP Server tidak dapat disadap menggunakan aplikasi sederhana seperti WireShark.

                            Perbedaan FTP Server Without SSL/TLS dengan FTP Server With SSL/TLS.
                            Terdapat sebuah perbedaan yang cukup signifikan antara FTP Server yang dibekali dengan Sertifikat TLS/SSL dengan FTP Server yang tidak dibekali dengan Sertifikat TLS/SSL. Perbedaan apakah yang terdapat antar kedua macam FTP Server tersebut? Ketika koneksi antara FTP Client dengan FTP Server dilakukan penyadapan terhadap koneksi antara FTP Server dan FTP Client, terlihat banyak hal yang bisa diketahui, mulai dari Username, Password, port yang digunakan, dan lain sebagainya. Sertifikat SSL/TLS yang digunakan pada FTP Server memberikan sedikit proteksi terhadap penyadapan koneksi antara FTP Server dengan FTP Client.

                            Disaat FTP Client berkomunikasi dengan FTP Server, dengan FTP Server yang tidak dibekali dengan Sertifikat SSL/TLS, maka koneksi yang terjadi antar FTP Server dengan FTP Client dapat terlihat dengan jelas, bahwa Username dan password yang digunakan oleh FTP Client untuk mengakses FTP Server dapat terlihat. Namun jika FTP Server yang dibekali dengan Sertifikat SSL/TLS, maka koneksi atau hubungan yang terjadi antara FTP Client dengan FTP Server tidak dapat diketahui oleh penyedap koneksi. Contoh Aplikasi yang cukup sederhana yaitu aplikasi Wireshark yang dapat digunakan untuk menyadap koneksi atapun tak terkecuali koneks FTP Server. berikut informasi yang bisa kita dapatkan dari aplikasi WireShark atas koneksi yang dilakukan oleh FTP Client dengan FTP Server:
                            Gambar 18. Koneksi FTP Server dengan Enkripsi SSL/TLS
                            Gambar diatas memperlihatkan bahwa sebuah FTP Server dengan dibekali oleh Sertifikat keamanan SSL/TLS pada saat disadap menggunakan aplikasi WireShark, maka User Name dan password tidak tampil melainkan yang tampil tulis "AUTH TLS", jika FTP Server tidak dibekali dengan sertifikat keamanan SSL/TLS, username dan password akan dengan mudah disadap seperti berikut:
                            Gambar 19. Koneksi FTP Server tanpa Enkripsi SSL/TLS
                            Ok., perhatikan gambar diatas, dan coba bandingkan dengan gambar 18. Inilah perbedaan yang sangat signifikan antara FTP Server dengan Sertifikat keamanan SSL/TLS dengan FTP Server yang tidak menggunakan Sertifikat keamanan SSL/TLS.

                            Sumber Pengembangan:
                            Debian GNU/Linux By Askari Azikin.
                            A Practical Guide Ubuntu Linux by Mark G. Sobell.


                            0 komentar:

                            Poskan Komentar

                            Artikel Populer

                            Blogroll

                            Barcode of the OPS Techno

                            Barcode of the OPS Techno
                            Barcode

                            Like this Site

                            Tidak ada komentar:

                            Posting Komentar