GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Mengatur Layanan Ircd Hybrid dan Anope dengan SSL di Ubuntu

IRCD Hybrid adalah daemon internet relay chat (IRC) ringan sumber terbuka dan gratis. IRCD-Hybrid umumnya dikenal karena kinerjanya yang sangat cepat dan tinggi. Performa ircd-hybrid semakin baik dan kuat dengan Anope. Anope adalah satu set Layanan IRC bercabang dari Epona pada awal 2003. Sejak itu, anope telah menjadi set layanan IRC yang sangat kuat dan menampilkan dengan peningkatan kualitas dan fungsionalitasnya. Beberapa layanan populer yang disediakan oleh Anope adalah NickServ, ChanServ, MemoServ, OperServ, BotServ dan HostServ. Selain itu, HelpServ, DevNull, dan Global adalah layanan luar biasa lainnya yang ditampilkan oleh Anope. Jadi, kombinasi layanan IRCD-Hybrid dan Anope menciptakan solusi luar biasa untuk server IRC yang kaya fitur dan berkinerja tinggi.

Pada artikel ini, kita akan mempelajari cara mengkonfigurasi Layanan IRC Hybrid dan Anope pada distribusi linux Ubuntu 15.04. Berikut adalah beberapa langkah sederhana tentang bagaimana kita dapat melakukannya.

1. Mengunduh IRCD-Hybrid

Pertama-tama, sebelum kita mengatur ircd-hybrid di mesin Ubuntu kita, kita harus mengunduhnya. Meskipun ircd-hybrid tersedia di repositori resmi ubuntu, kami akan mengompilasinya dari kode sumbernya karena versi ircd-hybrid di repositori mungkin bukan yang terbaru. Untuk mengunduh rilis terbarunya yaitu. 8.2.8 dari repositori resmi github yaitu https://github.com/ircd-hybrid/ircd-hybrid/ . Untuk melakukannya, kita perlu menjalankan perintah berikut.

$ cd /tmp/
$ wget https://github.com/ircd-hybrid/ircd-hybrid/archive/8.2.8.tar.gz

--2015-07-18 08:35:31-- https://github.com/ircd-hybrid/ircd-hybrid/archive/8.2.8.tar.gz
Resolving github.com (github.com)... 192.30.252.129
...
Connecting to codeload.github.com (codeload.github.com)|192.30.252.145|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [application/x-gzip]
Saving to: ‘8.2.8.tar.gz’
8.2.8.tar.gz [ <=> ] 1022K 675KB/s in 1.5s
2015-07-18 08:35:35 (675 KB/s) - ‘8.2.8.tar.gz’ saved [1046078]

Setelah diunduh, kita akan mengekstrak tarball menggunakan perintah tar.

$ tar -xvf 8.2.8.tar.gz

2. Memasang IRCD-Hybrid

Setelah kita selesai mengekstrak tarball, sekarang kita akan masuk ke direktori yang baru saja diekstrak. Untuk melakukannya, kita perlu menjalankan perintah berikut.

$ cd ircd-hybrid-8.2.8/

Kemudian, kita akan mengonfigurasinya sehingga Makefile dapat dibuat untuk ircd-hybrid sehingga kita dapat mengkompilasi kode sumber ircd-hybrid ke biner menggunakan perintah make. Untuk melakukannya, pertama-tama kita perlu menginstal dependensi yang diperlukan untuk membuat makefile.

$ sudo apt-get install build-essential

Setelah dependensi terinstal, sekarang kita akan menjalankan perintah berikut untuk menghasilkan makefile.

$ ./configure --prefix="/home/arun/ircd"

Setelah makefile dibuat, kita akan mengkompilasi kode sumber ke biner. Untuk melakukannya, kita perlu menjalankan perintah berikut.

$ make

Sekarang kita akan menginstal server ircd-hybrid terbaru kita dengan menjalankan perintah berikut. Ini akan menginstal ircd-hybrid di dalam direktori home kami di bawah direktori bernama ircd.

$ make install

3. Mengunduh Layanan Anope

Kami sekarang akan mengunduh rilis terbaru dari layanan anope dari repositori github resmi mereka yaitu https://github.com/anope/anope/ . Rilis terbaru dari layanan anope saat ini adalah 2.0.2. Kami akan mengunduh layanan anope dengan cara yang sama seperti kami mengunduh ircd-hybrid.

