Skip to content
This repository was archived by the owner on Feb 12, 2019. It is now read-only.

New Server Setup

Christine Dodrill edited this page Nov 6, 2015 · 2 revisions

Installation

$ ./configure --prefix /home/xena/prefix/ircd
$ make
$ make install
$ cd /home/xena/prefix/ircd

Now you need to set up the configuration:

$ cd etc
$ cp example.conf ircd.conf

Now open it in your favorite text editor that should probably be emacs. The main settings you are going to want to change:

serverinfo {
	name = "magicant.xeserv.us";
	sid = "420";
	description = "the realm of your mind";
	network_name = "ShadowNET";
	network_description = "If you are reading this, it's read";
};

And then your oper password:

operator "god" {
	user = "*@*";
	password = "$6$sTUyO72VYe8zFElq$kGufiGaxVTGF6DWS9o/Q04jfQjG977Kw3yjtx4s.DY/VfAGLWI7jPiEj/dTZxuUsBtfd1TYm8hnUurXhA0MJ2/"; # dank
	snomask = "+ZbfkrsuyFc";

	/* vhost: defines the vhost that this oper will get on oper up.
	 * this must be a valid hostmask. If this is specified the oper
	 * will not be given default_operhost.
	 */
	vhost = "is.an.oper";

	/* swhois: defines an additional line that will be displayed
	 * whenever someone does /whois on the oper in question.
	 */
	swhois = "is wearing pants.";

	/* operstring: defines a custom operstring for this oper,
	 * which will be shown in whois instead of default_operstring
	 * or default_adminstring.
	 */
	operstring = "is a lazy IRC Operator";

	/* flags: misc options for the operator.  You may prefix an option
	 * with ~ to disable it, e.g. ~encrypted.
	 *
	 * Default flags are encrypted.
	 *
	 * Available options:
	 *
	 * encrypted:    the password above is encrypted [DEFAULT]
	 * need_ssl:     must be using SSL/TLS to oper up
         */
	flags = encrypted, need_ssl;

	/* privset: privileges set to grant */
	privset = "admin";
};

Generate a password hash with bin/mkpasswd:

$ ./mkpasswd
plaintext:
$6$sTUyO72VYe8zFElq$kGufiGaxVTGF6DWS9o/Q04jfQjG977Kw3yjtx4s.DY/VfAGLWI7jPiEj/dTZxuUsBtfd1TYm8hnUurXhA0MJ2/

That hash is of the word dank.

Please also consider link hiding / flattening, it will help reduce the information a bad user can gather about a network:

serverhide {
	flatten_links = yes;
	links_delay = 5 minutes;
	hidden = yes;
	disable_hidden = no;
};

Set up Shalture linking blocks:

connect "services.int" {
	host = "127.0.0.1";
	send_password = "password";
	accept_password = "password";
	port = 6666;
	hub_mask = "*";
	class = "server";
	flags = compressed, topicburst;
};

And add this to Shalture:

/* uplink{} blocks define connections to IRC servers.
 * Multiple may be defined but only one will be used at a time (IRC
 * being a tree shaped network). Shaltúre does not currently link over SSL.
 * To link Shaltúre over ssl, please connect Shaltúre to a local ircd and have that
 * connect to your network over SSL.
 */
uplink "magicant.xeserv.us" {
	// The server name of the ircd you're linking to goes above.

	// host
	// The hostname to connect to.
	host = "127.0.0.1";

	// vhost
	// The source IP to connect from, used on machines with multiple interfaces.
	#vhost = "192.0.2.5";

	// send_password
	// The password sent for linking.
	send_password = "password";

	// receive_password
	// The password received for linking.
	receive_password = "password";

	// port
	// The port to connect to.
	port = 6667;
};

Then start up your ircd:

$ ./ircd
  notice: starting elemental-ircd-6.6.3 ...
  notice: libratbox version: 20081213_1-26296
   error: "/home/xena/prefix/ircd/etc/ircd.conf", line 327: Ignoring connect::flags::compressed -- zlib not available.

And connect with a client:

$ irssi -c 127.0.0.1

And that's setup in a box!

Clone this wiki locally