Blame
Date:
Mon Jan 23 05:00:25 2023
UTC
Message:
Daily backup
002
2022-10-30
agent=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/11.0 Safari/605.1.15 vimb/3.6.0
010
2022-04-06
targets=Ngircd.Install,IPv6.Overview,IPv4.Overview,Ngircd.Link,Ident.Intro,Anope.HostServ,Anope.Chanserv,Anope.Operserv,Anope.Botserv,Anope.Memoserv,Anope.Global,Opensmtpd.Intro,Opensmtpd.Configure,Opensmtpd.Test,Crontab.Usage
011
2022-10-30
text=(:title Installing Anope:)%0a%0a[[https://anope.org/|Anope]] is a set of IRC services. It is cross-platform (runs on Linux and BSD) and works well with a variety of IRCds such as [[ngircd/install|ngircd]].%0a%0aAnope provides users with the NickServ, ChanServ and other *Serv that users expect from IRC. This allows users to register their nicknames, channels, and much more.%0a%0aThe main drawback to anope is that it is written in C++ and has too many configurable parameters for most new admins of IRC.%0a%0a!! Building Anope%0a%0aFirst, install cmake and gettext-tools (internationalization support):%0a%0a[@%0a$ doas pkg_add cmake gettext-tools%0a@]%0a%0aCreate a new user for anope:%0a%0a[@%0a$ doas useradd -m -g =uid -c "anope" -d /home/anope -s /bin/ksh anope%0a$ doas su anope%0a$ cd ~%0a@]%0a%0aNext, download the latest [[https://github.com/anope/anope/releases]] of Anope:%0a%0a[@%0a$ ftp https://github.com/anope/anope/archive/refs/tags/2.0.10.tar.gz%0a$ tar -zxf 2.0.10.tar.gz%0a$ cd anope-2.0.10%0a@]%0a%0aBefore proceeding, make sure to thoroughly read README.md and the%0adocs/ folder.%0a%0a[@%0a$ ./Config%0a@]%0a%0aDefault settings are recommended. Press enter for every question asked.%0a%0aFor these two questions, type NONE in all caps.%0a%0aNext, build Anope:%0a%0a[@ %0a$ cd build/%0a$ make%0a$ make install%0a@]%0a%0aCreate services.conf:%0a%0a[@%0a$ cd ~/services/conf/%0a$ cp example.conf services.conf%0a@]%0a%0aEdit services.conf:%0a%0a[@%0adefine%0a{%0a name = "services.host"%0a value = "services.irc.example.com"%0a}%0a@]%0a%0aReplace @@services.irc.example.com@@ with your real hostname.%0a%0a[@%0auplink%0a{%0a host = "127.0.0.1"%0a ipv6 = no%0a ssl = no%0a port = 16667%0a password = "NGIRCDMYPASSWORD"%0a}%0a@]%0a%0aThe host is the address of the server you want to connect to. In this setup, anope will be running on the same server that [[ngircd/install|ngircd]] will be running on.%0a%0aWe want to disable [[IPv6/overview|IPv6]] and use [[IPv4/overview|IPv4]] only. SSL is not necessary because we are connecting to localhost.%0a%0a'''NOTE''': ngircd must be set to [[ngircd/install|listen on port 16667]] (or whatever port you decide to use).%0a%0aThe server password must match MyPassword in [[https://ngircd.barton.de/doc/sample-ngircd.conf|ngircd.conf]]'s [[ngircd/link|Server block]].%0a%0a[@%0aserverinfo%0a{%0a name = "services.irc.example.com"%0a description = "Services for IRC Networks"%0a pid = "data/services.pid"%0a motd = "conf/services.motd"%0a}%0a@]%0a%0aReplace @@services.irc.example.com@@ with the actual hostname. Replace the description. The rest should be left untouched.%0a%0a[@%0amodule%0a{%0a name = "ngircd"%0a use_server_side_mlock = yes%0a use_server_side_topiclock = yes%0a}%0a@]%0a%0a'''WARNING''': Your module must match your ircd. In this guide, we use the [[ngircd/install|ngircd]] module.%0a%0a[@%0anetworkinfo%0a{%0a networkname = "ExampleNet"%0a nicklen = 16%0a userlen = 16%0a hostlen = 64%0a chanlen = 32%0a modelistsize = 100%0a vhost_chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-"%0a allow_undotted_vhosts = false%0a disallow_start_or_end = ".-"%0a}%0a@]%0a%0aReplace @@ExampleNet@@ with your actual network name.%0a%0aOn IRCNow, @@nicklen@@ (the maximum nick length) and @@userlen@@ (the maximum [[ident/intro|ident]] length) are both 16. The rest are left at defaults.%0a%0aYou will need to configure the rest of services.conf according to the comments. The defaults are generally sensible.%0a%0a!!! Adding Operators%0a%0aFor each IRC operator, create a block:%0a%0a[@%0aoper%0a{%0a name = "OPERNICK"%0a type = "Services Root"%0a require_oper = yes%0a password = "OPERPASSWORD"%0a #certfp = "ed3383b3f7d74e89433ddaa4a6e5b2d7"%0a #host = "*@*.anope.org ident@*"%0a #vhost = "oper.mynet"%0a}%0a@]%0a%0aReplace @@OPERNICK@@ with your operator's nickname. require_oper will require the user first be an oper on the IRCd before he can be services operator. The user must first type @@/quote oper OPERNICK PASSWORD@@%0a%0aAnope has four levels of operators:%0a%0a|| Operator Level%0a|| border=1 width=100%25 class="simpletable"%0a||! Type ||! Commands ||%0a|| Helper || [[anope/HostServ|HostServ]] (approves vhosts) ||%0a|| Services Operator || [[anope/HostServ|HostServ]], [[anope/chanserv|ChanServ]] (some), [[anope/operserv|OperServ]] (some) ||%0a|| Services Administrator || [[anope/HostServ|HostServ]], [[anope/chanserv|ChanServ]] (some), [[anope/operserv|OperServ]] (some), [[anope/botserv|BotServ]], [[anope/memoserv|MemoServ]], [[anope/global|Global]] ||%0a|| Services Root || All ||%0a%0a%0aIf a password is defined, the user must login using @@/squery OPERSERV LOGIN@@.%0a%0a[@%0amail%0a{%0a usemail = yes%0a sendmailpath = "/usr/sbin/sendmail -t"%0a sendfrom = "services@example.com"%0a delay = 5m%0a registration_subject = "Nickname registration for %25n"%0a registration_message = "Hi,%0a%0a You have requested to register the nickname %25n on %25N.%0a Please type \" /msg NickServ CONFIRM %25c \" to complete registration.%0a%0a If you don't know why this mail was sent to you, please ignore it silently.%0a%0a %25N administrators."%0a%0a reset_subject = "Reset password request for %25n"%0a reset_message = "Hi,%0a%0a You have requested to have the password for %25n reset.%0a To reset your password, type \" /msg NickServ CONFIRM %25n %25c \"%0a%0a If you don't know why this mail was sent to you, please ignore it silently.%0a%0a %25N administrators."%0a%0a emailchange_subject = "Email confirmation"%0a emailchange_message = "Hi,%0a%0a You have requested to change your email address from %25e to %25E.%0a Please type \" /msg NickServ CONFIRM %25c \" to confirm this change.%0a%0a If you don't know why this mail was sent to you, please ignore it silently.%0a%0a %25N administrators."%0a memo_subject = "New memo"%0a memo_message = "Hi %25n,%0a%0a You've just received a new memo from %25s. This is memo number %25d.%0a%0a Memo text:%0a%0a %25t"%0a}%0a@]%0a%0aWe set usemail to yes so that users can reset their passwords. Make sure your [[opensmtpd/intro|mail server]] is [[opensmtpd/configure|configured]] and [[opensmtpd/test|running properly]] before enabling this option.%0a%0aReplace @@services@example.com@@ with the actual email address you plan to send mail from.%0a%0a'''NOTE''': sendmail must be able to send from this email address.%0a%0aThe rest of the configuration uses the defaults.%0a%0aEdit @@/home/anope/services/conf/nickserv.conf@@:%0a%0a[@%0a defaults = "killprotect ns_secure ns_private hide_email hide_mask memo%0a_signon memo_receive autoop"%0a@]%0a%0akillprotect will give users 60 seconds to identify if they use a registered nick. If they do not identify within that time, they are killed.%0a%0a[@%0a restrictopernicks = yes%0a@]%0a%0a!! Configuring ngircd.conf%0a%0aIn ngircd.conf, you need a block that looks like this:%0a%0a[@%0a[Server]%0a Name = services.irc.example.com%0a Host = 127.0.0.1%0a ;Bind = 192.168.0.1%0a Port = 16667%0a MyPassword = NGIRCDMYPASSWORD%0a PeerPassword = NGIRCDPEERPASSWORD%0a ;Group = 123%0a Passive = yes%0a SSLConnect = false%0a ServiceMask = *Serv,Global%0a@]%0a%0aReplace @@services.irc.example.com@@ with the actual services hostname. The host will likely be 127.0.0.1 (again, because anope is running on the same server as ngircd). The port should be 16667.%0a%0aMake sure that MyPassword matches the server password for the uplink block in anope. Set Passive to yes so that ngircd does not automatically connect to anope (let anope initiate the connection), and turn off SSL.%0a%0aFinally, we set the ServiceMask. This lets ngircd know that the nicknames *Serv and Global belong to IRC Services.%0a%0aIf ngircd is already running, remember to reload changes to ngircd.conf:%0a%0a[@%0a$ doas rcctl reload ngircd%0a@]%0a%0a'''NOTE''': restarting ngircd is unnecessary and results in downtime.%0a%0aTo start services:%0a%0a[@%0a$ cd ~/services/bin%0a$ ./anoperc start%0a@] %0a%0aIf './anoperc start' fails, please double check the conf file.%0a%0a!! Automation%0a%0aWhile logged in as user anope:%0a%0a[@%0a$ cp ~/services/conf/{example,services}.chk%0a$ chmod +x ~/services/conf/services.chk%0a@]%0a%0aEdit the lines in ~/services/conf/services.chk to read as follows:%0a%0a[@%0a# Anope binary directory%0aANOPATH=/home/anope/services/bin%0a%0a# Anope data directory%0aANODATA=/home/anope/services/data%0a%0a# Name of the pid file%0aANOPIDF=services.pid%0a%0a# Name of the executable%0aANOPROG=services%0a%0a# Parameters to pass to the executable%0aANOARGS=""%0a#ANOARGS="-debug"%0a@]%0a%0aWhile logged in as user anope, set up a [[crontab/usage|cronjob]] with this entry:%0a%0a[@%0a$ crontab -e%0a@]%0a%0a[@%0a*/5 * * * * /home/anope/services/conf/services.chk >/home/anope/services/logs/services.log 2>&1%0a@]%0a%0a!! Troubleshooting%0a%0aIf you run into issues, check /home/anope/services/logs:%0a
016
2022-10-30
diff:1667070740:1650113874:=25c25%0a%3c Next, download the latest [[https://github.com/anope/anope/releases]] of Anope:%0a---%0a> Next, download the latest [[https://github.com/anope/anope/release]] of Anope:%0a
019
2022-04-18
diff:1650113874:1650112751:=229,232d228%0a%3c %0a%3c [@%0a%3c restrictopernicks = yes%0a%3c @]%0a
022
2022-04-18
diff:1650112751:1650112716:=228c228%0a%3c killprotect will give users 60 seconds to identify if they use a registered nick. If they do not identify within that time, they are killed.%0a---%0a> killprotect will kill unidentified nicks after 60 seconds.%0a
025
2022-04-18
diff:1650112716:1649018424:=220,228d219%0a%3c %0a%3c Edit @@/home/anope/services/conf/nickserv.conf@@:%0a%3c %0a%3c [@%0a%3c defaults = "killprotect ns_secure ns_private hide_email hide_mask memo%0a%3c _signon memo_receive autoop"%0a%3c @]%0a%3c %0a%3c killprotect will kill unidentified nicks after 60 seconds.%0a
028
2022-04-06
diff:1649018424:1649017937:=11,12c11,12%0a%3c First, install cmake and gettext-tools (internationalization support):%0a%3c %0a---%0a> First, install cmake:%0a> %0a14c14%0a%3c $ doas pkg_add cmake gettext-tools%0a---%0a> $ doas pkg_add cmake%0a40a41,53%0a> %0a> [@%0a> Are there any extra library directories you wish to use?%0a> You may only need to do this if CMake is unable to locate%0a> missing dependencies without hints.%0a> Separate directories with semicolons.%0a> If you need no extra library directories, enter NONE in all caps.%0a> [] NONE%0a> %0a> Are there any extra arguments you wish to pass to CMake?%0a> If you need no extra arguments to CMake, enter NONE in all caps.%0a> [] NONE%0a> @]%0a
031
2022-04-06
diff:1649017937:1649017890:=49,52d48%0a%3c %0a%3c Are there any extra arguments you wish to pass to CMake?%0a%3c If you need no extra arguments to CMake, enter NONE in all caps.%0a%3c [] NONE%0a55c51%0a%3c For these two questions, type NONE in all caps.%0a---%0a> For this question, type NONE in all caps.%0a
034
2022-04-06
diff:1649017890:1649015915:=41,51d40%0a%3c %0a%3c [@%0a%3c Are there any extra library directories you wish to use?%0a%3c You may only need to do this if CMake is unable to locate%0a%3c missing dependencies without hints.%0a%3c Separate directories with semicolons.%0a%3c If you need no extra library directories, enter NONE in all caps.%0a%3c [] NONE%0a%3c @]%0a%3c %0a%3c For this question, type NONE in all caps.%0a
037
2022-04-06
diff:1649015915:1649006209:=296c296%0a%3c */5 * * * * /home/anope/services/conf/services.chk >/home/anope/services/logs/services.log 2>&1%0a---%0a> */5 * * * * /home/anope/services/data/services.chk >/home/anope/services/logs/services.log 2>&1%0a
041
2022-04-06
diff:1649006209:1649006097:=1c1%0a%3c (:title Installing Anope:)%0a---%0a> (:title Anope:)%0a
045
2022-04-06
diff:1649006097:1648970134:=154,159c154,159%0a%3c || border=1 width=100%25 class="simpletable"%0a%3c ||! Type ||! Commands ||%0a%3c || Helper || [[anope/HostServ|HostServ]] (approves vhosts) ||%0a%3c || Services Operator || [[anope/HostServ|HostServ]], [[anope/chanserv|ChanServ]] (some), [[anope/operserv|OperServ]] (some) ||%0a%3c || Services Administrator || [[anope/HostServ|HostServ]], [[anope/chanserv|ChanServ]] (some), [[anope/operserv|OperServ]] (some), [[anope/botserv|BotServ]], [[anope/memoserv|MemoServ]], [[anope/global|Global]] ||%0a%3c || Services Root || All ||%0a---%0a> || border=1 width=100%25 class="sortable simpletable"%0a> ||! Type || Commands ||%0a> ||! Helper || [[anope/HostServ|HostServ]] (approves vhosts) ||%0a> ||! Services Operator || [[anope/HostServ|HostServ]], [[anope/chanserv|ChanServ]] (some), [[anope/operserv|OperServ]] (some) ||%0a> ||! Services Administrator || [[anope/HostServ|HostServ]], [[anope/chanserv|ChanServ]] (some), [[anope/operserv|OperServ]] (some), [[anope/botserv|BotServ]], [[anope/memoserv|MemoServ]], [[anope/global|Global]] ||%0a> ||! Services Root || All ||%0a
048
2022-04-06
diff:1648970134:1648970021:minor=269c269%0a%3c Edit the lines in ~/services/conf/services.chk to read as follows:%0a---%0a> Edit the following lines in ~/services/conf/services.chk:%0a
051
2022-04-06
diff:1648970021:1648968457:=262,263c262,263%0a%3c While logged in as user anope:%0a%3c %0a---%0a> While logged in as user anope, set up a [[crontab/usage|cronjob]] with this entry:%0a> %0a265,266c265%0a%3c $ cp ~/services/conf/{example,services}.chk%0a%3c $ chmod +x ~/services/conf/services.chk%0a---%0a> $ crontab -e%0a269,270d267%0a%3c Edit the following lines in ~/services/conf/services.chk:%0a%3c %0a272,286c269%0a%3c # Anope binary directory%0a%3c ANOPATH=/home/anope/services/bin%0a%3c %0a%3c # Anope data directory%0a%3c ANODATA=/home/anope/services/data%0a%3c %0a%3c # Name of the pid file%0a%3c ANOPIDF=services.pid%0a%3c %0a%3c # Name of the executable%0a%3c ANOPROG=services%0a%3c %0a%3c # Parameters to pass to the executable%0a%3c ANOARGS=""%0a%3c #ANOARGS="-debug"%0a---%0a> */5 * * * * /home/anope/services/data/services.chk >/home/anope/services.log 2>&1%0a288,301d270%0a%3c %0a%3c While logged in as user anope, set up a [[crontab/usage|cronjob]] with this entry:%0a%3c %0a%3c [@%0a%3c $ crontab -e%0a%3c @]%0a%3c %0a%3c [@%0a%3c */5 * * * * /home/anope/services/data/services.chk >/home/anope/services/logs/services.log 2>&1%0a%3c @]%0a%3c %0a%3c !! Troubleshooting%0a%3c %0a%3c If you run into issues, check /home/anope/services/logs:%0a
054
2022-04-06
diff:1648968457:1648967412:minor=87a88,89%0a> You will need to configure the rest of services.conf according to the instructions.%0a> %0a129,130d130%0a%3c %0a%3c You will need to configure the rest of services.conf according to the comments. The defaults are generally sensible.%0a
060
2022-04-06
diff:1648929651:1648929461:minor=63c63%0a%3c value = "services.irc.example.com"%0a---%0a> value = "services.localhost.net"%0a
063
2022-04-06
diff:1648929461:1648880957:minor=3c3%0a%3c [[https://anope.org/|Anope]] is a set of IRC services. It is cross-platform (runs on Linux and BSD) and works well with a variety of IRCds such as [[ngircd/install|ngircd]].%0a---%0a> [[https://anope.org/|Anope]] is a set of IRC services that is cross-platform (runs on Linux and BSD) and works well with a variety of IRCds such as [[ngircd/install|ngircd]].%0a
066
2022-04-06
diff:1648880957:1648880753:=262,263c262,263%0a%3c While logged in as user anope, set up a [[crontab/usage|cronjob]] with this entry:%0a%3c %0a---%0a> While logged in as user anope, set up a cronjob:%0a> %0a265,269c265%0a%3c $ crontab -e%0a%3c @]%0a%3c %0a%3c [@%0a%3c */5 * * * * /home/anope/services/data/services.chk >/home/anope/services.log 2>&1%0a---%0a> $ echo '*/5 * * * * /home/anope/services/data/services.chk >/home/anope/services.log 2>&1' >> /var/cron/tabs/anope%0a
069
2022-04-06
diff:1648880753:1648880379:=259,266d258%0a%3c %0a%3c !! Automation%0a%3c %0a%3c While logged in as user anope, set up a cronjob:%0a%3c %0a%3c [@%0a%3c $ echo '*/5 * * * * /home/anope/services/data/services.chk >/home/anope/services.log 2>&1' >> /var/cron/tabs/anope%0a%3c @]%0a
072
2022-04-06
diff:1648880379:1648879438:=161d160%0a%3c %0a163,217d161%0a%3c %0a%3c [@%0a%3c mail%0a%3c {%0a%3c usemail = yes%0a%3c sendmailpath = "/usr/sbin/sendmail -t"%0a%3c sendfrom = "services@example.com"%0a%3c delay = 5m%0a%3c registration_subject = "Nickname registration for %25n"%0a%3c registration_message = "Hi,%0a%3c %0a%3c You have requested to register the nickname %25n on %25N.%0a%3c Please type \" /msg NickServ CONFIRM %25c \" to complete registration.%0a%3c %0a%3c If you don't know why this mail was sent to you, please ignore it silently.%0a%3c %0a%3c %25N administrators."%0a%3c %0a%3c reset_subject = "Reset password request for %25n"%0a%3c reset_message = "Hi,%0a%3c %0a%3c You have requested to have the password for %25n reset.%0a%3c To reset your password, type \" /msg NickServ CONFIRM %25n %25c \"%0a%3c %0a%3c If you don't know why this mail was sent to you, please ignore it silently.%0a%3c %0a%3c %25N administrators."%0a%3c %0a%3c emailchange_subject = "Email confirmation"%0a%3c emailchange_message = "Hi,%0a%3c %0a%3c You have requested to change your email address from %25e to %25E.%0a%3c Please type \" /msg NickServ CONFIRM %25c \" to confirm this change.%0a%3c %0a%3c If you don't know why this mail was sent to you, please ignore it silently.%0a%3c %0a%3c %25N administrators."%0a%3c memo_subject = "New memo"%0a%3c memo_message = "Hi %25n,%0a%3c %0a%3c You've just received a new memo from %25s. This is memo number %25d.%0a%3c %0a%3c Memo text:%0a%3c %0a%3c %25t"%0a%3c }%0a%3c @]%0a%3c %0a%3c We set usemail to yes so that users can reset their passwords. Make sure your [[opensmtpd/intro|mail server]] is [[opensmtpd/configure|configured]] and [[opensmtpd/test|running properly]] before enabling this option.%0a%3c %0a%3c Replace @@services@example.com@@ with the actual email address you plan to send mail from.%0a%3c %0a%3c '''NOTE''': sendmail must be able to send from this email address.%0a%3c %0a%3c The rest of the configuration uses the defaults.%0a
078
2022-04-06
diff:1648879305:1648878984:=155,159c155,159%0a%3c ||! Type || Commands ||%0a%3c ||! Helper || [[anope/HostServ|HostServ]] (approves vhosts) ||%0a%3c ||! Services Operator || [[anope/HostServ|HostServ]], [[anope/chanserv|ChanServ]] (some), [[anope/operserv|OperServ]] (some) ||%0a%3c ||! Services Administrator || [[anope/HostServ|HostServ]], [[anope/chanserv|ChanServ]] (some), [[anope/operserv|OperServ]] (some), [[anope/botserv|BotServ]], [[anope/memoserv|MemoServ]], [[anope/global|Global]] ||%0a%3c ||! Services Root || All ||%0a---%0a> ||! Type || Commands || Privileges ||%0a> ||! Services Root || || ||%0a> ||! Services Administrator || || ||%0a> ||! Services Operator || || ||%0a> ||! Helper || || ||%0a
081
2022-04-06
diff:1648878984:1648878817:=153,159c153,156%0a%3c || Operator Level%0a%3c || border=1 width=100%25 class="sortable simpletable"%0a%3c ||! Type || Commands || Privileges ||%0a%3c ||! Services Root || || ||%0a%3c ||! Services Administrator || || ||%0a%3c ||! Services Operator || || ||%0a%3c ||! Helper || || ||%0a---%0a> Services Root%0a> Services Administrator%0a> Services Operator%0a> Helper%0a
084
2022-04-06
diff:1648878817:1648859274:=105,107c105,107%0a%3c name = "ngircd"%0a%3c use_server_side_mlock = yes%0a%3c use_server_side_topiclock = yes%0a---%0a> name = "ngircd"%0a> use_server_side_mlock = yes%0a> use_server_side_topiclock = yes%0a113d112%0a%3c [@%0a131,158d129%0a%3c %0a%3c !!! Adding Operators%0a%3c %0a%3c For each IRC operator, create a block:%0a%3c %0a%3c [@%0a%3c oper%0a%3c {%0a%3c name = "OPERNICK"%0a%3c type = "Services Root"%0a%3c require_oper = yes%0a%3c password = "OPERPASSWORD"%0a%3c #certfp = "ed3383b3f7d74e89433ddaa4a6e5b2d7"%0a%3c #host = "*@*.anope.org ident@*"%0a%3c #vhost = "oper.mynet"%0a%3c }%0a%3c @]%0a%3c %0a%3c Replace @@OPERNICK@@ with your operator's nickname. require_oper will require the user first be an oper on the IRCd before he can be services operator. The user must first type @@/quote oper OPERNICK PASSWORD@@%0a%3c %0a%3c Anope has four levels of operators:%0a%3c %0a%3c Services Root%0a%3c Services Administrator%0a%3c Services Operator%0a%3c Helper%0a%3c %0a%3c If a password is defined, the user must login using @@/squery OPERSERV LOGIN@@.%0a
087
2022-04-02
diff:1648859274:1648857236:=93,94c93,94%0a%3c name = "services.irc.example.com"%0a%3c description = "Services for IRC Networks"%0a---%0a> name = "services.jrmu.host.bsdforall.org"%0a> description = "Services for testnet"%0a100,101c100,104%0a%3c Replace @@services.irc.example.com@@ with the actual hostname. Replace the description. The rest should be left untouched.%0a%3c %0a---%0a> %0a> %0a> %0a> One last block unique to our setup is:%0a> %0a110,129d112%0a%3c %0a%3c '''WARNING''': Your module must match your ircd. In this guide, we use the [[ngircd/install|ngircd]] module.%0a%3c %0a%3c networkinfo%0a%3c {%0a%3c networkname = "ExampleNet"%0a%3c nicklen = 16%0a%3c userlen = 16%0a%3c hostlen = 64%0a%3c chanlen = 32%0a%3c modelistsize = 100%0a%3c vhost_chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-"%0a%3c allow_undotted_vhosts = false%0a%3c disallow_start_or_end = ".-"%0a%3c }%0a%3c @]%0a%3c %0a%3c Replace @@ExampleNet@@ with your actual network name.%0a%3c %0a%3c On IRCNow, @@nicklen@@ (the maximum nick length) and @@userlen@@ (the maximum [[ident/intro|ident]] length) are both 16. The rest are left at defaults.%0a
090
2022-04-02
diff:1648857236:1648856735:minor=89,101d88%0a%3c %0a%3c [@%0a%3c serverinfo%0a%3c {%0a%3c name = "services.jrmu.host.bsdforall.org"%0a%3c description = "Services for testnet"%0a%3c pid = "data/services.pid"%0a%3c motd = "conf/services.motd"%0a%3c }%0a%3c @]%0a%3c %0a%3c %0a%3c %0a
093
2022-04-02
diff:1648856735:1648856178:=87,101d86%0a%3c %0a%3c You will need to configure the rest of services.conf according to the instructions.%0a%3c %0a%3c One last block unique to our setup is:%0a%3c %0a%3c [@%0a%3c module%0a%3c {%0a%3c name = "ngircd"%0a%3c use_server_side_mlock = yes%0a%3c use_server_side_topiclock = yes%0a%3c }%0a%3c @]%0a%3c %0a%3c !! Configuring ngircd.conf%0a
096
2022-04-02
diff:1648856178:1648855734:minor=92,101c92,101%0a%3c Name = services.irc.example.com%0a%3c Host = 127.0.0.1%0a%3c ;Bind = 192.168.0.1%0a%3c Port = 16667%0a%3c MyPassword = NGIRCDMYPASSWORD%0a%3c PeerPassword = NGIRCDPEERPASSWORD%0a%3c ;Group = 123%0a%3c Passive = yes%0a%3c SSLConnect = false%0a%3c ServiceMask = *Serv,Global%0a---%0a> Name = services.irc.example.com%0a> Host = 127.0.0.1%0a> ;Bind = 192.168.0.1%0a> Port = 16667%0a> MyPassword = NGIRCDMYPASSWORD%0a> PeerPassword = NGIRCDPEERPASSWORD%0a> ;Group = 123%0a> Passive = yes%0a> SSLConnect = false%0a> ServiceMask = *Serv,Global%0a104,110c104%0a%3c Replace @@services.irc.example.com@@ with the actual services hostname. The host will likely be 127.0.0.1 (again, because anope is running on the same server as ngircd). The port should be 16667.%0a%3c %0a%3c Make sure that MyPassword matches the server password for the uplink block in anope. Set Passive to yes so that ngircd does not automatically connect to anope (let anope initiate the connection), and turn off SSL.%0a%3c %0a%3c Finally, we set the ServiceMask. This lets ngircd know that the nicknames *Serv and Global belong to IRC Services.%0a%3c %0a%3c If ngircd is already running, remember to reload changes to ngircd.conf:%0a---%0a> Reload changes to ngircd.conf:%0a
099
2022-04-02
diff:1648855734:1648855305:minor=76c76%0a%3c password = "NGIRCDMYPASSWORD"%0a---%0a> password = "mypassword"%0a83a84,85%0a> The server password is MyPassword in [[https://ngircd.barton.de/doc/sample-ngircd.conf|ngircd.conf]]'s [[ngircd/link|Server block]].%0a> %0a86,89d87%0a%3c The server password must match MyPassword in [[https://ngircd.barton.de/doc/sample-ngircd.conf|ngircd.conf]]'s [[ngircd/link|Server block]].%0a%3c %0a%3c In ngircd.conf, you need a block that looks like this:%0a%3c %0a91,101c89,104%0a%3c [Server]%0a%3c Name = services.irc.example.com%0a%3c Host = 127.0.0.1%0a%3c ;Bind = 192.168.0.1%0a%3c Port = 16667%0a%3c MyPassword = NGIRCDMYPASSWORD%0a%3c PeerPassword = NGIRCDPEERPASSWORD%0a%3c ;Group = 123%0a%3c Passive = yes%0a%3c SSLConnect = false%0a%3c ServiceMask = *Serv,Global%0a---%0a> # For [@name = "services.host"@] you need to set the 'value =' (below the "name =" line) to: [@services.example.com@]%0a> # At uplink block you need to change it to something like this: [@uplink%0a> {%0a> host = "example.com"%0a> ssl = no%0a> port = 6667%0a> password = "YOURPASSWORDHERE"%0a> }@]%0a> #and edit the 'serverinfo' block.%0a> %0a> Now edit your ngircd.conf. Search for the [Server] block (with a lot of comments) and edit the following things:%0a> %0a> [@%0a> # Name = services.example.com%0a> # Host = example.com%0a> # MyPassword and PeerPassword to the password at the uplink block in services.conf%0a104,105c107,108%0a%3c Reload changes to ngircd.conf:%0a%3c %0a---%0a> Then reload ngircd (restarting is unnecessary and results in downtime):%0a> %0a109,110d111%0a%3c %0a%3c '''NOTE''': restarting ngircd is unnecessary and results in downtime.%0a
102
2022-04-02
diff:1648855305:1648854739:minor=69,86c69%0a%3c [@%0a%3c uplink%0a%3c {%0a%3c host = "127.0.0.1"%0a%3c ipv6 = no%0a%3c ssl = no%0a%3c port = 16667%0a%3c password = "mypassword"%0a%3c }%0a%3c @]%0a%3c %0a%3c The host is the address of the server you want to connect to. In this setup, anope will be running on the same server that [[ngircd/install|ngircd]] will be running on.%0a%3c %0a%3c We want to disable [[IPv6/overview|IPv6]] and use [[IPv4/overview|IPv4]] only. SSL is not necessary because we are connecting to localhost.%0a%3c %0a%3c The server password is MyPassword in [[https://ngircd.barton.de/doc/sample-ngircd.conf|ngircd.conf]]'s [[ngircd/link|Server block]].%0a%3c %0a%3c '''NOTE''': ngircd must be set to [[ngircd/install|listen on port 16667]] (or whatever port you decide to use).%0a---%0a> %0a
111
2022-04-02
diff:1648833768:1648790960:minor=50,51c50,51%0a%3c Create services.conf:%0a%3c %0a---%0a> Edit the conf:%0a> %0a54a55%0a> $ vi services.conf%0a57,71c58,61%0a%3c Edit services.conf:%0a%3c %0a%3c [@%0a%3c define%0a%3c {%0a%3c name = "services.host"%0a%3c value = "services.localhost.net"%0a%3c }%0a%3c @]%0a%3c %0a%3c Replace @@services.irc.example.com@@ with your real hostname.%0a%3c %0a%3c %0a%3c %0a%3c [@%0a---%0a> Inside services.conf:%0a> %0a> # For [@name = "services.host"@] you need to set the 'value =' (below the "name =" line) to: [@services.example.com@]%0a> # At uplink block you need to change it to something like this: [@uplink%0a
114
2022-04-02
diff:1648790960:1648790833:=30a31%0a> $ ./Config%0a33,39d33%0a%3c Before proceeding, make sure to thoroughly read README.md and the%0a%3c docs/ folder.%0a%3c %0a%3c [@%0a%3c $ ./Config%0a%3c @]%0a%3c %0a50c44%0a%3c Edit the conf:%0a---%0a> Next, edit the conf:%0a
117
2022-04-02
diff:1648790833:1648790729:=48d47%0a%3c $ cp example.conf services.conf%0a52c51%0a%3c Inside services.conf:%0a---%0a> Edit services.conf:%0a
120
2022-04-02
diff:1648790729:1648185065:=5c5%0a%3c Anope provides users with the NickServ, ChanServ and other *Serv that users expect from IRC. This allows users to register their nicknames, channels, and much more.%0a---%0a> Basically, IRC services provide users with the NickServ, ChanServ and other *Serv that they expect from IRC. This allows users to register their nicknames, channels, and much more.%0a
126
2022-03-26
diff:1648184665:1648184433:=47c47%0a%3c $ cd ~/services/conf/%0a---%0a> $ cd ~/services/conf%0a71,77c71,73%0a%3c Then reload ngircd (restarting is unnecessary and results in downtime):%0a%3c %0a%3c [@%0a%3c $ doas rcctl reload ngircd%0a%3c @]%0a%3c %0a%3c To start services:%0a---%0a> Then restart (or reload) your ngircd %0a> %0a> To start the services:%0a
129
2022-03-26
diff:1648184433:1648184313:=36,37c36,37%0a%3c Next, build Anope:%0a%3c %0a---%0a> Then you need to do the following to build it:%0a> %0a39d38%0a%3c $ cd build/%0a44c43%0a%3c Next, edit the conf:%0a---%0a> Once the source is built, you can go ahead edit the conf,%0a
132
2022-03-26
diff:1648184313:1648184304:=34c34%0a%3c Default settings are recommended. Press enter for every question asked.%0a---%0a> Default settings are recommended. You can simply press enter for every question asked.%0a
135
2022-03-26
diff:1648184304:1648184226:=34c34%0a%3c Default settings are recommended. You can simply press enter for every question asked.%0a---%0a> Press enter for every question, it is recommended to use the defaults.%0a
138
2022-03-26
diff:1648184226:1648183746:=30a31,35%0a> @]%0a> %0a> This will download the newest version of anope, untar it and change into the directory.%0a> %0a> [@%0a
141
2022-03-26
diff:1648183746:1648183480:=11,12c11,12%0a%3c First, install cmake:%0a%3c %0a---%0a> First, install the required packages:%0a> %0a17,18c17,19%0a%3c Create a new user for anope:%0a%3c %0a---%0a> %0a> Download the latest [[https://github.com/anope/anope/release]] of Anope:%0a> %0a25,26c26,27%0a%3c Next, download the latest [[https://github.com/anope/anope/release]] of Anope:%0a%3c %0a---%0a> Then download Anope:%0a> %0a28,30c29,31%0a%3c $ ftp https://github.com/anope/anope/archive/refs/tags/2.0.10.tar.gz%0a%3c $ tar -zxf 2.0.10.tar.gz%0a%3c $ cd anope-2.0.10%0a---%0a> $ ftp https://github.com/anope/anope/archive/2.0.9.tar.gz%0a> $ tar zxf 2.0.9.tar.gz%0a> $ cd anope-2.0.9%0a
144
2022-03-26
diff:1648183480:1648183364:=5,8c5,6%0a%3c Basically, IRC services provide users with the NickServ, ChanServ and other *Serv that they expect from IRC. This allows users to register their nicknames, channels, and much more.%0a%3c %0a%3c The main drawback to anope is that it is written in C++ and has too many configurable parameters for most new admins of IRC.%0a%3c %0a---%0a> Its main drawbacks are that it is written in C++ and has too many configurable parameters for most new admins of IRC.%0a> %0a10a9,12%0a> If you want the NickServ, ChanServ and all other *Serv you need to install anope%0a> %0a> https://github.com/anope/anope/releases%0a> %0a16,18d17%0a%3c %0a%3c %0a%3c Download the latest [[https://github.com/anope/anope/release]] of Anope:%0a
147
2022-03-26
diff:1648183364:1648183267:=5,8c5,6%0a%3c Its main drawbacks are that it is written in C++ and has too many configurable parameters for most new admins of IRC.%0a%3c %0a%3c !! Building Anope%0a%3c %0a---%0a> Unfortunately, it has too many configurable parameters for most new admins of IRC.%0a> %0a10,11d7%0a%3c %0a%3c https://github.com/anope/anope/releases%0a
150
2022-03-26
diff:1648183267:1646891430:=2,5d1%0a%3c %0a%3c [[https://anope.org/|Anope]] is a set of IRC services that is cross-platform (runs on Linux and BSD) and works well with a variety of IRCds such as [[ngircd/install|ngircd]].%0a%3c %0a%3c Unfortunately, it has too many configurable parameters for most new admins of IRC.%0a
153
2022-03-11
diff:1646891430:1646891124:=49c49%0a%3c # For [@name = "services.host"@] you need to set the 'value =' (below the "name =" line) to: [@services.example.com@]%0a---%0a> # At [@name = "services.host"@] you need to set the 'value =' (below the "name =" line) to: [@services.example.com@]%0a52c52%0a%3c host = "example.com"%0a---%0a> host = "%3cYOURVPSNAME>.coconut.ircnow.org"%0a55c55%0a%3c password = "YOURPASSWORDHERE"%0a---%0a> password = "%3cTHINK OF THIS BUT PLZ SAVE IT FOR NOW, YOU NEED IT LATER>"%0a59,63c59,64%0a%3c Now edit your ngircd.conf. Search for the [Server] block (with a lot of comments) and edit the following things:%0a%3c %0a%3c [@%0a%3c # Name = services.example.com%0a%3c # Host = example.com%0a---%0a> %0a> Now go to your ngircd conf and if its right then %0a> %0a> Search for the [Server] block (with a lots of comments) and edit the following things:%0a> # Name = services.%3cYOURVPSNAME>.coconut.ircnow.org%0a> # Host = %3cYOURVPSNAME>.coconut.ircnow.org%0a65,70c66,71%0a%3c @]%0a%3c %0a%3c Then restart (or reload) your ngircd %0a%3c %0a%3c To start the services:%0a%3c %0a---%0a> %0a> %0a> then restart (or reload) your ngircd %0a> %0a> then do the following to start the services:%0a> %0a76c77%0a%3c If './anoperc start' fails, please double check the conf file.%0a---%0a> if './anoperc start' fails, plz relook the conf or if you dont get out of the error, you can contact Miniontoby (AKA MiniontobyPI) on the ircnow network%0a
156
2022-03-11
diff:1646891124:1646891013:=9,14d8%0a%3c @]%0a%3c %0a%3c [@%0a%3c $ doas useradd -m -g =uid -c "anope" -d /home/anope -s /bin/ksh anope%0a%3c $ doas su anope%0a%3c $ cd ~%0a
162
2022-03-11
diff:1646890351:1646890189:=1,2d0%0a%3c (:title Anope:)%0a%3c %0a5,6c3,4%0a%3c First, install the required packages:%0a%3c %0a---%0a> To do so you need to firstly install the required packages:%0a> %0a11,12c9,12%0a%3c Then download Anope:%0a%3c %0a---%0a> Then download Anope,%0a> %0a> Do that by executing the following commands:%0a> %0a19,20c19,22%0a%3c This will download the newest version of anope, untar it and change into the directory.%0a%3c %0a---%0a> This will download the newest version of anope, untar it and it will cd into the dir.%0a> %0a> Then what you want to do is the following:%0a> %0a25,26c27,28%0a%3c Press enter for every question, it is recommended to use the defaults.%0a%3c %0a---%0a> and at every question you can press enter, its not recommended to edit any value%0a> %0a28d29%0a%3c %0a34,35c35%0a%3c Once the source is built, you can go ahead edit the conf,%0a%3c %0a---%0a> Then the source is builded and you can go ahead edit the conf,%0a41,43c41,43%0a%3c Edit services.conf:%0a%3c %0a%3c # At [@name = "services.host"@] you need to set the 'value =' (below the "name =" line) to: [@services.example.com@]%0a---%0a> edit at the services.conf the following things:%0a> %0a> # At [@name = "services.host"@] you need to set the 'value =' (below the "name =" line) to: [@services.YOURVPSNAME.coconut.ircnow.org@]%0a
165
2022-03-11
diff:1646890189:1646890161:=8a9%0a> %0a20a22%0a> %0a28a31%0a> %0a32c35%0a%3c $ make install%0a---%0a> $ doas make install%0a
168
2022-03-11
diff:1646890161:1621147622:=6c6%0a%3c $ doas pkg_add cmake%0a---%0a> $ doas pkg_add wget cmake%0a15c15%0a%3c $ ftp https://github.com/anope/anope/archive/2.0.9.tar.gz%0a---%0a> $ wget https://github.com/anope/anope/archive/2.0.9.tar.gz%0a74c74%0a%3c if './anoperc start' fails, plz relook the conf or if you dont get out of the error, you can contact Miniontoby (AKA MiniontobyPI) on the ircnow network%0a---%0a> if './anoperc start' fails, plz relook the conf or if you dont get out of the error, you can contact Miniontoby (AKA MiniontobyPI) on the ircnow network%0a\ No newline at end of file%0a
171
2021-12-17
csum:1621147622=replaced nano with vi, nano is not installed by default. added "$" in lines
172
2021-12-17
diff:1621147622:1612974751:minor=6c6%0a%3c $ doas pkg_add wget cmake%0a---%0a> doas pkg_add wget cmake%0a15,17c15,17%0a%3c $ wget https://github.com/anope/anope/archive/2.0.9.tar.gz%0a%3c $ tar zxf 2.0.9.tar.gz%0a%3c $ cd anope-2.0.9%0a---%0a> wget https://github.com/anope/anope/archive/2.0.9.tar.gz%0a> tar zxf 2.0.9.tar.gz%0a> cd anope-2.0.9%0a26c26%0a%3c $ ./Config%0a---%0a> ./Config%0a34,35c34,35%0a%3c $ make%0a%3c $ doas make install%0a---%0a> make%0a> make install%0a40,41c40,41%0a%3c $ cd ~/services/conf%0a%3c $ vi services.conf%0a---%0a> cd ~/services/conf%0a> nano services.conf%0a70,71c70,71%0a%3c $ cd ~/services/bin%0a%3c $ ./anoperc start%0a---%0a> cd ~/services/bin%0a> ./anoperc start%0a
175
2021-12-17
diff:1612974751:1612974751:=1,74d0%0a%3c If you want the NickServ, ChanServ and all other *Serv you need to install anope%0a%3c %0a%3c To do so you need to firstly install the required packages:%0a%3c %0a%3c [@%0a%3c doas pkg_add wget cmake%0a%3c @]%0a%3c %0a%3c %0a%3c Then download Anope,%0a%3c %0a%3c Do that by executing the following commands:%0a%3c %0a%3c [@%0a%3c wget https://github.com/anope/anope/archive/2.0.9.tar.gz%0a%3c tar zxf 2.0.9.tar.gz%0a%3c cd anope-2.0.9%0a%3c @]%0a%3c %0a%3c This will download the newest version of anope, untar it and it will cd into the dir.%0a%3c %0a%3c %0a%3c Then what you want to do is the following:%0a%3c %0a%3c [@%0a%3c ./Config%0a%3c @]%0a%3c %0a%3c and at every question you can press enter, its not recommended to edit any value%0a%3c %0a%3c %0a%3c Then you need to do the following to build it:%0a%3c [@ %0a%3c make%0a%3c make install%0a%3c @]%0a%3c %0a%3c Then the source is builded and you can go ahead edit the conf,%0a%3c [@%0a%3c cd ~/services/conf%0a%3c nano services.conf%0a%3c @]%0a%3c %0a%3c edit at the services.conf the following things:%0a%3c %0a%3c # At [@name = "services.host"@] you need to set the 'value =' (below the "name =" line) to: [@services.YOURVPSNAME.coconut.ircnow.org@]%0a%3c # At uplink block you need to change it to something like this: [@uplink%0a%3c {%0a%3c host = "%3cYOURVPSNAME>.coconut.ircnow.org"%0a%3c ssl = no%0a%3c port = 6667%0a%3c password = "%3cTHINK OF THIS BUT PLZ SAVE IT FOR NOW, YOU NEED IT LATER>"%0a%3c }@]%0a%3c #and edit the 'serverinfo' block.%0a%3c %0a%3c %0a%3c Now go to your ngircd conf and if its right then %0a%3c %0a%3c Search for the [Server] block (with a lots of comments) and edit the following things:%0a%3c # Name = services.%3cYOURVPSNAME>.coconut.ircnow.org%0a%3c # Host = %3cYOURVPSNAME>.coconut.ircnow.org%0a%3c # MyPassword and PeerPassword to the password at the uplink block in services.conf%0a%3c %0a%3c %0a%3c then restart (or reload) your ngircd %0a%3c %0a%3c then do the following to start the services:%0a%3c %0a%3c [@%0a%3c cd ~/services/bin%0a%3c ./anoperc start%0a%3c @] %0a%3c %0a%3c if './anoperc start' fails, plz relook the conf or if you dont get out of the error, you can contact Miniontoby (AKA MiniontobyPI) on the ircnow network%0a\ No newline at end of file%0a