$ cd /tmp/
$ wget https://github.com/anope/anope/releases/download/2.0.2/anope-2.0.2-source.tar.gz

--2015-07-18 08:55:14-- https://github.com/anope/anope/releases/download/2.0.2/anope-2.0.2-source.tar.gz
Resolving github.com (github.com)... 192.30.252.128
...
Connecting to s3.amazonaws.com (s3.amazonaws.com)|54.231.244.4|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1775003 (1.7M) [application/octet-stream]
Saving to: ‘anope-2.0.2-source.tar.gz’
anope-2.0.2-source.t 100%[========================>] 1.69M 611KB/s in 2.8s
2015-07-18 08:55:19 (611 KB/s) - ‘anope-2.0.2-source.tar.gz’ saved [1775003/1775003]

Setelah berhasil diunduh, kita akan mengekstrak tarball menggunakan perintah tar.

$ tar -xvf anope-2.0.2-source.tar.gz

4. Memasang Layanan Anope

Setelah tarball diekstrak, sekarang kita akan menginstal layanan anope di distribusi linux Ubuntu kita. Untuk melakukannya, pertama-tama kita harus mengkonfigurasi untuk menghasilkan makefile sehingga kita dapat mengkompilasi kode sumber ke biner dan kita dapat menginstalnya di sistem kita. Tetapi sebelum itu, kita harus memenuhi ketergantungan paket kita yang diperlukan untuk menjalankan skrip Config. Untuk menginstal dependensi itu, kita perlu menjalankan perintah berikut.

$ sudo apt-get install cmake

Kemudian, kita akan menjalankan perintah berikut untuk menghasilkan makefile.

$ cd anope-2.0.2-source/
$ ./Config

Perintah di atas akan menjalankan program yang akan menanyakan beberapa pertanyaan kepada kami mengenai pengaturan dan konfigurasi untuk layanan anope kami. Kita cukup menekan "Enter" untuk memilih nilai default, makefile akan dibuat di dalam direktori build. Kami sekarang akan mengkompilasi kode sumber ke biner. Untuk melakukannya, kita perlu menjalankan perintah berikut.

$ cd build
$ make

Sekarang kita akan menginstal layanan anope dengan menjalankan perintah berikut. Ini akan menginstal layanan anope di dalam direktori home kami di bawah services.

$ make install

5. Memperbaiki kepemilikan

Karena kami baru saja menginstal server ircd-hybrid dan layanan anope di dalam direktori home kami, kami harus memastikan bahwa pengguna yang kami jalankan layanan ircd-hybrid dan anope memiliki akses baca-tulis penuh dan kepemilikan direktori. Jadi, untuk mengubah kepemilikan direktori tersebut, kita perlu menjalankan perintah berikut.

$ sudo chown -R arun: ~/ircd ~/services

Catatan: Di sini, arun adalah nama pengguna yang akan digunakan untuk menjalankan layanan anope dan server ircd-hybrid. Jadi, silakan ganti sesuai dengan sistem dan konfigurasi Anda.

6. Membuat Kata Sandi Terenkripsi

Sekarang, kita akan mengonfigurasi ircd-hybrid kita sehingga akan bekerja dengan baik seperti yang diharapkan. Pertama-tama, kita perlu membuat hash kata sandi terenkripsi menggunakan mkpasswd yang akan diperlukan untuk konfigurasi layanan ircd-hybrid dan anope. Kata sandi teks biasa akan digunakan untuk mendapatkan hak operator server irc kami. Untuk menghasilkan hash kata sandi terenkripsi, kita harus menjalankan mkpasswd diikuti dengan kata sandi yang ingin kita enkripsi. Karena mkpasswd terletak di dalam direktori bin dari direktori instalasi ircd-hybrid kami, kami harus menjalankan perintah berikut.

$ cd ~/ircd/bin/
$ ./mkpasswd

$1$jcKeU1nP$3u.uVI3wxyLswDnw1S5mA/

Catatan: Sandi terenkripsi yang dihasilkan ini memiliki ie $1$jcKeU1nP$3u.uVI3wxyLswDnw1S5mA/ akan digunakan untuk konfigurasi dari ircd-hybrid dan kata sandi biasa akan diperlukan untuk mendapatkan hak operator. Jadi, sangat disarankan untuk menyimpan kata sandi ini di tempat yang aman agar kita dapat menggunakannya nanti.

