Source

GoIRCd / goircd.conf.example

Full commit
// GoIRCd example configuration file

Server {
	Name "irc.my.net"

	Network "MyIRC"

	Description "My IRC Network"

	// Optional server ID, should be one decimal character followed by
	// two hexadecimal characters. If omitted, one is computed from
	// ServerName and Description.
	//ID "3AF"
}

System {
	MaxProcessors 1
}

Admin {
	Name "Ad Minnie Strator"
	Nick "Admin"
	Email "admin@my.net"
}

Options {
	DefaultModes "nt"
	HostInTopic true

	PartPrefix ""
	PartSuffix ""
	QuitPrefix "Quit: "
	QuitSuffix ""

	DefaultQuit "Client exited"

	Halfop false
	ProtectOwner false
	OwnerOnJoin false

	IPv4Range 32
	IPv6Range 128
}

Security {
	FlatMap true
	HideULines false

	// DieHash "md5"
	DiePassword "die-you-@#$%!"
	// RestartHash "md5"
	RestartPassword "restart-you-@#$%!"
}

Cloak {
	Key "secret"
	Prefix "mynet-"
	Suffix ".IP"
}

TLS {
	CertFile "cert/goircd.cert"
	KeyFile "cert/goircd.key"
}

Files {
	MOTD "motd.txt"
	Rules "rules.txt"
}

Log "goircd.log" {
	Level "Error"
}

Limits {
	Nickname 31
	Ident 11
	RealName 128
	VHost 64

	Away 200
	PartReason 200
	QuitReason 255

	ChannelName 32
	ChannelLists 60
	Topic 307
	KickReason 255

	MaxChannels 10
	MaxOperChannels 20

	MaxTargets 20
	MaxModes 20

	XLineLimit 50

	MaxWho 4096
}

Bind {
	Port 6666
	Type "servers"
}

Bind {
	Port "6667-6669"
	Type "clients"
}

Bind {
	Port 9999
	Type "clients"
	TLS true
}

Connect "*" {
	Deny "*.forbidden.com"

	MaxGlobal 3
	MaxLocal 3
	RegistrationTimeout 10

	PingFreq 120
	SendQ 1048576
	RecvQ 8192

	FakeLag true
	Threshold 10

	Modes "+iwx"
}

ULine "services.my.net" {
	Silent true
}

Link "services.my.net" {
	Host "127.0.0.1"
	AllowMask "127.0.0.1"

	Port 6666
	Timeout 300

	SendPass "zomgsekrit"
	RecvPass "shhdonttell"
}

OperType "SuperOper" {
	VHost "staff.my.net"
}

Oper "Admin" {
	Type "SuperOper"

	// Hash "md5"

	Password "password"
	Host "*.my.net"
}

// Configuration of shuns, issued by /SHUN and /TEMPSHUN commands,
// implemented by m_shun.go and m_tempshun.go, respectively.
Shun {
	// Whether to notify a user their commands are being ignored
	NotifyUser false

	// Space-separated list of commands a (temp)shunned user may still issue
	AllowedCommands "ADMIN PING PONG PART QUIT"
}

// Custom virtual host (or vanity host) for users, implemented by m_vhost.go
// A user can adopt this vhost by issuing the command, "/VHOST Alice password"
VHost "Alice" {
	Host "through.the.looking.glass"

	// Hash "md5"
	Password "password"
}

// Allowed Web IRC gateway
WebIRC {
	// Hostname or IP address of accepted WebIRC gateway
	Host "127.0.0.1"

	// Required password to complete WEBIRC command
	Password "webirc password goes here"
}