💾 Archived View for gemini.smallweb.space › gemlog › 20230120-efingerd.gmi captured on 2024-05-26 at 14:37:18. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2024-02-05)

-=-=-=-=-=-=-

Getting efingerd / finger working on Ubuntu with systemd

Note

I've revised this in my new post due to issues with running under systemd

Background

Not a lot of folks use the finger command or protocol these days; however, I've been delving into the #smallweb / smolweb (i.e., the Gemini Protocol) for the past year and noticed a few people have revived this ancient protocol for status updates. I figured I'd give it a shot, and I thought it would be simple, but the lack of guidance really hindered me for a bit.

If you're wondering, efingerd / fingerd (the original) simply enables people outside of your own linux machine to use the finger command, just remotely.

Installing

Finger / efingerd is not installed on Ubuntu 22.10 by default so you have to install it:

$ sudo apt-get install finger
$ sudo apt-get install efingerd

Other finger daemons

This post only goes over efingerd, but if you want to see what other finger daemons are available:

$ apt search fingerd

Enabling efingerd

This is the part I was stuck on – since the programs are so old, they simply state that you have to start them using inetd. Knowing that inetd has pretty much been replaced by systemd everywhere, I needed to figure out how to get this running on systemd. Not being a system admin, I was looking for the easy button, but DDG searching brought no solutions, so into the systemd intro blogs I went and made one of my own.

I used this site as a guide:

Systemd Services on linuxhandbook.com

And created the following service, which has to be in the “system” folder since efingerd needs to run as root (it's located in /sbin/)

/etc/systemd/system/efingerd.service

------------------------------

[Unit]
Description=efingerd service
After=network.target

[Service]
Type=simple
StandardOutput=syslog
StandardError=syslog
ExecStart=/sbin/efingerd
Restart=always

[Install]
WantedBy=multi-user.target

------------------------------

Enabling the Service

$ sudo systemctl efingerd start

Checking the service

$ sudo journalctl -f -u efingerd

Configuring efingerd

make all files in /etc/efingerd executeable

sudo chmod +x /etc/efingerd/

edit them - there are a few test commands in there... check out the manpage for what they do

Testing efingerd

try to finger your server:

finger @<your server>

This should respond with whatever /etc/efingerd/list does

create ~/.efingerd and test it

Create an ~/.efingerd file and make it executeable

I simply put in:

#! /bin/sh
echo "gritty"

and then:

finger gritty@smallweb.space

Note: if no .efingerd file exits, then /etc/efingerd/luser executes instead

-----

2023-01-20

Tags: finger, fingerd, efingerd 100daystooffload

Gritty

Replies

Gemini Mention this log

Submit a response URL

Send replies to:

gritty@smallweb.space

Gemlog Index

Capsule Home