Telnet dan TFTP Written by Syam Budi Iryanto Thursday, 19 June 2014 15:41
elnet Telnet adalah program yang memungkinkan user untuk masuk ke dalam server dan menjalalankan perintah seperti halnya ia login menggunakan VGA konsol. Dalam fedora linux, telnet telah terinstall akan tetapi statusnya disabled.
Salah satu kekurangan telnet adalah data dikirim tanpa enkripsi (clear text). Hal ini memungkinkan seseorang untuk menggunakan network analyzer untuk menangkap paket data dan melihat username dan password. Metode yang lebih aman untuk remote login dapat menggunakan SSH (secure shell) dimana metode ini menggunakan enkripsi dalam pengiriman datanya.
Meskipun demikian, telnet merupakan aplikasi yang populer sejak dahulu. Banyak perangkat jaringan tidak memiliki SSH client, dan hanya menyediakan telnet sebagai satu-satunya cara untuk mengakses perangkat tersebut dari remote.
Menggunakan Telnet Client Menggunakan telnet untuk melakukan remote login dari command line sangatlah mudah. Caranya dengan mengetikkan "telnet" diikuti alamat IP yang akan di-remote. Berikut ini adalah contoh seseorang login ke remote server yang bernama smallfry dari server bigboy. User melihat tabel routing dan kemudian logout.
[ root@bigboy tmp ]# telnet 192.168.1.105 Trying 192.168.1.105... Connected to 192.168.1.105. Escape character is '^]'.Linux 2.4.18-14 (smallfry.my-site.com) (10:35 on Sunday, 05 January 2003)Login: peter Password: Last login: Fri Nov 22 23:29:44 on ttyS0 You have new mail. [ peter@smallfry peter ]$ [ peter@smallfry peter ]$ netstat -nr Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 255.255.255.255 0.0.0.0 255.255.255.255 UH 40 0 0 wlan0 192.168.1.0 0.0.0.0 255.255.255.0 U 40 0 0 wlan0
1 / 11
Telnet dan TFTP Written by Syam Budi Iryanto Thursday, 19 June 2014 15:41
127.0.0.0 0.0.0.0 255.0.0.0 U 40 0 0 lo 0.0.0.0 192.168.1.1 0.0.0.0 UG 40 0 0 wlan0 [ peter@smallfry peter ]$ exit logoutConnection closed by foreign host. [ root@bigboy tmp ]#
Menginstall Software Telnet Server Didalam RedHat versi lama telah terinstall software telnet server secara default. Namun dalam fedora linux tidak demikian. Kebanyakan distro linux menyediakan dalam format precompiled package. Mendownload dan menginstallnya cukup mudah. Ketika mencari file RPM biasanya nama file diawali dengan telnet-server dan diikuti dengan nomor versinya, contoh: telnet-server-0.17-28.i386.rpm. Adapun dalan Debian / Ubuntu (biasanya) namanya telnetd, contoh: telnetd_0.17-32_i386.deb.
Setting Telnet Server Melakukan pengaturan telnet server sangatlah mudah, hanya dari dari beberapa versi distro berbeda-beda caranya.
RedHat/Fedora
Untuk mengaktifkannya dapat menggunakan perintah chkconfig. [ root@bigboy tmp ]# chkconfig telnet on Untuk memastikan telnet akan running pada tiap kali boot, dapat digunakan perintah chkconfig --list. [ root@bigboy tmp ]# chkconfig --list | grep telnet telnet: on [ root@bigboy tmp ]# untuk menonaktifkannya juga menggunakan perintah chkconfig, sbb: [ root@bigboy tmp ]# chkconfig telnet off
Debian/Ubuntu Dalam Debian/Ubuntu telnet running menggunakan servis inetd, bukan xinetd, dan menggunakan berkas konfigurasi /etc/inetd.conf untuk mengatur dan mengontrol aktivasi servis telnet. Untuk menghentikan servis telnet, cukup tambahkan komentar pada baris telnet dalam berkas konfigurasi tersebut, lalu restart servis inetd, sbb: root@u-bigboy:~# vi /etc/inetd.conf
2 / 11
Telnet dan TFTP Written by Syam Budi Iryanto Thursday, 19 June 2014 15:41
.........
# # File: /etc/inetd.conf ##telnet stream tcp nowait telnetd.telnetd /usr/sbin/tcpd /usr/sbin/in.telnetd... ... ... root@u-bigboy:~# /etc/init.d/inetd restart * Restarting internet superserver... ...done. root@u-bigboy:~# netstat -a | grep telnet root@u-bigboy:~#
Catatan: Paket xinetd memberikan fitur lebih dibandingkan dengan inetd, diantaranya xinetd memungkinkan untuk membatasi koneksi dari alamat tertentu saja yang dapat melakukan penggantian port yang listen untuk telnet. Untuk mengubah sistem yang masih menggunakan inetd menjadi xinetx, cukup menginstall paket xinetd lalu buatlan berkas kustom di /etc/xinetd.d/telnet.
Keamanan Telnet Banyak cara dapat dilakukan untuk meningkatkan keamanan layanan (servis) telnet. Misalnya, kita pastikan telnet hanya dapat dijalankan dari jaringan internal yang dapat dipastikan aman atau dari VPN untuk menghindari penyebaran data-data penting ke luar oleh yang tidak bertanggungjawab.
Agar telnet listen dari selain port standar Mengubah port standar telnet server tidak memberikan enkrpsi terhadap lalulintas data, tapi dapat mengurangi pendeteksian bahwa lalulintas tersebut adalah lalulintas telnet. Perlu diingat bahwa cara ini tidak sepenuhnya mengamankan, karena software port scanner yang bagus dapat mendeteksi bahwa lalulintas tersebut adalah lalulintas telnet, meskipun tidak menggunakan port standar.
1- Edit file /etc/services dan tambahkan baris perintah baru, misal: stelnet
3 / 11
Telnet dan TFTP Written by Syam Budi Iryanto Thursday, 19 June 2014 15:41
# Local services stelnet 7777/tcp # "secure" telnet
2- Copy berkas konfigurasi telnet /etc/xinetd.d/telnet ke dalam berkas baru, misal: /etc/xinetd.d/stelnet
[ root@bigboy tmp ]# cp /etc/xinetd.d/telnet /etc/xinetd.d/stelnet
3- Edit berkas /etc/xinetd.d/stelnet, buat servis baru stelnet dan gunakan port TCP 7777.
# default: on # description: The telnet server serves telnet sessions # unencrypted username/password pairs for authentication. service stelnet { flags = REUSE socket_type = stream wait = no user = root server = /usr/sbin/in.telnetd log_on_failure += USERID disable = no port = 7777 }
4- Gunakan chkconfig untuk megaktifkan stelnet
[ root@bigboy tmp ]# chkconfig stelnet on
5- Menggunakan perintah netstat, pastikan servis listen di port 7777
4 / 11
Telnet dan TFTP Written by Syam Budi Iryanto Thursday, 19 June 2014 15:41
[ root@bigboy tmp ]# netstat -an | grep 777 tcp 0 0 0.0.0.0:7777 0.0.0.0:* LISTEN [ root@bigboy tmp ]#
Sekarang kita bisa login via telnet ke port 7777 dengan perintah telnet dan diikuti nomor port, sbb:
[ root@smallfry tmp ]# telnet 192.168.1.100 7777 Trying 192.168.1.100... Connected to 192.168.1.100. Escape character is '^]'. Fedora Core release 2 (Tettnang) Kernel 2.6.8-1.521 on an i686 login:
Membatasi akses telnet hanya dari alamat tertentu Untuk dapat membatasi akses remote login dengan telnet dari alamat tertentu, dapat diatur dalam berkas konfigurasi telnet dengan menambahkan kata only_from, sbb: 1- Tentukan alamat-alamat yang diperbolehkan mengakses menggunakan telnet
# default: on # description: The telnet server serves telnet sessions # unencrypted username/password pairs for authentication. service telnet { flags = REUSE socket_type = stream wait = no user = root server = /usr/sbin/in.telnetd log_on_failure += USERID disable = no only_from = 192.168.1.100 127.0.0.1 192.168.1.200 }
5 / 11
Telnet dan TFTP Written by Syam Budi Iryanto Thursday, 19 June 2014 15:41
2- Restart servis telnet
[ root@bigboy tmp ]# chkconfig telnet off [ root@bigboy tmp ]# chkconfig telnet on
3- Lakukan pengetesan. Apabila telnet dilakukan di luar alamat yang diperbolehkan, akan muncul pesan koneksi diputus.
[ root@smallfry tmp ]# telnet 192.168.1.100 Trying 192.168.1.100... Connected to 192.168.1.100. Escape character is '^]'. Connection closed by foreign host. [ root@smallfry tmp ]#
TFTP (Trivia File Transfer Protocol) Kebanyakan perangkat jaringan memberikan fasilitas untuk mem-backup berkas konfigurasi melalui protokol TFTP. TFTP merupakan cara yang paling fleksibel dalam manajemen jaringan, tidak hanya sekedar menyimpan berkas. TFTP server dapat digunakan untuk mengunggah berkas konfigurasi baru (misal) ketika terjadi pergantian hardware. TFTP juga dapat digunakan untuk mengunggah software baru untuk dijalankan dalam perangkat jaringan. Dan juga, TFTP juga dapat digunakan untuk mengunggah berkas update konfigurasi (misal ACL baru)
Menginstall TFTP software Kebanyakan distro linux menyediakannya dalam format precompiled. Dalam Fedora/RedHat, biasanya paket nya bernama tftp-server diikuti nomor versinya: tftp-server-0.33-3.i386.rpm. Adapun dalam Debian/Ubuntu, biasanya menggunakan HPA TFTP, nama berkas biasanya tftp-hpa.
Meng-konfigurasi TFTP Masing-masing distro memiliki cara masing-masing (berbeda-beda satu dengan yang lainnya).
6 / 11
Telnet dan TFTP Written by Syam Budi Iryanto Thursday, 19 June 2014 15:41
RedHat/Fedora
Secara default, tftp akan mencari berkas dalam direktori /tftpboot. Kita bisa mengubahnya dari /etc/xinetd.d/tftp dalam paramater server_args. Sebaiknya meletakkan berkas TFTP di luar partisi root. Semakin banyaknya (berkembangnya) berkas dalam TFTP direktori, dapat menyebabkan partisi /root penuh sehingga tidak bisa menginstall software baru, atau dapat juga mengurangi performa sistem. Membuat shortcut /tftpboot ke direktori tidak akan dapat digunakan di lingkungan RedHat/Fedora. Berikut ini contoh mengubah direktori tftpboot ke dalam direktori /var. [ root@bigboy tmp ]# mv /tftpboot /var [ root@bigboy tmp ]# vi /etc/xinetd.d/tftp
# # File /etc/xinetd.d/tftp # service tftp { ... ... server_args = -s /var/tftpboot disable = no }
Jangan lupa merestart servis tftp agar konfigurasi baru di baca ulang.
[ root@bigboy tmp ]# chkconfig tftp on
Debian/Ubuntu Dalam lingkungan Debian/Ubuntu, berkas konfigurasi ada dalam /etc/default/tftpd-hpa dan juga secara default direktori untuk menyimpan berkas file ada di /var/lib/tftpboot. Servis secara default disabled.
Yang juga perlu diingat, dalam Debian/Ubuntu servis tftpd-hpa berjalan sendiri (independen)
7 / 11
Telnet dan TFTP Written by Syam Budi Iryanto Thursday, 19 June 2014 15:41
dari xinetd dan memiliki startup script sendiri di dalam direktori /etc/init.d . Secara default, servis akan dijalankan pada saat boot time, hanya saja berkas konfigurasi default nya akan men-disable servis dengan cara mematikan servis secara prematur. Berikut ini contoh perintah meng-enable-kan tftp dalam berkas konfigurasi kemudian menjalalankannya.
root@u-bigboy:/tmp# vi /etc/default/tftpd-hpa ... ... ... # # File: /etc/default/tftpd-hpa # #Defaults for tftpd-hpa RUN_DAEMON="yes" OPTIONS="-l -s /var/lib/tftpboot" ... ... ... root@u-bigboy:/tmp# /etc/init.d/tftpd-hpa start Starting HPA's tftpd: in.tftpd. root@u-bigboy:/tmp#
Menyiapkan Server TFTP TFTP server tidak akan membuat berkas dalam direktori transfer jika berkas tersebut belum dibuat. Setiap perangkat harus memiliki file konfigurasi pre-existing dalam direktori tftpboot. Berkas tersebut juga perlu diatur hak aksesnya agar TFTP daemon dapat melakukan update pada berkas tersebut.
[ root@bigboy tmp ]# touch /tftpboot/pixfw-config [ root@bigboy tmp ]# chmod 666 /tftpboot/pixfw-config [ root@bigboy tmp ]# ll /tftpboot/ total 1631 -rw-rw-rw- 1 root root 3011 Oct 29 14:09 pixfw-config [ root@bigboy tmp ]#
Menyimpan Cisco Configuration ke TFTP server
8 / 11
Telnet dan TFTP Written by Syam Budi Iryanto Thursday, 19 June 2014 15:41
Berikut ini contoh cara menyimpan berkas konfigurasi dari cisco ke TFTP server. Kita asusmsikan alamat TFTP servernya adalah 192.168.1.100.
Cisco PIX Firewall 1- Login ke perangkat, masuk ke mode enable, ketikkan perintah tftp untuk inisialisasi konfigurasi tftp.
pixfw> enable Password: ******** pixfw# configure terminal pixfw(config)# tftp-server inside 192.168.1.100 /pixfw-config pixfw(config)# exit
2- Simpan konfigurasi ke dalam nonvolatile memory
pixfw# write memory Building configuration... Cryptochecksum: 3af43873 d35d6f06 51f8c999 180c2342 [OK] pixfw#
3- Simpan konfigurasi ke tftp server
pixfw# write network Building configuration... TFTP write '/pixfw-config' at 192.168.1.100 on interface 1 [OK] pixfw#
Cisco Switch yang menggunakan CATOS
9 / 11
Telnet dan TFTP Written by Syam Budi Iryanto Thursday, 19 June 2014 15:41
Login dahulu kemudian masuk ke mode enable, kemudian tuliskan perintah TFTP sbb:
ciscoswitch> (enable) wr net This command shows non-default configurations only. Use 'write network all' to show both default and non-default configurations. IP address or name of remote host? [192.168.1.100] Name of configuration file?[ciscoswitch-config] Upload configuration to ciscoswitch-config on 192.168.1.100 (y/n) [n]? y ......... Finished network upload. (30907 bytes) ciscoswitch> (enable)Cisco Router Untuk menyimpan berkas konfigurasi router ke tftp server, gunakan cara berikut: ciscorouter> enable ciscorouter# write net Remote host [192.168.1.100]? 192.168.1.100 Name of configuration file to write [ciscorouter-config]? ciscorouter-config Write file ciscorouter-config on host 192.168.1.100? [confirm] y ciscorouter# exit
Mengunggah Berkas Konfigurasi Ciso dari TFTP Server Terkadang, kita perlu juga mengunggah berkas konfigurasi kita dari TFTP server ke dalam perangkat jaringan kita. Berikut ini prosedur / tata cara mengunggah berkas dari TFTP server ke dalam jaringan LIPI.
ciscorouter>ena Password: ciscorouter#configure network Host or network configuration file [host]? This command has been replaced by the command: 'copy
system:/running-config' Address or name of remote host []? 192.168.1.100 Source filename []? config.file Configure using t ftp://192.168.1.100/config.file? [confirm] Loading config.file from 192.168.1.100 (via FastEthernet0/0): !!!!!! [OK - 26521/52224 bytes] ciscorouter#copy tftp running-configciscorouter#copy tftp: running-config Address or name of remote host []? 192.168.1.100 Source filename []? config.file
10 / 11
Telnet dan TFTP Written by Syam Budi Iryanto Thursday, 19 June 2014 15:41
Destination filename [running-config]? Accessing t ftp://192.168.1.100/config.file... Loading config.file from 192.168.1.100 (via FastEthernet0/0): !!!!!! [OK - 26521/52224 bytes] 26521 bytes copied in 1.912 secs (26521 bytes/sec) ciscorouter#
Kesimpulan Keduanya, baik TFTP maupun Telnet merupakan tool yang penting dalam administrasi jaringan. Keduanya tidak menggunakan enkripsi dalam pengiriman data, sehingga harus digunakan dalam jaringan yang secure. Dalam pengiriman data TFTP tidak menggunakan autentikasi password, sehingga apabila terjadi kesalahan berkas akan di overwrite. Telnet sedikit lebih baik dalam hal keamanan, karena menggunakan autentikasi sebelum terjadi transaksi data. Akan tetapi karena tanpa ada enkripsi pada saat pengiriman data, maka apabila ada yang "menguping" bisa beresiko fatal. Untuk protokol yang lebih aman dan terenkripsi, maka dapat digunakan SSH (secure shell).
---
Disadur dari: www.linuxhomenetworking.com
11 / 11