I've been experiencing this problem with oidentd for a couple of days and I can't seem to be able to find a solution to this yet.
oidentd seems to give me headaches every time I want to get it work on different servers.
I have to mention I've installed oidentd using rpm package (oidentd-2.0.8-8.el6.i686 more exactly) because directly typing yum install oidentd
didn't work for some unknown reason.
I want to use it in order to make ZNC on the server reply to ident requests with each username's ident.
After finally installing it, I've done the configs and stuff (exactly the same configs I've done to the other server which seem to work fine):
$ nano /etc/oidentd.conf
to this:
default {
default {
allow spoof
deny spoof_all
deny spoof_privport
allow random_numeric
allow numeric
allow hide
}
}
user root {
default {
force reply "UNKNOWN"
}
}
Installed ZNC 1.0 using the source tarball.
I made a user called znc
and then run ZNC from it.
Then I went to my client and enabled the identfile
module. Set the spoof file for the per user configuration to ~/.oidentd.conf
and the format to global { reply "%ident%" }
.
Made sure the user has chmod access to ~/.oidentd.conf
file. All perfect, like how it was configured on the other server.
Everything went great, no errors, *identfile even told me what would the format be expanded to, I was happy and excited to see nothing was going wrong.
Until I reconnected to the server.
It gives an ident response (sign that oidentd is working?) but the problem is that it always replies with the username I'm running ZNC with (which would be znc
)
Here's a small output to make everything clear:
[msg: *identfile]: getfile
(*identfile) File is set to: ~/.oidentd.conf
[msg: *identfile]: getformat
(*identfile) Format is set to: global { reply "%ident%" }
(*identfile) Format would be expanded to: global { reply "Tarmac" }
Please wait while we process your connection.
*** Checking Ident
*** Got Ident response
Then I did a WHOIS on my nick:
WHOIS Tarmac
[whois: Tarmac] (registered nick)
name: bri
address: znc@random.geek
I tried restarting oidentd and ZNC n times, but no result. Still the same replies.
I don't really know what's wrong here, but looks like there's either a problem with ZNC or a problem with oidentd. The only suspicion I've got so far is that probably oidentd is not working as it should or *identfile module is not properly writing the format to the spoof file.
I'm so confused right now, so any suggestion on solving this would be highly appreciated.
Thank you!
Edit: another heads-up, it seems that they removed oidentd
from the packages? I don't know why though… if I install rpm does the linux kernel matter that much? I've been trying different rpm's but none seems to give any result…
Edit2: I've tried installing oidentd from the source. Install went OK, with no issues.
I tried disabling *identfile while I thought it was the issue, edited /home/znc/.oidentd.conf
to global reply { "testident" }
but it still replies with znc
unless I add this to the /etc/oidentd.conf
:
user "znc" {
default {
force reply "testident"
}
}
So basically I made an edit in /etc/oidentd.conf
to force reply with a specific ident for the user znc
…
It seems to work, but when I go to the per-user config and try the same thing, then it doesn't. I don't even… !
It seems that there's a problem with reading the per user configuration… but not sure what? I set the chmodes and stuff to the correct settings yet it doesn't work as it should.
Thanks again.
Best Answer
It looks like I had to delete
/home/znc/.oidentd.conf
and let it make a new one alone... I don't even know how this solved the problem because I tried the same thing earlier and I let it make the~/.oidentd.conf
by itself after installing ZNC, but... I'm glad it finally works now haha!