This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
irc:openbsd:oidentd [2019/11/08 19:36] jrmu |
irc:openbsd:oidentd [2019/11/08 23:18] jrmu |
||
---|---|---|---|
Line 3: | Line 3: | ||
<code> | <code> | ||
$ doas pkg_add oidentd | $ doas pkg_add oidentd | ||
- | </code> | ||
- | |||
- | Put this inside /etc/rc.local: | ||
- | |||
- | <code> | ||
- | if [ -x /usr/local/sbin/oidentd ]; then | ||
- | echo -n ' oidentd'; /usr/local/sbin/oidentd -u _identd -g _identd | ||
- | fi | ||
- | </code> | ||
- | |||
- | This will run each time upon bootup. The first time, though, you will want to start it manually: | ||
- | |||
- | <code> | ||
- | $ doas sh /etc/rc.local | ||
</code> | </code> | ||
Line 62: | Line 48: | ||
URIPrefix = / | URIPrefix = / | ||
</Listener> | </Listener> | ||
+ | </code> | ||
+ | |||
+ | Put this inside /etc/oidentd.conf: | ||
+ | |||
+ | <code> | ||
+ | user "znc" { | ||
+ | default { | ||
+ | allow spoof | ||
+ | allow spoof_all | ||
+ | } | ||
+ | } | ||
+ | </code> | ||
+ | |||
+ | If this file doesn't already exist: | ||
+ | |||
+ | <code> | ||
+ | # touch /home/znc/home/znc/.oidentd.conf | ||
+ | # ln -s /home/znc/home/znc/.oidentd.conf /home/znc/.oidentd.conf | ||
+ | # chown znc:znc /home/znc/home/znc/.oidentd.conf /home/znc/.oidentd.conf | ||
+ | </code> | ||
+ | |||
+ | Add this to /etc/pf.conf: | ||
+ | |||
+ | <code> | ||
+ | pass in proto tcp to port {auth} #ident | ||
+ | </code> | ||
+ | |||
+ | <code> | ||
+ | $ doas pfctl -f /etc/pf.conf | ||
+ | </code> | ||
+ | |||
+ | You want to connect to znc and set the ident to match the account's username (to prevent users from being able to change their ident response). This allows channel ops to ban individual users without banning the entire znc's IP address: | ||
+ | |||
+ | <code> | ||
+ | /msg *identfile setformat global { reply "%user%" } | ||
+ | </code> | ||
+ | |||
+ | Put this inside /etc/rc.local: | ||
+ | |||
+ | <code> | ||
+ | if [ -x /usr/local/sbin/oidentd ]; then | ||
+ | echo -n ' oidentd'; /usr/local/sbin/oidentd -u _identd -g _identd | ||
+ | fi | ||
+ | </code> | ||
+ | |||
+ | This will run each time upon bootup. The first time, though, you will want to start it manually: | ||
+ | |||
+ | <code> | ||
+ | $ doas sh /etc/rc.local | ||
+ | </code> | ||
+ | |||
+ | You will probably also want to restart znc. You can do this as follows: | ||
+ | |||
+ | <code> | ||
+ | $ doas pkill -INT znc | ||
+ | $ doas su | ||
+ | # export HOME=/home/znc && chroot -u znc -g znc /home/znc znc > /var/log/znc.log 2>&1 & | ||
</code> | </code> |