mkj / dropbear

Dropbear SSH

Home Page:https://matt.ucc.asn.au/dropbear/dropbear.html

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

How do you change the port number for SSH server? Where is the dropbear configuration file located?

trymeouteh opened this issue · comments

On Ubuntu I can easily change the port number for dropbear by editing the /etc/default/dropbear file. I cannot find this file to edit the port number with the Arch linux package for dropbear.

You can't and you should report it to the ArchLinux package.

Here is the package info:
https://archlinux.org/packages/extra/x86_64/dropbear/

You can see a links to Source Files and Bug Reports.
In the sources you can find a the SystemD unit service file:

ExecStart=/usr/bin/dropbear -F -P /run/dropbear.pid -R

Here the dropbear is started with flags:

  • -F Don't fork into background
  • -P Create PID file (default /var/run/dropbear.pid)
  • -R Create hostkeys as required

The PID file will be created by the SystemD so the option is not needed.

In the Ubuntu the start script is more advanced:

Environment=DROPBEAR_PORT=22 DROPBEAR_RECEIVE_WINDOW=65536
EnvironmentFile=-/etc/default/dropbear
ExecStart=/usr/sbin/dropbear -EF -p "$DROPBEAR_PORT" -W "$DROPBEAR_RECEIVE_WINDOW" $DROPBEAR_EXTRA_ARGS

So here it specifies two environment variables with a default value.
The the EnvironmentFile will load the config that may override the envs.
Then the envs are passed as arguments to the dropbear.

Additionally -E flag to log to stderr only. Generally this is simpler but has a disadvantage because the log level will be missing. So the arg probably would be better to remove.

The -R option is not used because instead the Debian dropbear packae has a post-install script that will generate the host keys if they are missing or convert from existing OpenSSH host keys.

So you need to ask the ArchLinux package maintainer to grab changes from the Debian package and make it working same to avoid interoperability problems.
Please create an issue here:
https://gitlab.archlinux.org/archlinux/packaging/packages/dropbear/-/issues

I don't have an ArchLinux account.

@mkj can we add the SystemD service file into the repository? Ideally even add the debian folder. This will make it easier to you to control what is written there, because users report a bug to you. The maintainers may not follow updates of the project and not update their scripts.
Still, maintainers have a freedom to make their own changes but at least the base behavior will be same for all distros.

@mkj can we add the SystemD service file into the repository? Ideally even add the debian folder

There is a debian folder already, but it's about 15 years out of date. A systemd service file would be OK, but it might have similar problems with noone caring to update it.