GNU/Linux >> Belajar Linux >  >> Panels >> Webmin

Layanan Jaringan dan Protokol

Bab ini mencakup super-server inetd dan xinetd , yang bertanggung jawab untuk memulai server untuk protokol seperti telnet dan FTP bila diperlukan.

Isi

Pengantar layanan internet

Layanan jaringan yang sering digunakan seperti email, proxing, dan layanan web ditangani oleh proses server yang berjalan terus-menerus dan memiliki file konfigurasi dan modul Webmin sendiri yang kompleks. Namun, ada layanan lain seperti telnet, finger dan POP yang tidak memerlukan konfigurasi apapun dan tidak memerlukan proses server permanen mereka sendiri. Sebaliknya, server mereka dijalankan saat dibutuhkan oleh server super seperti inetd atau xinetd yang mendengarkan koneksi jaringan pada banyak port. Hanya ketika menerima koneksi, itu memulai proses yang sesuai untuk berkomunikasi dengan klien, yang keluar saat koneksi ditutup. Ini menghemat memori dengan membatasi jumlah proses yang berjalan pada satu waktu, tetapi membuat penanganan koneksi baru sedikit lebih lambat.

Setiap layanan memiliki nama pendek seperti telnet atau pop3, nomor port seperti 23 atau 110 dan protokol seperti TCP atau UDP. File /etc/services mencantumkan semua nama layanan dan nomor port terkait yang diketahui sistem Anda, hanya beberapa di antaranya yang mungkin memiliki server super atau server lain yang mendengarkannya.

Super-server yang paling umum digunakan adalah inetd, yang digunakan oleh hampir semua distribusi Linux dan varian Unix. Semua pengaturan server disimpan dalam file konfigurasi /etc/inetd.conf. Selain memulai server sebagai respons terhadap koneksi TCP dan UDP, ia juga dapat menangani panggilan fungsi RPC (panggilan prosedur jarak jauh) dengan cara yang sama. Salah satu kelemahan utama inetd adalah ketidakmampuannya untuk menolak koneksi tergantung pada alamat IP klien. Namun, ini dapat diatasi dengan menggunakan program server TCP-wrappers perantara, yang memiliki file konfigurasi kontrol akses IP sendiri.

Super-server lain yang semakin populer dan memiliki lebih banyak fitur adalah xinetd, yang menggunakan file konfigurasi /etc/xinetd.conf dan terkadang file lain di bawah direktori /etc/xinetd.d. Seperti inetd, ia dapat meluncurkan proses server sebagai respons terhadap koneksi TCP dan UDP, tetapi tidak mendukung RCP. Keuntungan utamanya adalah dukungan bawaan untuk membatasi koneksi ke alamat IP klien tertentu tanpa memerlukan program yang dikonfigurasi secara terpisah. Itu juga dapat mengarahkan kembali koneksi masuk pada port tertentu ke host dan port lain dengan membuat koneksi klien sendiri dan meneruskan data bolak-balik.

Karena inetd dan xinetd memiliki file konfigurasi dan format file yang sama sekali berbeda, ada modul Webmin terpisah untuk mengonfigurasi masing-masing. Sebagian besar distribusi Linux akan dikirimkan dengan salah satu atau keduanya, tetapi dalam beberapa kasus keduanya dapat diinstal dan hidup berdampingan secara damai. Satu-satunya batasan adalah keduanya tidak dapat mendengarkan pada port yang sama secara bersamaan.

Modul Layanan dan Protokol Jaringan

Modul ini berkaitan dengan konfigurasi inetd, dan dapat ditemukan di bawah kategori Jaringan di Webmin. Jika ikon tidak terlihat, Webmin telah mendeteksi bahwa ikon tersebut tidak diinstal. Ini mungkin karena distribusi Anda menggunakan xinetd, dalam hal ini Anda harus melompat ke bagian "Modul Layanan Internet yang Diperluas". Jika tidak ada modul yang terlihat, periksa CD atau situs web distribusi Anda untuk paket inetd atau xinetd.

Halaman utama modul (ditunjukkan pada Gambar 15-1) menampilkan dua tabel, satu untuk Layanan Internet yang merespons koneksi TCP atau UDP, dan satu untuk Program RCP . Di Layanan Internet bagian, nama dan protokol semua layanan ditampilkan – dalam beberapa kasus, layanan yang sama dapat dikenali untuk lebih dari satu protokol. Setiap layanan dapat berada di salah satu dari tiga status, ditunjukkan dengan font yang namanya ditampilkan di :