7. Konfigurasi ircd-hybrid

Di sini, sekarang kita akan mengkonfigurasi server ircd-hybrid kita dengan konfigurasi sederhana yang cukup untuk menjalankan server IRC yang sehat. Berikut adalah beberapa konfigurasi dasar yang perlu kita buat agar server IRC kita dapat bekerja dengan baik. Untuk melakukannya, pertama-tama kita harus membuat nama file konfigurasi default sebagai ircd.conf di dalam direktori ~/ircd/etc/. Kita dapat dengan mudah membuatnya dengan menyalin reference.conf ke ircd.conf. Untuk melakukannya, kita akan menjalankan perintah berikut.

$ cp ~/ircd/etc/reference.conf ~/ircd/etc/ircd.conf

Kemudian, kita akan mengedit file ircd.conf menggunakan editor teks favorit kita.

$ nano ~/ircd/etc/ircd.conf

Sekarang, kita akan mengubah bagian pertama yaitu blok serverinfo{} sesuai kebutuhan. Di sini, kita akan mengubah nilai untuk nama, deskripsi, nama_jaringan, dan deskripsi_jaringan seperti yang ditunjukkan di bawah ini.

/* serverinfo {}: Contains information about the server. (OLD M:) */
serverinfo {
name = "irc.linoxide.com";
description = "Linoxide IRC Server";
network_name = "Linoxide";
network_desc = "Linoxide IRC Network";
};

Selanjutnya, kita akan membuat perubahan pada blok{} admin. Blok ini berisi dan menampilkan informasi administrasi tentang server. Jadi, kami akan melakukan perubahan nilai nama, deskripsi dan email sebagai persyaratan kami.

/* admin {}: contains admin information about the server. (OLD A:) */
admin {
name = "Linoxide Admin";
description = "Linoxide IRC Server Administrator";
email = "<[email protected]>";
};

Kemudian, kami akan mengomentari opsi host dengan "#" di blok listener{} untuk mengikat server semua alamat IP yang tersedia.

#   host = "192.168.0.1";

Setelah itu, kita akan mengomentari flags =need_ident baris di bawah blok{} auth yang terletak tepat di atas blok{} operator.

#   flags = need_ident

Setelah itu, kita perlu menggulir ke bawah ke blok{} operator. Blok ini mendefinisikan operator server. Di sini, nama mendefinisikan nama operator, pengguna dengan nilai *@127.0.0.1 mendefinisikan bahwa setiap pengguna localhost dapat terhubung sebagai root. Kemudian, kami akan menambahkan hash kata sandi terenkripsi di opsi kata sandi seperti yang ditunjukkan di bawah ini.

/* operator {}: defines ircd operators. (OLD O:) */
operator {
name = "root";
user = "*@*127.0.0.1";
password = "$1$jcKeU1nP$3u.uVI3wxyLswDnw1S5mA/";
encrypted = yes;
};

Sekarang, kita akan mengedit blok koneksi{} sehingga kita bisa mendefinisikan server ircd-hybrid untuk terhubung dengan layanan anope menggunakan konfigurasi di bawah ini. Konfigurasi ini harus sesuai dengan konfigurasi layanan anope yang akan kita buat di langkah berikutnya. Di sini, bagian nama bukan nama server ircd-hybrid tetapi nama layanan anope.

connect {
name = "ircservices.linoxide.com";
host = "127.0.0.1";
send_password = "mypassword";
accept_password = "mypassword";
encrypted = no;
hub_mask = "*";
class = "server";
};

Setelah semua konfigurasi yang diinginkan dan diperlukan selesai, kita akan menyimpan file dan keluar.

Kemudian, kita akan memulai server ircd-hybrid kita dengan menjalankan perintah berikut.

$ cd ~/ircd/bin/
$ ./ircd

Ini akan menjalankan server IRC kami. Kita dapat mengujinya dengan mencoba menghubungkan ke server IRC kita menggunakan Alamat IP server atau menggunakan domain server irc tanpa klien IRC. Untuk terhubung, kita juga bisa menjalankan perintah berikut di IRC Client kita.

/server irc.linoxide.com

8. Mengonfigurasi Layanan Anope

