How can I change port and address default dropbear is listening on? I'd like to change it to 0.0.0.0:8122 because my network firewall blocks ports other than range 8100:8199
This is a planned feature. Our database keeps track of port to use already, but we don't allow the user to set it yet and haven't updated our scripts to support this yet.
Maybe I don't understand how it works but... Why you don't just use system units to start daemon? As in why you can't just put some /etc/init.d/userland-ssh and /etc/init.d/userland-vnc init scripts which could be fully editable by user. My blind guess is that you just execute dropbear with some parameters provided as array to some exec function, so why not execute bash with given file/-c and shell code instead? It's not only about ssh ports or user, more about entire command line - used ciphers, key authentication, ports, addresses, port forwarding, vnc password file, resolution, bit depth, compression, display number, xinitrc file content, so on so on, I just chose few random commonly used ones. In fact it'd be nice to have working autostart mechanism (other than hacking .bashrc to autolaunch stuff on first login)
Solving it on dedicated UI level with bilion of buttons sounds impractical at best. Maybe manual CLI parameters line edit or at very least ability to provide arbitrary parameters would do. Maybe ability to provide bash script as file or code, to be executed after proot startup.
Basically I'd rather lean towards configuration from within proot itself on shell level rather than having few hardcoded config options. Making /etc/init.d, /etc/rc.local and even in a sense systemd units based on bash is not drunk idea made up in one day but "standard" way of configuring system startup for a reason - it's just insanely flexible.
I have changed the port by editing the /support/startSSHServer.sh
For right now, the best way is modifying the startSSHServer file. But we will look into making this more flexible in the future.
Most helpful comment
Maybe I don't understand how it works but... Why you don't just use system units to start daemon? As in why you can't just put some
/etc/init.d/userland-sshand/etc/init.d/userland-vncinit scripts which could be fully editable by user. My blind guess is that you just executedropbearwith some parameters provided as array to someexecfunction, so why not executebashwith given file/-cand shell code instead? It's not only about ssh ports or user, more about entire command line - used ciphers, key authentication, ports, addresses, port forwarding, vnc password file, resolution, bit depth, compression, display number, xinitrc file content, so on so on, I just chose few random commonly used ones. In fact it'd be nice to have working autostart mechanism (other than hacking .bashrc to autolaunch stuff on first login)Solving it on dedicated UI level with bilion of buttons sounds impractical at best. Maybe manual CLI parameters line edit or at very least ability to provide arbitrary parameters would do. Maybe ability to provide bash script as file or code, to be executed after proot startup.
Basically I'd rather lean towards configuration from within proot itself on shell level rather than having few hardcoded config options. Making /etc/init.d, /etc/rc.local and even in a sense systemd units based on bash is not drunk idea made up in one day but "standard" way of configuring system startup for a reason - it's just insanely flexible.