Diaktifkan (tebal) Program server telah ditetapkan ke layanan ini, dan saat ini aktif.
Dinonaktifkan (bold-italic) Program server telah ditetapkan, tetapi tidak aktif. Ini sesuai dengan entri yang dikomentari di file inetd.conf.
Belum ditetapkan (normal) Tidak ada program server yang ditetapkan untuk layanan ini, artinya tidak ada entri inetd.conf untuknya.

Jika opsi konfigurasi modul Tampilkan layanan tanpa program telah disetel ke Tidak , layanan dalam status belum ditetapkan tidak akan ditampilkan. Ini adalah default pada beberapa sistem operasi, karena banyaknya layanan yang diketahui sistem.

Sebagian besar distribusi Linux dikirimkan dengan hampir semua layanan dalam keadaan dinonaktifkan secara default. Ini membatasi jumlah layanan yang tidak perlu yang memungkinkan koneksi sistem Anda, dan dengan demikian mengurangi kemungkinan lubang keamanan di salah satu program server yang dieksploitasi oleh penyerang.

Halaman utama modul Layanan dan Protokol Internet

Karena setiap layanan ditampilkan hanya dengan nama pendek seperti telnet atau charge, tidak jelas bagi administrator yang tidak berpengalaman apa yang mereka lakukan. Beberapa layanan yang lebih umum digunakan dan tujuannya adalah:

Layanan siang hari, gema, dan pengisian daya untuk protokol TCP dan UDP ditangani secara internal oleh inetd saat diaktifkan, bukan oleh program server terpisah.

Mengaktifkan layanan internet

Jika Anda ingin mengizinkan pengguna untuk mengambil email dari sistem Anda menggunakan protokol POP3 atau login melalui telnet, layanan internet yang sesuai harus diaktifkan jika saat ini tidak diaktifkan. Untuk melakukannya, langkah-langkah yang harus diikuti adalah :

  1. Pada halaman utama modul, klik nama layanan yang ingin Anda aktifkan di Layanan Internet meja. Ini akan membawa Anda ke halaman yang ditunjukkan pada Gambar 15-2 untuk mengedit detailnya. Jika layanan yang belum ditetapkan tidak ditampilkan di sistem Anda, Anda dapat memasukkan nama layanan dan memilih protokol di bidang di sebelah Edit layanan tombol. Mengklik tombol akan membawa Anda ke formulir pengeditan, dengan asumsi nama layanan dikenali.
  2. Nama layanan , Nomor port , Protokol dan Alias bidang harus dibiarkan tidak berubah kecuali jika Anda ingin mengganti nama layanan atau mengubah port yang didengarkannya. Untuk layanan yang tidak Anda buat sendiri, mengubah salah satu bidang ini adalah ide yang buruk karena dapat mencegah program di sistem Anda terhubung ke server lain.
  3. Dalam program Server bagian, untuk mengaktifkan layanan pilih Program diaktifkan pilihan. Jika Program dinonaktifkan dipilih sebelumnya, maka semua pengaturan lain di bagian tersebut harus benar dan tidak perlu diubah. Namun, jika Tidak ada program yang ditetapkan dipilih sebelumnya, Anda harus memilih program server dan pengguna untuk menjalankan server. Pilih Program bidang Perintah pilihan dan masukkan path lengkap ke program server ke dalam bidang di sebelahnya, seperti /usr/sbin/in.ftpd. Dalam Args bidang, masukkan kembali perintah server dan argumen apa pun yang diperlukan, seperti in.ftpd –l –a. Meskipun jalur program dalam Perintah bidang, nama program harus muncul di Args lapangan juga. Anda harus memasukkan pengguna agar program server dapat dijalankan sebagai Execute as User bidang. Untuk hampir semua server, ini akan menjadi root. Salah satu Mode Tunggu opsi juga harus disetel – kecuali jika server berjalan dan dijalankan dengan sangat cepat, pilih Jangan menunggu . Beberapa layanan seperti siang hari, gema, pengisian daya, dan pembuangan diserahkan secara internal oleh inetd. Jika Anda mengaktifkan salah satunya, cukup pilih Internal to inetd . Tidak ada program atau argumen yang perlu dimasukkan, dan pengguna yang dijalankan oleh server tidak relevan.
  4. Setelah selesai, klik tombol Simpan. Selama tidak ada kesalahan dan program server yang dipilih benar-benar ada, browser akan kembali ke daftar layanan di halaman utama.
  5. Klik tombol Terapkan Perubahan tombol di bagian bawah halaman untuk mengaktifkan perubahan Anda.
