Instalasi dan Konfigurasi IRCD Hybrid & Anope Services di CentOS

IRCD Hybrid adalah IRC Daemon yang disediakan tanpa menghabiskan resource server yang terlalu banyak. Jadi bisa dikatakan bahwa IRCD Hybrid adalah pilihan yang tepat untuk menciptakan suatu server IRC, namun juga dapat menjaga performa server. Sebuah server IRC, agar lebih baik, kita perlu untuk memasang services untuk keamanan dan kenyamanan user yang terhubung ke server IRC kita. Disini saya menggunakan Anope. IRC Hybrid dan Anope adalah pasangan serasi yang digunakan juga oleh server IRC Bukan Coder. Di artikel ini saya akan memberikan tutorial dan penjelasan tentang bagaimana Instalasi dan Konfigurasi IRCD Hybrid & Anope Services di CentOS.

Download IRCD Hybrid

Untuk manajemen file yang baik, Buatlah folder yang nantinya digunakan untuk menampung file-file yang nantinya akan di compile.

mkdir file

Setelah itu kita masuk ke dalam direktori file. Lalu mulailah mendownload IRCD Hybrid

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

Setelah selesai di download, extract file IRCD Hybrid.

tar -xvf 8.2.8.tar.gz

Instalasi IRCD Hybrid

Sebelum melanjutkan proses Instalasi yang pertama kali yang harus kita lakukan adalah menginstall seluruh komponen yang dibutuhkan untuk meng-compile fil-file IRCD Hybrid & Anope. Karena server yang saya gunakan untuk tutorial ini adalah server yang baru di rebuild dan unmanaged server, selanjutkan kita mulai install Developer Tools dengan yum installer.

yum groupinstall 'Development Tools'

Setelah selesai proses Instalasi Developer Tools, kita masuk ke direktori IRCD Hyrid.

cd ircd-hybrid-8.2.8/

Lalu setelah itu konfigurasi direktori default untuk ircd hybrid nantinya.

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

Setelah makefile berhasil dibuat, selanjutnya kita perlu meng-compile source code binary dari IRCD Hybrid.

make
make install

Instalasi dan Konfigurasi Anope

Setelah proses Instalasi dan konfigurasi IRCD Hybrid selesai, selanjutnya kita lanjutkan dengan proses Instalasi Anope. Kembalilah di direktori home. Setelah itu kembali masuk ke direktori file.

cd file

Lalu dilanjutkan dengan mendownload Anope.

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

Setelah itu extract file Anope yang sudah kita download tadi.

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

Konfigurasi Anope

Sebelum melanjutkan Instalasi dan konfigurasi Anope, kita perlu untuk menginstall cmake. Cmake dibutuhkan Anope untuk menjalankan Config Anope nantinya.

yum install cmake

Masuk ke direktori Anope.

cd anope-2.0.2-source/

Setelah itu :

./Config

Setelah muncul seperti tampilan diatas, tekan saja enter untuk menjalankan config Anope. Setelah proses config selesai, masuk ke dalam direktori build.

cd build

Setelah itu jalankan perintah :

make

Proses ini akan menyita sedikit waktu. Setelah selesai jalankan perintah :

make install

Buat Password yang Terenskripsi untuk Oper IRCD Hybrid

Kita baru saja telah menyelesaikan proses compile dari IRCD Hybrid dan Anope. Selanjutnya sebelum melakuakn konfigurasi pada IRCD Hybrid dan Anope, kita perlu membuat password yang aman untuk oper staff di server IRC kita nantinya. Masuk ke dalam direktori ircd, kemudian masuk ke dalam direktori bin.

cd /ircd/bin/
./mkpasswd

Konfigurasi IRCD Hybrid

cp ircd/etc/reference.conf ircd/etc/ircd.conf

Setelah itu masuk ke dalam direktori ircd/etc/ dan kita perlu mengkonfigurasi file ircd.conf.

nano ircd.conf

Berikut adalah baris yang perlu diganti :

 name = "priv8.bukancoder.com";
* description: the description of the server.
 */
 description = "BukanCoder IRC Server";
/*
 * network_name, network_desc: the name and description of the network this
 * server is on. Shown in the 005 reply and used with serverhiding.
 */
 network_name = "BukanCoder";
 network_desc = "Priv8 IRCNetwork";

Gantilah baris diatas sesuai dengan server IRC yang ingin kita buat. Sesuaikan :

 * admin {}: contains administrative information about the server
 */
admin {
 name = "Teguh";
 description = "Main Server Administrator";
 email = "<Teguh@bukancoder.com>";
};

Data diatas adalah data admin untuk server IRC kita nantinya

Pada baris need_ident kita perlu untuk menambahkan tanda “#” agar jika user melakukan koneksi ke server IRC kita mereka tidak dihalangi karena harus membutuhkan ident. Ganti hingga terlihat seperti ini :