Kami sekarang akan mengkonfigurasi layanan anope kami untuk terhubung dengan server ircd-hybrid kami. Untuk melakukannya, pertama-tama kita perlu membuat file konfigurasi default bernama services.conf di dalam direktori conf dari direktori instalasi layanan anope. Ada file example.conf yang dapat kita modifikasi untuk membuat layanan anope bekerja dengan baik. Jadi, kita perlu menyalin example.conf dan menempelkannya sebagai services.conf.

$ cd ~/services/conf/
$ cp example.conf services.conf

Sekarang, kita akan mengedit file konfigurasi layanan anope menggunakan editor favorit kita.

$ nano services.conf

Sekarang, kita akan membuat perubahan pada blok{} uplink. Di sini, host disimpan sebagai 127.0.0.1 karena server IRC kami berjalan di server yang sama di bawah localhost. Karena kami tidak menggunakan ipv6, kami hanya akan menonaktifkannya. Jika kita menjalankan anope di server yang berbeda, disarankan untuk mengaktifkan ssl dengan menjaga nilai sebagai "ya" tetapi karena kita menjalankan server irc dan anope di bawah server yang sama, kita cukup menonaktifkannya dengan nilai "tidak". Karena port default server irc adalah 6667, kami akan menjaganya tetap sama. Opsi kata sandi harus mendefinisikan kata sandi yang telah kita tetapkan di blok{} koneksi konfigurasi ircd (ircd.conf) yaitu kata sandi saya dalam kasus kami.

uplink
{
host = "127.0.0.1"
ipv6 = no
ssl = no
port = 6667
password = "mypassword"
}

Selanjutnya, kita akan menyetel nama layanan anope dan deskripsi Layanan Anope kita yang terletak di bawah blok serverinfo{}. Nilai namanya harus sesuai dengan nilai yang telah kita tetapkan di blok{} koneksi konfigurasi ircd (ircd.conf), di sini kita menyimpan ircservices.linoxide.com .

serverinfo
{
name = "ircservices.linoxide.com"
description = "Services for Linoxide IRC Networks"
pid = "data/services.pid"
motd = "conf/services.motd"
}

Selanjutnya, saat kita menjalankan ircd-hybrid sebagai server irc, kita cukup menetapkan nilai name di bawah blok mode{} sebagai "hybrid".

name = "hybrid"

Dan kami akan menyimpan nama jaringan sebagai "Linoxide IRC" di blok networkinfo{}.

networkname = "Linoxide IRC"

Setelah semuanya dikonfigurasi sesuai kebutuhan dan keinginan kita, sekarang kita akan menyimpan dan keluar dari file tersebut.

9. Memulai Layanan Anope

Akhirnya, setelah kita selesai mengonfigurasi konfigurasi anope kita, sekarang kita akan memulai layanan anope kita. Untuk melakukannya, kita harus masuk ke dalam folder bin yang terletak di dalam direktori instalasi anope. Kemudian, kami akan menjalankan skrip anoperc kami seperti yang ditunjukkan di bawah ini.

$ cd ~/services/bin/
$ ./anoperc start

Starting Anope
Anope 2.0.2, build #2, compiled 12:22:26 Jul 18 2015
Using configuration file conf/services.conf
Attempting to connect to uplink #1 127.0.0.1 (127.0.0.1), port 6667
Successfully connected to uplink #1 127.0.0.1:6667
Successfully linked, launching into background...

Ini akan memulai Layanan Anope kami. Jika tiba-tiba layanan anope kami tidak dimulai, kami dapat memperbaikinya dengan memeriksa log kami yang terletak di dalam direktori log. Di sini, dalam instalasi kami, di bawah ~/services/logs/

Sekarang, untuk memeriksa apakah layanan anope kita berfungsi dengan baik atau tidak, kita cukup menjalankan /msg NickServ help di klien IRC kami. Jika kami melihat opsi dan tanda untuk perintah NickServ, maka kami dapat memverifikasi bahwa layanan Anope kami berfungsi dengan baik. Pertama kita perlu mendapatkan akses operator menggunakan perintah /oper diikuti dengan username dan password yang telah kita buat di atas untuk operator.

/oper root password

Setelah kita login sebagai operator, kita akan merehash server IRC ircd-hybrid kita.

/rehash

Kemudian, kita akhirnya akan menguji server anope kita dengan menjalankan perintah di bawah ini.

/msg nickserv help