Figure 15-2 “Editing an internet service” 

Dalam beberapa kasus, Anda tidak akan dapat mengaktifkan layanan karena program server terkait belum diinstal. Jika demikian, gunakan modul Paket Perangkat Lunak untuk menginstalnya dari CD atau situs web distribusi Linux Anda.

Jika Anda ingin menonaktifkan layanan, cukup ikuti langkah yang sama tetapi pilih Program dinonaktifkan pilihan sebagai gantinya. Ini lebih baik daripada memilih Tidak ada program yang ditetapkan karena mudah untuk menghidupkan kembali layanan tanpa harus memasukkan kembali detail program server.

Membuat layanan internet Anda sendiri

Dalam beberapa situasi, Anda mungkin ingin menambahkan server baru ke sistem Anda yang mendengarkan pada port yang tidak ditetapkan untuk hal lain. Anda mungkin ingin menjalankan server telnet pada beberapa port non-standar, atau mengarahkan ulang lalu lintas dari satu port di sistem Anda ke server lain menggunakan program seperti nc. Jika Anda hanya mencoba mengaktifkan beberapa layanan standar seperti ftp atau imap, petunjuk di bagian ini bukan untuk Anda – lihat bagian “Mengaktifkan layanan internet”.

Langkah-langkah yang harus diikuti untuk membuat layanan baru adalah :

  1. Pada halaman utama modul, klik link *Buat layanan internet baru*. Ini akan membawa Anda ke formulir pembuatan layanan, yang mirip dengan formulir pengeditan Gambar 15-2.
  2. Isikan Nama Layanan bidang dengan nama unik untuk layanan Anda.
  3. Masukkan nomor port yang Anda inginkan untuk dikaitkan dengan layanan ke dalam Nomor Port bidang.
  4. Pilih protokol dari Protokol daftar. Ini hampir selalu TCP, tetapi dalam beberapa kasus Anda mungkin perlu menggunakan UDP.
  5. Masukkan nama alternatif yang Anda inginkan untuk merujuk layanan ke dalam Alias bidang.
  6. Dengan asumsi Anda ingin memiliki program server yang terkait dengan layanan ini, pilih Program diaktifkan pilihan di Program Server bagian. Jika tidak, semua yang akan dibuat adalah hubungan antara nama layanan dan nomor port.
  7. Untuk Program bidang, pilih Perintah pilihan dan masukkan path lengkap ke program server ke dalam bidang di sebelahnya – misalnya /usr/local/bin/someserver. Dalam Args bidang, masukkan nama program dan argumen baris perintah apa pun yang harus dijalankannya, seperti someserver –foo. Contoh lain, jika Anda ingin membuat layanan yang menampilkan semua proses yang berjalan di sistem Anda kepada siapa pun yang terhubung melalui telnet, Anda dapat mengatur Perintah ke /bin/ps dan Args ke ps auxwww. Ini akan menjadi ide yang buruk dari sudut pandang keamanan.
  8. Jika program server memerlukan waktu lebih dari satu detik untuk dijalankan atau jika menerima input apa pun, setel Mode Tunggu kolom ke Jangan menunggu . Jika tidak, inetd akan berhenti menangani koneksi jaringan baru hingga program selesai. Satu-satunya keuntungan Tunggu sampai selesai mode adalah sedikit pengurangan dalam penggunaan memori.
  9. Masukkan nama pengguna pengguna Unix yang harus dijalankan oleh program server ke dalam Execute as User bidang. Ini biasanya root, tetapi bisa siapa saja.
  10. Untuk membatasi tingkat di mana inetd akan menerima koneksi untuk layanan Anda, masukkan nomor ke dalam Maks per Menit bidang. Jika batas terlampaui, koneksi berikutnya akan ditolak hingga menit berikutnya.
  11. Secara default, grup tempat program server berjalan adalah grup utama pengguna yang ditetapkan di Execute as User bidang. Untuk mengubahnya, masukkan nama grup ke dalam Jalankan sebagai Grup bidang.
  12. Klik tombol Buat tombol untuk membuat layanan Anda. Selama tidak ada kesalahan dalam formulir, Anda akan dikembalikan ke daftar layanan di halaman utama.
  13. Klik tombol Terapkan Perubahan tombol untuk mengaktifkan layanan.