auth {
 user = "*@*";
 class = "users";
 #flags = need_ident;

Selanjutnya lakukan perubahan pada baris operator, sesuaikan dengan oper yang ingin digunakan, gunakan password terenskripsi yang sudah kita buat sebelumnya.

/*
 * operator {}: defines ircd operators
 */
operator {
 /* name: the name of the operator */
 name = "Staff";
/*
 * user: the user@host required for this operator. Multiple user
 * lines are permitted within each operator {} block.
 */
 user = "@*.*.*.*";
 /*
 * password: the password required to oper. By default this will
 * need to be encrypted by using the provided mkpasswd tool.
 * Several password hash algorithms are available depending
 * on your system's crypt() implementation. For example, a modern
 * glibc already has support for the SHA-256/512 and MD5 encryption
 * algorithms.
 */
 password = "$1$u1nMtEId$uCyjHhBpyxCBRwYScsETW0";
/*
 * encrypted: controls whether the oper password above has been
 * encrypted. Default is 'yes' if nothing else is specified.
 */
 encrypted = yes;

Selanjutnya kita perlu mengganti pada baris connect, ini dubutuhkan untuk menghubunkan IRCD Hybrid dengan Anope Services.

/*
 * connect {}: define a server to connect to
 */
connect {
 /* name: the name of the server. */
 name = "ircserv.bukancoder.com";
/*
 * host: the host or IP address to connect to. If a hostname is used it
 * must match the reverse DNS of the server.
 */
 host = "IP Services";
/*
 * vhost: the IP address to bind to when making outgoing connections to
 * servers.
 * serverinfo::vhost and serverinfo::vhost6 will be overridden
 * by this directive.
 */
 vhost = "IP Services";
/*
 * send_password, accept_password: the passwords to send and accept.
 * The remote server will have these passwords swapped.
 */
 send_password = "password";
 accept_password = "password";

Setelah selesai simpan dan tutup file ircd.conf. Lalu kita coba untuk menjalankan IRCD Hybrid. Masuklah ke direktori ircd/bin kemudian jalankan perintah :

./ircd

Setelah berhasil, selanjutnya silahkan kita coba untuk connect ke server irc yang baru saja kita buat.

/s irc.bukancoder.com

Konfigurasi Anope Services

IRCD Hybrid sudah berjalan dengan baik. Selanjutnya kita perlu untuk menghubungkan Anope dengan IRCD Hybrid.

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

Kemudian edit file services.conf. Berikut beberapa baris yang perlu diganti pada file services.conf :

plink
{
 /*
 * The IP or hostname of the IRC server you wish to connect Services to.
 * Usually, you will want to connect Services over 127.0.0.1 (aka localhost).
 *
 * NOTE: On some shell providers, this will not be an option.
 */
 host = "IP IRCD Hybrid"
/*
 * Enable if Services should connect using IPv6.
 */
 ipv6 = no
/*
 * Enable if Services should connect using SSL.
 * You must have an SSL module loaded for this to work.
 */
 ssl = no
/*
 * The port to connect to.
 * The IRCd *MUST* be configured to listen on this port, and to accept
 * server connections.
 *
 * Refer to your IRCd documentation for how this is to be done.
 */
 port = 6667
/*
 * The password to send to the IRC server for authentication.
 * This must match the link block on your IRCd.
 *
 * Refer to your IRCd documentation for more information on link blocks.
 */
 password = "password"
}

Ganti beberapa baris diatas untuk menghubungkan IRCD Hybrid dan Anope Services. Setelah itu ganti lagi pada baris berikut ini di file services.conf.

 * [REQUIRED] Server Information
 *
 * This section contains information about the Services server.
 */
serverinfo
{
 /*
 * The hostname that Services will be seen as, it must have no conflicts with any
 * other server names on the rest of your IRC network. Note that it does not have
 * to be an existing hostname, just one that isn't on your network already.
 */
 name = "ircserv.bukancoder.com"
/*
 * The text which should appear as the server's information in /whois and similar
 * queries.
 */
 description = "BukancCoder Services for IRC Networks"
/*
 * The local address that Services will bind to before connecting to the remote
 * server. This may be useful for multihomed hosts. If omitted, Services will let
 * the Operating System choose the local address. This directive is optional.
 *
 * If you don't know what this means or don't need to use it, just leave this
 * directive commented out.
 */
 #localhost = "nowhere."
/*
 * What Server ID to use for this connection?
 * Note: This should *ONLY* be used for TS6/P10 IRCds. Refer to your IRCd documentation
 * to see if this is needed.
 */
 #id = "00A"
/*
 * The filename containing the Services process ID. The path is relative to the
 * services root directory.
 */
 pid = "data/services.pid"
/*
 * The filename containing the Message of the Day. The path is relative to the
 * services root directory.
 */
 motd = "conf/services.motd"
}

Setelah itu ganti module menjadi hybrid.

module
{
 name = "hybrid"
Ganti network name

/*
 * This is the name of the network that Services will be running on.
 */
 networkname = "BukanCoder Priv8 Network"

Setelah selesai mengganti beberapa baris serivices.conf, simpan kemudian tutup.

Menjalankan Anope Services

cd ~/services/bin/
./anoperc start

Output nya nantinya akan seperti berikut ini :

Starting Anope
Anope 2.0.2, build #2, compiled 12:22:26 November 29 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...

Jika tampilan yang muncul seperti diatas, berarti Anope dan IRCD Hybrid telah terhubung dengan baik. Kembali ke IRC kemudian coba oper sebagai staff.

/oper staff password

Setelah itu rehash IRCD Hybrid :

/rehash

Sekarang server IRC yang kita buat sudah dapat digunakan dan dilengkapi oleh services yang dapat mendukung jalannya server IRC kita dengan baik. Sekian dari saya, semoga bermanfaat.

Powered byGatsbyGitHubAWS Amplify
FacebookInstagramYouTubeTwitterInstagramGitHubTelegram