Hmmm, I’m pretty sure you just need to
systemctl disable sshd.socketand then configure it how you like. Don’t trust every “solution” you see online, they are often full of bullshit written by people trying to fit a square peg in a round hole. I bet that kernel parameter thing is something to disable it on the first boot, before you get the chance to configure the thing properly.Edit: @thorhop@sopuli.xyz wrote a comment about that option here, go to the thread if you are interested.
This! Disable sshd sock, maybe rebuild initramfs.
And, the “kernel command line” is also used by the initramfs for fucks sake …
Honestly, one of the worst parts of the Linux community is people trying to force 30 years old tools in systems built around systemd. If you want to use that old stuff then don’t install the modern replacement, find a different distro built around that ideal instead.
I remember a post on serverfault or askubuntu about disabling DHCP default gateway but keeping DHCP address assignment on a tap interface, and bring it up at boot, and the accepted answers was “configuring DHCP in networkd/NetworkManager systems is almost impossible, here’s how I did it” and it’s three pages of cobbling together ifconfig and netplan with startup scripts, that work by pure chance.
Wanna see the actual full networkd configuration for that?
# /etc/systemd/network/tap0.network [Match] Name=tap0 [Network] DHCP=ipv4 [DHCPv4] UseRoutes=falseThat’s it, all that the post asked for is handled by six lines. “How do I discover that?” you may ask, because if it’s three lines, but I have to dig for hours before finding it than it’s not that useful. Simple, I go on the systemd documentation for .network files and search for DHCP. And this is a niche use case, the basic usage is readily available on the arch wiki as with anything else. Note, this does nothing for IPv6, and the interface will have IPv6 route configured, but this wasn’t relevant to the post, and my home’s IPv6 layout is “peculiar” so I have omitted it here.
“configuring DHCP in networkd/NetworkManager systems is almost impossible, here’s how I did it”
six lines.
Outside of Systemd and all its other neu-code shyte, it’s a one-line change to either your network config or your dhclient.conf. It’s been around 35 years and well-tested, and didn’t need St Lennart’s cancer to somehow fix.
When it ain’t broke …
Think harder, I know you can. Maybe reread the comment. Maybe compare those lines with that one line change.
Maybe notice that I specifically said to install a system without systemd if you don’t like it, instead of fighting the tool you installed and then complaining.
Not þe person you’re replying to, but what you said was
three pages of cobbling together ifconfig and netplan with startup scripts, that work by pure chance.
GP countered þat it’s really only one line outside of systemd.
You moved þe goal post.
The comment said that people that install systemd based systems and then fight systemd tools are stupid. In that instance a guy is dead set on using netplan and shell scripts on a system with networkd, when using just networkd would have been extremely simple. Maybe in a system without systemd it would have been easier to use netplan, but the guy decided to install systemd and then fight it, and then suggested other people do the same.
If I understand it correctly this just proxies ssh connections through a more efficient type of socket when its a ssh connection between a VM and its Host machine. No SSH daemon is started by systemd by default making this once again misinformation by the anti-systemd crowd.
Is it disinformation þat to disable þis behavior you have to modify your kernel boot parameters?
Yes it’s misinformation that you have to disable the sshd with a kernel boot parameter, because no sshd is being run in the first place.
I uhhh, just loaded Mint the other week. Any chance someone can English this for me?
Op is a bit confused, but here’s a primer first:
SSH stands for Secure SHell and is a protocol to logon to a terminal shell via network.
You need to have an SSHd (or Secure SHell Daemon i.e a background service) running to accept and facilitate connections.
Systemd is a suite of services and tools that manage a Linux system, like a init system, service management, handing run levels, socket management, logging etc and gives the user tools like systemctl, journalctl, bootctl, basically anything ending with ctl is conventionally a systemd tool for users to manage their systems with.
Get it? Got it? Good.
systemd.autossh is an embedded ssh client in systemd that tries to help in reestablishing dropping connections. It does not actually start an SSHd (the actual service that facilitates connections) and is embedded for convenience to minimize frustrations with dropping connections.
You can read about it here.
No, it seems you are a bit confused.
You are talking about autossh, which is a completely different third-party SSH client tool that you have to install separately (as the link you shared describes) to have persistent SSH client connections and has nothing to do with systemd other than that you can start it as a systemd service (like any other third-party service).
OP is talking about systemd-ssh-generator, which is described here by Lennart Poettering (author of systemd) as working exactly as OP described it.
*defeatedly puts away torch and pitchfork
*kicks dirt
Shucks I never get to be mad about systemd!
Just be mad at systemd the same way everyone else is; invent your own reality and throw a fit about that instead!
Every day I wake up and think to myself “today is the day I will form a strong opinion about systemd” but it never happens.
It’s upsetting for systemd users too, not having angry haters to go “See!?!!” back at.
I can’t believe you’re dissing systemd indirectly by dissing the reaction of systemd users to the reaction of the users that hate systemd.
To any neutral observers out there: See!?!! This is the kind of crap we get from the haters.
/s of course, I have no skin in this game. Any time I mess with init systems, I have to look up usage, no matter the system involved, and I haven’t run into anything too onerous.
Any time I mess with init systems, I have to look up usage, no matter the system involved
Yeah. Just don’t interact with them often enough to remember and build muscle memory. Though, runit is very nice, very simple. E.g.
sv up thing
Op actually writes about systemd-ssh-generaror which does exactly what they describe it’s just not a whole story or it won’t be this inflammatory (or interesting at all).
systemd-ssh-generator — Generator for binding a socket-activated SSH server to local
AF_VSOCKandAF_UNIXsocketsTap for spoiler
Also why shouldn’t things use kernel cmd? Is it taboo? Only good guys are allowed to use it, not bad horrible systemd?
So systemd.autossh is running even if sshd.service is disabled?
Given that it helps with ssh client connections and sshd is, basically, a server—yes. And even then, I imagine it doesn’t actually do anything if there’s no ssh connection.
Heya thanks so much for that explanation, took a couple read throughs and some thinking but I think I get it!
The time ans thought you put into that are much appreciated and so emblematic of the awesome nature of the linux world.
Thanks again!
SSH (Secure SHell) is a protocol that allows remote shell access from other computers over network. It’s quite secure, but not everybody may want sshd (SSH daemon) running in the background automatically.
systemd, by far the most common init system (first program that the kernel runs, which starts and stops your other programs), however, does run it in the background automatically now.
The way to disable this is neither through a simple command, nor configured in a simple config file somewhere in
/etc/systemd/..., but instead in your boot options. Understandably, this feels dumb.It’s not really something to worry about for average users.
okay while typing this @thorhop@sopuli.xyz wrote a much better reply that also debunks the OP. Read that one
I appreciate both your responses, really awesome stuff!
Goddamn the linux community is good people.
it’s nothing, don’t worry kitten
yay
Ok
Linux has always had a hard line disposition about keeping Kernel-space and User-space separate. SSHD (and systemd) are User-space, but are being configured on the kernel’s boot line (in GRUB, which is also User-space).
I don’t like to use the term rage-bait, but this post is suggesting that User-space components should not be configured by the Kernel-space (which is not happening here, it’s just the kernel boot line parameters, you could, pass the parameter to start a different init system other than systemd).
I’m also a newb but from what I can tell it sounds like it’s telling users to mess with system settings in a way that will fuck up a lot of things up if you don’t know exactly what you’re doing.
telling users to mess with system settings in a way that will fuck up a lot of things up if you don’t know exactly what you’re doing.
In my head, this is the subtext of much linux info.
Cool, lies for luddites
I don’t get the hate for systemd, it works well for me
My main beef is that it keeps eating perfectly good system functions like logging. I liked my syslog files dang it. Yes I am aware I can change it back.
But yeah it works OK. I dislike its monolithic system privilege paradigm
I don’t run Linux, I run SystemD.
I’m still happier without systemd. Much less confusion and consternation.
But if systemd’s the init(++) system you want to use, enjoy. The other comments here are fun for systemd users (~ if you like that kind of thing and/or are masochistic).
Yay for init-freedom. A joy to watch everybody get what they want. Systemd users get this kind of stuff that they want. People who don’t want systemd don’t get this kind of stuff that they don’t want. Everybody’s happy. No silly init-wars. :)
Me too. But people have to downvote you for being happy. OpenRC is so easy to script. I also like how because Artix has more than one option for an init system the init scripts are always in a seperate package. That lets me decided if I want the package injecting things into init or if I just want the software.
OpenRC in gentoo, runit in artix or void, my faves.
I’ve yet to live with s6 and familiarise with it. Seemingly many very nice features.
Dinit too, is on the edge of my radar.
Woah, I thought it was satire about a hypothetical systemd version in 5 years. Then I saw the comments here.
Ok old man














