Create an account


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[SOLVED] Not attempting to generate keys | FreeBSD server

#1
I have installed the Xonotic server via the ports system on FreeBSD. For the most part, the server works fine, and all 32 slots were filled last night and I had no real issues.

However, I have noticed that I don't have a public or private key for the server. I believe this is used for the AES network traffic encryption, and maybe possibly also for stats submission?

Below is an extract from the server startup process on FreeBSD:

Code:
execing autoexec/empty.cfg
execing autoexec.cfg
Server using port 26000
Server listening on address 0.0.0.0:26000

And here is an extract from the same part of the startup process on debian:
Code:
execing autoexec/empty.cfg
execing autoexec.cfg
Loaded public key key_0.d0pk (fingerprint: Xon//KssdlzGkFKdnnN4sgg8H+koTbBn5JTi37BAW1Q=)
Generated private ID key_0.d0pk (public key fingerprint: FOLKWGz4AezBLgGwkjLP0kya20DAq3NUkIqMCuG2+o8=)
Saved unsigned key to key_0.d0si
Signature generation in progress...
Server using port 26000
Server listening on address 0.0.0.0:26000

I noticed that the FreeBSD port doesn't install the public key (key_0.d0pk), so I tried renaming it on the debian install to see if that caused the same output. It did however show one key difference:

Code:
execing autoexec.cfg
there is no public key 0
Server using port 26000
Server listening on address 0.0.0.0:26000

Debian actually gives an error when it can't find a public key, so this leads me to believe that FreeBSD does not actually even attempt to generate keys, as it's not even looking for a public key.

Does anybody know what the issue is here, and what I might do to fix it?


I have just realised another difference between my FreeBSD Xonotic and my Debian xonotic.

On Debian, if I type "crypto_keygen" into the server console, I get the following output:

Code:
usage:
crypto_keygen id url

If I type the same on FreeBSD, I get:

Code:
Unknown command "crypto_keygen"

It's also worth noting that the port does install libd0* into the lib dir.
Reply

#2
The Xonotic command responsible for key generation is run from quake.rc and is the following:
Code:
crypto_keygen 0 http://ca.xonotic.org/?ca=0&key=

That command is pretty verbose, so I'm surprised to see no output from it in your first log extract.

Try to get back to the initial situation (move the public key from your Debian install out of the way). Can you see further down the log if there's anything? If not, can you try running the command I gave above manually?

EDIT: Ah, I did not see your edit. I'll have a look and double-post in this thread so that you may get a notification.
[Image:http://i.imgur.com/4XODR.png]640K ought to be enough for anybody.
     ― Linux Torvalds
Reply

#3
So, yeah. d0_blind_id is required for this to work obviously. It's statically linked in git builds and dynamically in releases. I suppose your Debian package is a release build, I don't know if d0_blind_id is included in the same package or separately.

Do you have libd0_blind_id.so ?

EDIT: Uh, wait. Why did it load the library successfully when you moved the public key into your install? I don't get it.
EDIT: Okay, I get it. The "no public key" came from Debian when you removed the pubkey.
[Image:http://i.imgur.com/4XODR.png]640K ought to be enough for anybody.
     ― Linux Torvalds
Reply

#4
Okay, with the help of Mr. Bougo in IRC I have successfully solved the issue. It turns out that the port was not install the crypto library. I will contact the port maintainer to see if it's possible to integrate this into the Xonotic port (not sure if that will be possible due to legal reasons) or whether we could have a standalone port for the library.

Instructions to install crypto library on FreeBSD:
Code:
- install "automake-wrapper-20131203" if you haven't got it already
- cd /usr/ports/games/xonotic && make install   #IMPORTANT, do not add "clean"
- cd work/Xonotic/source/d0_blind_id
- fetch https://raw.githubusercontent.com/divVerent/d0_blind_id/master/d0_rijndael.c
- chmod +x autogen.sh
- ./autogen.sh
- ./configure --with-openssl
- make
- make install
- cp /usr/ports/games/xonotic/work/Xonotic/key_0.d0pk /usr/local/share/xonotic/

A link to the full conversation can be found here: http://slexy.org/view/s21jsfxqm4
Reply



Possibly Related Threads...
Thread Author Replies Views Last Post
  [SOLVED] Opensuse Leap 15.1 and Server.cfg ldegroot 3 408 08-01-2019, 02:52 PM
Last Post: ldegroot
  LAN server console commands dbl 1 991 06-13-2019, 04:55 AM
Last Post: martin-t
  How to change server cfg on modified server veecho 4 998 04-24-2019, 08:15 PM
Last Post: BuddyFriendGuy
  Server error "Weapon stats writing failed: -404" FlufyBuny 1 493 04-13-2019, 04:36 AM
Last Post: It'sMe
  Dedicated server setup Rec0d 5 1,060 04-03-2019, 02:00 PM
Last Post: Rec0d
  South American Dedicated Server Professor 3 909 03-03-2019, 07:02 PM
Last Post: end user
Information [TUTORIAL] Xonotic Server behind OPNSense (and pfSense) gurbe 0 653 01-27-2019, 09:07 AM
Last Post: gurbe
  Xonotic server running behind UDP proxy not working doombringeroperator 2 858 01-07-2019, 02:23 PM
Last Post: doombringeroperator
  [NEED HELP] Server show on the browser list, but I can't connect! Professor 1 943 12-19-2018, 11:39 AM
Last Post: Professor
  Server Setup for Dummies litvinenkotea 7 4,869 12-08-2018, 01:20 PM
Last Post: tehjester78

Forum Jump:


Users browsing this thread:
1 Guest(s)

Forum software by © MyBB original theme © iAndrew 2016, remixed by -z-