Setelah layanan dibuat, Anda dapat mengujinya dengan menjalankan telnet localhost portnumber di Shell Prompt di sistem Anda. Anda dapat mengedit layanan Anda kapan saja dengan mengeklik namanya di halaman utama, dan mengubah salah satu opsi sebelum mengeklik Simpan – atau Hapus jika Anda ingin menyingkirkannya. Setelah melakukan modifikasi apa pun, Terapkan Perubahan tombol harus digunakan untuk mengaktifkannya,

Membuat dan mengedit program RPC

RPC adalah protokol dan format data yang menjadi dasar protokol lain seperti NFS dan NIS. Klien RPC melakukan panggilan fungsi ke server RPC, meneruskan parameter, dan mendapatkan kembali hasil. Untuk klien atau server, membuat panggilan prosedur jarak jauh tidak lebih sulit daripada memanggil fungsi perpustakaan normal, yang menulis program yang menggunakan RPC jauh lebih mudah daripada membuat protokol Anda sendiri dari awal.

Program RPC adalah seperangkat fungsi yang ditangani oleh server. Setiap program memiliki nomor unik, mirip dengan port layanan internet. Program tidak terkait dengan protokol tertentu, karena mereka umumnya dapat menerima koneksi dan panggilan fungsi melalui UDP atau TCP. Juga tidak memiliki port tetap, karena ditugaskan secara dinamis saat dibutuhkan.

Server RPC (seperti server NIS dan NFS) yang menangani sejumlah besar lalu lintas memiliki proses sendiri yang berjalan sepanjang waktu. Namun, beberapa server yang hanya perlu dijalankan sesekali dapat dijalankan oleh inetd hanya jika diperlukan – seperti halnya layanan internet yang jarang digunakan. Beberapa program RPC yang lebih umum digunakan adalah:

Pada beberapa sistem, program RPC ini dapat ditangani oleh server yang tidak dijalankan dari inetd tetapi sebagai proses yang berdiri sendiri. Dalam hal ini, modul Bootup dan Shutdown (dijelaskan dalam bab 9) adalah tempat untuk mengaktifkan atau menonaktifkannya. Karena sejumlah kecil program RPC umum dan kegunaannya yang terbatas, banyak distribusi Linux tidak mengaktifkan atau menonaktifkan program apa pun dalam konfigurasi inetd secara default. Namun, ini tidak terjadi pada sistem operasi lain seperti Solaris.

Jika Anda ingin menggunakan protokol RPC yang saat ini tidak diaktifkan, Anda dapat menggunakan modul ini untuk mengaktifkannya. Tentu saja, program server RPC yang sesuai harus diinstal terlebih dahulu, dan inetd pada sistem Anda harus mendukung program RPC. Jika sudah, langkah-langkah yang harus dilakukan adalah:

  1. Pada halaman utama modul, klik nama program dari Program RPC meja. Ini akan membawa Anda ke formulir pengeditan program yang ditunjukkan pada Gambar 15-3.
  2. Di bawah Program Server bagian, pilih opsi *Program diaktifkan*. Jika Program dinonaktifkan dipilih sebelumnya, maka semua pengaturan lain di bagian tersebut harus benar dan tidak perlu diubah. Namun, jika Tidak ada program yang ditetapkan telah dicentang, Anda harus mengisi beberapa bidang lainnya. Versi RPC bidang harus disetel ke kisaran versi yang didukung oleh program server, seperti 1_ – _3 . Bidang *Jenis Soket* harus disetel ke Datagram , dan Protokol bidang disetel hanya ke udp pilihan. Untuk Program Server field, masukkan path lengkap ke program RPC, seperti /usr/sbin/rpc.rusersd. Untuk Perintah field, masukkan nama program dan argumen apa pun, seperti rpc.rusersd –a. Untuk Mode Tunggu , pilih *Jangan menunggu*. Untuk bidang Execute as User, masukkan nama pengguna yang Anda inginkan untuk menjalankan program server – biasanya root.
  3. Setelah selesai, klik tombol Simpan tombol. Selama tidak ada kesalahan dalam input Anda, Anda akan kembali ke halaman utama modul di mana program RPC akan muncul sebagai diaktifkan.
  4. Klik tombol Terapkan Perubahan tombol untuk mengaktifkan program.