10. Mengaktifkan Enkripsi SSL/TLS

Untuk mengaktifkan enkripsi ssl, kita perlu menginstal paket pengembangan openssl di mesin Ubuntu 15.04 kita. Kemudian, kita perlu mengkompilasi ulang ircd-hybrid kita, membuat sertifikat SSL sendiri karena kita tidak memiliki sertifikat tepercaya dan mengkonfigurasi konfigurasi ircd-hybrid untuk mengaktifkan port ssl yaitu 6697.

Jadi, untuk menginstal paket pengembangan openssl, kita perlu menjalankan perintah berikut.

$ sudo apt-get install libssl-dev

Kita cukup mengikuti langkah 1 dan 2 untuk mengkompilasi ulang ircd-hybrid. Selanjutnya, kita akan membuat sertifikat SSL kita sendiri dan menyimpannya di direktori ~/ircd/etc/.

$ cd ~/ircd/etc/
$ openssl genrsa -out rsa.key 2048
$ chmod 600 rsa.key

Setelah kunci RSA dibuat, sekarang kita akan membuat sertifikat dan file parameter DH.

$ openssl req -new -days 365 -x509 -key rsa.key -out cert.pem
$ openssl dhparam -out dhparam.pem 2048

Sekarang, kita akan mengkonfigurasi ircd.conf dan mengaktifkan metode enkripsi SSL/TLS. Untuk melakukannya, kita akan membuka ircd.conf dengan editor favorit kita.

$ nano ~/ircd/etc/ircd.conf

Sekarang, kita akan menghapus komentar pada baris berikut yang terletak di blok serverinfo{}.

rsa_private_key_file = "etc/rsa.key";
ssl_certificate_file = "etc/cert.pem";
ssl_dh_param_file = "etc/dhparam.pem";

Terakhir, kita akan me-restart server ircd-hybrid kita. Untuk memulai ulang, kita perlu menjalankan perintah berikut.

$ killall -9 ircd
$ ~/ircd/bin/ircd

Setelah server kami berjalan, kami perlu menguji enkripsi SSL/TLS kami berfungsi atau tidak. Sekarang kita dapat login ke server irc kita dengan enkripsi SSL/TLS dengan menjalankan perintah berikut di klien IRC kita.

/server irc.linoxide.com +6697

Kesimpulan

IRCD-Hybrid adalah contoh yang bagus dari server IRC yang cepat dan efisien. Meskipun IRC dianggap sebagai teknologi lama untuk komunikasi elektronik, tetapi IRC merupakan sarana komunikasi yang cepat dan aman. Anope menambahkan beberapa fungsionalis dan fitur luar biasa di atas ircd-hybrid yang membuat server irc kami dikelola dengan baik. Jadi, selalu disarankan untuk menggunakan anope sebagai layanan jika Anda menjalankan ircd-hybrid sebagai daemon irc. Untuk mengaktifkan pemindai untuk memantau server IRC kami terhadap proxy terbuka, hopm juga merupakan alat hebat yang dikembangkan oleh pengembang ircd-hybrid. Jika Anda memiliki pertanyaan, saran, umpan balik, silakan tulis di kotak komentar di bawah agar kami dapat meningkatkan atau memperbarui konten kami. Terima kasih ! Selamat menikmati :-)


Ubuntu
  1. Cara Menginstal Perangkat Lunak Blog Hantu dengan Apache dan SSL di Ubuntu 16.04

  2. Setup Apache dan Php dengan mod_fcgid di Ubuntu/Debian

  3. Setup Apache 2.4 dan Php FPM dengan mod proxy fcgi di Ubuntu 13.10

  1. Cara Mengatur Apache Subversion dengan Lets encrypt SSL di Ubuntu 18.04

  2. Siapkan lingkungan Pengembangan Ruby on Rails dengan Docker dan Docker Compose di Ubuntu

  3. Cara Menginstal Nextcloud dengan Nginx dan Lets Encrypt SSL di Ubuntu 20.04 LTS

  1. Bangun Server IRC dengan IRCD-Hybrid dan Anope di Ubuntu 15.04

  2. Cara Menginstal Drupal 8 dengan Nginx, PHP-FPM dan SSL di Ubuntu 15.10

  3. Cara Instal Drupal 8 dengan Apache, MySQL dan SSL di Ubuntu 15.10