identD – Yosemite : How-To
2720 octobre 2014 par Sébastien
A well formed English Version of this article is online here :
codethought.com/blog/?p=396
Thanks to David Orriss Jr
Ni mon panneau de préférence ni l’installateur ne semble vouloir fonctionner sur la dernière version du système Apple à savoir 10.10 aka Yosemite.
Voici comment récupérer un identd fonctionnel.
Si vous aviez déjà installé identd précédemment :
1 – Suppression de l’ancienne version / remove the old one
Terminal :
1 2 3 4 5 |
# Clean Up !!! sudo killall identd sudo rm -R /Library/StartupItems/IdentD sudo rm -R /Library/PreferencePanes/IdentD.prefPane sudo rm -R /usr/local/identd |
2 – Téléchargez le fichier identd.zip / download identd.zip
3 – Décompressez-le sur le bureau / extract it to your Desktop
Vous obtenez un dossier nommé identd
You get a folder named identd
4 – Installation des éléments / install stuff !
Terminal :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
# Prepare sudo mkdir -p /usr/local/identd sudo chown root:wheel /usr/local/identd # Install cd ~/Desktop/identd/ sudo cp ./identd /usr/local/identd/ sudo cp ./identd.conf /usr/local/identd/ sudo cp ./org.macmax.identd.plist /Library/LaunchDaemons/ sudo chown root:wheel /usr/local/identd/identd sudo chmod 755 /usr/local/identd/identd sudo chown root:wheel /usr/local/identd/identd.conf sudo chmod 644 /usr/local/identd/identd.conf sudo chown root:wheel /Library/LaunchDaemons/org.macmax.identd.plist sudo chmod 644 /Library/LaunchDaemons/org.macmax.identd.plist # Load & Start sudo launchctl load /Library/LaunchDaemons/org.macmax.identd.plist # identd start at load so no more line needed... |
5 – C’est fini ! / It’s done !
IdentD démarrera avec le système / IdentD will start at boot now !
5bis – Tester le fonctionnement / Testing fonctionnality :
1 2 3 4 5 |
# Try : ps aux | grep identd | grep root # should report a process belonging to root # root 13918 0,0 0,0 657260 4156 ?? Ss 5:13 0:00.06 /usr/local/identd/identd |
1 2 |
# Try : telnet localhost 113 |
Vous devez avoir / you should have :
1 2 3 4 |
Trying ::1... Connected to localhost. Escape character is '^]'. _ |
Saisissez alors puis Entrée / Type then Enter :
1 2 |
# Type then Enter : 1234,5678 |
Vous devriez avoir la réponse suivante / You should have the following answer :
1 2 3 |
1234,5678 : USERID : UNIX : JohnDoe Connection closed by foreign host. |
6 – Configuration
Terminal :
1 2 3 4 5 6 7 8 9 |
# Current User sudo sh -c "echo 0:CurrentUser > /usr/local/identd/identd.conf" sudo launchctl stop org.macmax.identd # User JohnDoe for example : sudo sh -c "echo 1:JohnDoe > /usr/local/identd/identd.conf" sudo launchctl stop org.macmax.identd # Note identd automatically restart with new config |
Et Voilà !
Fichier / File : identd.zip
Catégorie Développement, Pas à pas | Mots-clés: Application, Développement, identd, Kwartz, Mac, OSX, Serveur, Système
when i try step 6 – configuration « sudo echo 0:CurrentUser > /usr/local/identd/identd.conf »
i get this answer « -bash: /usr/local/identd/identd.conf: Permission denied »
is there something wrong?
Sorry !!!
sudo chmod 666 /usr/local/identd/identd.conf
before !
Code updated
hmm ok now i don’t get the error
and i changed JohnDo into my own username
but it doesn’t seem to be working either.
How can i check what is going wrong?
I’ve changed the code one more time to keep the 644 permission.
1- stop identd : sudo launchctl stop org.macmax.identd
2- if you want identd return the account name you’re logged on yosemite :
sudo sh -c « echo 0:CurrentUser > /usr/local/identd/identd.conf »
3- if you want identd returns another name then :
sudo sh -c « echo 1:AnotherName > /usr/local/identd/identd.conf »
4 – start identd : sudo launchctl start org.macmax.identd
Resuming : 0:xxxxxx -> current user logged on
1:xxxxxx -> username you want
when i try option 3 🙂
another name. i get this
-bash: /usr/local/identd/identd.conf”: Permission denied
It seems that’s because you have copy the line from the comment and then you have bad quotes !
Copy the line from the blockcode in the article.
ok no more error now.
But it doesn’t seem to be working.
there is not al lot of info i can give you
just that it doesn’t work. 🙂
is there some way to check some things?
ok, I will take my time to fix that !
Hope I will get an answer before the night !
I’ve reinstalled identd on my Mac following the above step and it works.
If it do not, clean the files and do it again 🙁
#clean :
sudo launchctl unload /Library/LaunchDaemons/org.macmax.identd.plist
sudo rm /Library/LaunchDaemons/org.macmax.identd.plist
sudo rm -R /usr/local/identd
Hope it helps
ok so
1 i did the #clean
2 restarted mac
3 redownload the folder
4 # Prepare
5 # install
6 # load & start
7 # try
no process report
try to launch identd by hand :
sudo su
/usr/local/identd/identd
Do you have an error ?
Maybe there is another process who listen to port 113 ?
If you just do « telnet localhost 113 » do you have an error ?
2014-10-20 21:06:57.242 identd[1624:84678] IdentD Cannot accept connections. Exiting.
sh-3.2#
sh-3.2# telnet localhost 113
Trying ::1…
Connected to localhost.
Escape character is ‘^]’.
Connection closed by foreign host.
sh-3.2#
OK !
You have this message because another process is listening to port 113.
That’s why you can telnet on 113 but can’t launch identd.
You can try :
sudo lsof -nP | grep LISTEN
or better :
sudo lsof -nP -iTCP:113 -sTCP:LISTEN
and find the line ending by TCP *:113 (LISTEN)
you’ll have the process name and pid at the start of it.
sudo lsof -nP -iTCP:113 -sTCP:LISTEN
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
launchd 1 root 45u IPv6 0xf071d8d6fe06390b 0t0 TCP *:113 (LISTEN)
launchd 1 root 46u IPv4 0xf071d8d6fe06b48b 0t0 TCP *:113 (LISTEN)
launchd 1 root 49u IPv6 0xf071d8d6fe06390b 0t0 TCP *:113 (LISTEN)
launchd 1 root 50u IPv4 0xf071d8d6fe06b48b 0t0 TCP *:113 (LISTEN)
Very strange because launchd (1) is the init/boot (first) process on your system !
Did you try to install or activate another auth service on your system ?
I don’t see how to help you more just because it seems it’s not identd who are causing troubles.
You will not be able to launch any identd until launchd stop listen on 113 because only one service can listen to a port at a time.
Ok so i did a fresh reinstall of yosemite. no big deal, i don’t have much stuff on it.
So i started with #prepare and the first line give back this response
« macname »:~ « user »$ sudo mkdir /usr/local/identd
mkdir: /usr/local: No such file or directory
Ok !
It’s just beacause /usr/local don’t exist
You can do :
sudo mkdir /usr/local
sudo mkdir /usr/local/identd
Or in one line :
mkdir -p /usr/local/identd
I will change the code in the article with that last line.
YEEES! it works!
Thanks a lot!
Merci bien.
🙂
COOOOOLLLLLL !
So I’ll be able to go to bed !!!
😉
Works perfect! Thanks a lot for this! 🙂
Trying to install on 10.10.4. I get the following error after connecting for test:
$ telnet localhost 113
Trying ::1…
Connected to localhost.
Escape character is ‘^]’.
: ERROR : UNKNOWN-ERROR
Connection closed by foreign host.
This error prove that identd server is running.
I think you get that error because you’ve sent nothing !
After « Escape character is ‘^]’, type 123,456 follow by ‘enter’ (keystroke) and you should obtain the response :
123,456 : USERID : UNIX : username
Séb
Yes, thank you. I missed that point in the instructions. All is working OK now.
[…] Link to original code and article at macmax.org (in French) […]
[…] use identd (provided here: identD – Yosemite : How-To | MacMax.Org identD – Yosemite : How-To | Mac, iBidules &…), deploy it with ARD and accept that it provides identification and not […]
Bonjour,
merci pour cette page, ça fonctionne parfaitement!
Dans le même genre d’outil,j’aimerais continuer à faire tourner le rwhod livré de base.
Mais désormais sans les StartupItems et le rc.local, j’essaye désespérement avec un fichier plist.
Serait-ce à cause du changement d’identité en daemon que launchd ne tolère pas?
Merci.