Figure 15-3 “The RPC program editing form” 

Mengonfigurasi modul Layanan dan Protokol Internet

Untuk mengakses opsi yang dapat dikonfigurasi dari modul Layanan Internet, klik Konfigurasi Modul link di pojok kiri atas halaman utamanya. Ini akan membawa Anda ke formulir konfigurasi standar, di mana Anda dapat mengubah opsi berikut:

Opsi konfigurasi modul lainnya di bawah Konfigurasi sistem diatur secara otomatis oleh Webmin berdasarkan jenis sistem operasi Anda, dan karenanya tidak boleh diubah.

Sistem operasi lain

Hampir semua versi Unix menyertakan inetd sebagai standar, dan menggunakannya untuk meluncurkan program server yang jarang dijalankan di tempat yang sama dengan Linux. Namun, format file konfigurasi dan kemampuannya sedikit berbeda pada sistem operasi lain, yang berarti antarmuka pengguna modul tidak akan sama persis. Halaman utama akan selalu menampilkan daftar layanan internet dan RPC, tetapi saat mengedit atau membuat layanan, berbagai bidang dan opsi akan tersedia tergantung pada varian Unix yang Anda jalankan:

Solaris Matahari
Saat mengedit layanan internet, *Maks Per Menit* dan Eksekusi sebagai Grup bidang tidak tersedia. - Solaris versi 8 dan di atasnya mendukung protokol IPv6 TCP dan UDP, serta IPv4 standar yang digunakan Linux. - Banyak layanan RPC yang ada dalam status dinonaktifkan secara default, untuk hal-hal seperti kuota NFS dan penguncian.
FreeBSD
Layanan RPC tidak dapat memiliki program yang ditetapkan. Yang dapat Anda lakukan hanyalah mengedit nama layanan dan nomor program. - Saat mengedit atau membuat layanan, Anda dapat mengontrol jumlah program server yang dapat aktif pada satu waktu dengan Proses Anak Maks bidang. - Juga saat mengedit, Anda dapat mengatur kelas login yang dijalankan oleh program server seperti Execute as Login Class lapangan.
NetBSD
Seperti pada FreeBSD, bidang *Max Child Processes dan *Execute as Login Class* tersedia saat mengedit atau membuat layanan. - Seperti Solaris, layanan internet dapat menggunakan protokol IPv6 TCP dan UDP.

OpenBSD , Compaq Tru64/OSF1 , IBM AIX , Server Terbuka SCO dan SCO UnixWare

Seperti di Solaris, *Maks Per Menit dan Bidang Jalankan sebagai Grup tidak tersedia.
SGI Irix
Maks Per Menit dan Jalankan sebagai Grup bidang tidak tersedia saat mengedit layanan. - Ada kotak centang tambahan di bawah program server Perintah bidang berlabel *Perintah mungkin tidak ada?*, yang jika disetel memberitahu inetd untuk mengabaikan layanan jika program server tidak diinstal. Secara default, ini diaktifkan untuk banyak layanan yang terkait dengan paket Irix yang tidak diinstal secara default.
HP/UX
Di HP/UX, modul ini memiliki opsi yang sama persis dengan Linux.
Apple MacOS X
Seperti pada Solaris, bidang *Maks Per Menit dan *Jalankan sebagai Grup* tidak tersedia. - Layanan RPC tidak dapat memiliki program yang ditetapkan, seperti pada FreeBSD. - Alih-alih file /etc/services digunakan untuk menyimpan nama dan port layanan, mereka berada di tabel NetInfo. Webmin membuang dan memuat ulang tabel ini untuk membaca dan mengedit layanan.

Webmin
  1. Cara Mengatur Alamat IP Statis dan Konfigurasi Jaringan di Linux

  2. Multipass, Manajer Virt, dan Jaringan Terjembatani?

  3. Warpinator – Mengirim dan Menerima File Melalui Jaringan

  1. Cara menggunakan protokol SSH dan SFTP di jaringan rumah Anda

  2. RHEL 7 – RHCSA Catatan :Mulai, hentikan, dan periksa status layanan jaringan.

  3. Cara Memulai Ulang Layanan Jaringan di CentOS/RHEL 8

  1. Cara Mengelola dan Mendaftar Layanan di Linux

  2. Dasar-dasar Linux - IP Statis dan Konfigurasi Jaringan di Debian Linux

  3. Pengerasan VPN:Apa Itu dan Bagaimana Melakukannya