ZNC - Logging in as IRC operator on connect:

To login as oper on connect using ZNC, you will need to load perform module.

This module is shipped with ZNC by default. If you have the right "LoadMod" you can activate it with /znc LoadMod perform

This module is used to perform one or more user-specified commands when connecting ZNC to the IRC network. It can be loaded as a user module or a network module.

  • If the module is loaded as a user module, it will perform the command(s) on all network(s) the user has.
  • If the module is loaded as a network module, it will perform the command(s) only on that specific network.

Commands

Add <command>
Adds perform command to be sent to the server on connect
Del <number>
Delete a perform command
Execute
Send the perform commands to the server now
Help <?search>
Generate this help output, optionally search for word/prase in this output.
List
List the perform commands
Swap <number> <number>
Swap two perform commands (to change the order in which commands are sent)

Examples

The perform list is automatically saved on changes.

Identifying to services

Identifying to Undernet:

/msg *perform add PRIVMSG X@Channels.undernet.org :LOGIN <username> <password>

Identifying to QuakeNet (alternatively, use the q module rather than perform on QuakeNet):

/msg *perform add PRIVMSG Q@CServe.quakenet.org :AUTH <username> <password>
NickServ

This module is shipped with ZNC by default. If you have the right "LoadMod" you can activate it with /znc LoadMod sasl

Basic configuration of the *sasl module. First, be sure the SASL module is loaded:

/query *status
loadmod sasl
<*status> Loaded module [sasl] [/home/znc/.local/lib/znc/sasl.so]

Configure the module:

/query *sasl
mechanism external plain
<*sasl> Current mechanisms set: EXTERNAL PLAIN
set MyNickservName pa$$w0rd
<*sasl> Username has been set to [MyNickservName]
<*sasl> Password has been set to [pa$$w0rd]

SASL won't be used until you reconnect to the server:

/query *status
jump
<*status> Jumping to the next server in the list...
Please note
  • The password is saved unencrypted, so don't make your ZNC data directory readable to other users! If you are using a ZNC bouncer provided by someone else, be sure you trust them with your password.
  • If you don't use SSL, the password is transmitted to the IRC server in plain text. There's no problem with sending an unencrypted password inside an SSL secured connection, so if you're using SSL you probably don't need to bother worrying about anything other than the PLAIN mechanism.
Nowadays, most networks support either SASL PLAIN or EXTERNAL. DH-BLOWFISH and DH-AES support were removed due to people believing them to be more secure than SASL PLAIN + SSL, which is not the case. If you use SASL PLAIN with an SSL connection, you'll be fine.

This module is shipped with ZNC by default. If you have the right "LoadMod" you can activate it with /znc LoadMod nickserv

SetCommand allows you to change the pattern used to generate the string passed to the NickServ service on the irc host. This is useful when the irc host you're connecting to doesn't conform to the standard NickServ name or format.

/msg *nickserv SetCommand <command name> <new command pattern>

Example to change the IDENTIFY command to conform to the dal.net standard.

/msg *nickserv SetCommand IDENTIFY PRIVMSG nickserv :IDENTIFY {password}

Identifying to NickServ (see /msg nickserv help identify for the syntax and try /quote nickserv help to see that the NICKSERV command works):

/msg *perform add NICKSERV identify <username> <password>

Identifying to NickServ if NICKSERV is not supported:

/msg *perform add PRIVMSG NickServ :identify username password

The difference between /nickserv and PRIVMSG (/msg) is that /nickserv is usually IRCd-side alias that checks that NickServ is a real service—to just a user who has changed their nick to "NickServ." If this is ever the case, /msg would have sent your password to the impostor. The : is important, otherwise everything after identify gets dropped.

Bitlbee
/msg *perform add PRIVMSG &bitlbee :identify <password>

You could also replace &bitlbee with root, but that would make root send all connect/disconnect etc. messages in PM causing potentially annoying alerts in your client.

Setting modes on connect

The following modes are fairly common, but check with your IRC network to see if these modes will function as described here, or if they exist at all on that network.
Performless mode setting is tracked in issue 1221 at GitHub.

Setting umode +Xx on connect (X or x enables cloaking on some IRCds):

/msg *perform add mode %nick% +Xx

Setting umode +w on connect for receiving wallops:

/msg *perform add mode %nick% +w

Setting all three modes on connect:

/msg *perform add mode %nick% +Xxw

Opering up

Logging in as IRC operator on connect:

/msg *perform add OPER USER PASSWORD

Idlerpg

For general idea of what idlerpg is, see their homepage. This example is here, because sometimes people request a module for it.

/msg *perform add JOIN #idlerpg
/msg *perform add PRIVMSG IDLEBOT :login username password

First you tell perform to join the channel and then you login to IDLEBOT. You should be on the channel when IDLEBOT receives the command and if you didn't add the join command you will most likely receive error about not being on the channel. Do replace #idlerpg and IDLEBOT with the actual channel and nick of the bot.

Listing, removing, or re-ordering commands

Listing commands to be executed on connecting
/msg *perform list
<*perform> ------
<*perform> Id: 1
<*perform> Perform: PRIVMSG NickServ :GHOST myname mysecretpassword
<*perform> ------
<*perform> Id: 2
<*perform> Perform: mode %nick% +wix
<*perform> Expanded: mode myname +wix
<*perform> ------
<*perform> Id: 3
<*perform> Perform: PRIVMSG IdleBot :LOGIN myuser mysecretpassword
<*perform> ------
<*perform> Id: 4
<*perform> Perform: JOIN #idleRPG
<*perform> ------
Swap position of commands 3 and 4.
/msg *perform swap 3 4
<*perform> Commands Swapped.
Add a new command.
/msg *perform add NOTICE %nick% :You’ve logged on.
<*perform> Added!
Delete command in position 5.
/msg *perform del 5
<*perform> Command Erased.
  • znc oper, ircop on connect, znc help
  • 0 Users Found This Useful
Was this answer helpful?

Related Articles

How To Install psyBNC

psyBNC is small, lightweight software for usage in IRC (Internet Relay Chat). Bouncers have...

psyBNC FAQ

| psyBNC-FAQ (Frequently Asked Questions) for psyBNC | This FAQ does not...

Frequently Asked Questions

Frequently Asked Questions - up to version 2.3.2 Q: I tried to add a User for getting Op from...

How to recover psyBNC password

To reset password of your psybnc follow the steps mentioned below: Login to the shell account...

How to install sBNC

shroudBNC  or sBNC is a modular IRC proxy written in C++. It is capable of proxying IRC...

Powered by WHMCompleteSolution