Using oidentd with ZNC

You can use oidentd to spoof Ident replies so that they match Idents configured within ZNC.

Append the following to your system-wide configuration file:

user "<username>" {
	default {
		allow spoof

		# Add the next line if ZNC needs to
		# reply with the name of a local user.
		allow spoof_all
	}
}

Replace <username> with the user name of the ZNC user (e.g., znc).

Change to the user running ZNC (e.g., using su znc -ls "$SHELL"), and use the following commands to create an empty user configuration file:

touch ~/.oidentd.conf
chmod 0644 ~/.oidentd.conf

Ensure that the ZNC home directory (typically ~znc) is world-executable (mode 0711) so that oidentd can read the user configuration file:

chmod 0711 ~

Ensure that ZNC's identfile module is loaded and configured correctly:

/MSG *status LoadMod identfile
/MSG *identfile SetFile ~/.oidentd.conf
/MSG *identfile SetFormat global { reply "%user%" }
/MSG *status SaveConfig

Note that %user% expands to the name of the ZNC user that initiated the connection. Another popular choice is %ident%, which allows users to specify any Ident.

Your changes will take effect after you reload oidentd and reconnect to IRC.