Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API

From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "guts on fire"
-
Let's talk a bit about CA-based SSH and TOFU, because this is really why I hate the guts out of how SSH works by default (TOFU) and why I'm amazed that so few people even know about certificate-based SSH.
So for a while now I've been ogling CA-based SSH to solve the issues with key distribution and replacement. Because SSH does 2-way verification, this is relevant to both the host key (which changes on e.g. reinstallation) and user keys (ever replaced one? Yeah that's the problem).
So in my own network I've signed all my devices' host keys a few days ago (user keys will come later). And it works great! Except... Because I wanted to "do it right straight away" I signed only the ED25519 keys on each host, because IMO that's what all the keys should be using. My user keys use it, and among others the host keys use it too. But not by default, which brings me back to this error message.
If you look closely you'd find that the host key did not actually change. That host hasn't been replaced. What has been replaced however is the key this client got initially (i.e. TOFU at work) and the key it's being presented now. The key it's comparing against is ECDSA, which is one of the host key types you'd find in /etc/ssh. But RSA is the default for user keys so God knows why that one is being served... Anyway, the SSH servers apparently prefer signed keys, so what is being served now is an ED25519 key. And TOFU breaks and generates this atrocity of a warning.
This is peak TOFU at its worst really, and with the CA now replacing it I can't help but think that this is TOFU's last scream into the void, a climax of how terrible it is. Use CA's everyone, it's so much better than this default dumpster fire doing its thing.
PS: yes I know how to solve it. Remove .ssh/known_hosts and put the CA as a known host there instead. This is just to illustrate a point.
Also if you're interested in learning about CA-based SSH, check out https://ibug.io/blog/2019/... and https://dmuth.org/ssh-at-scale-cas-... - these really helped me out when I started deploying the CA-based authentication model.19 -
This is the third part of my ongoing series "The Ballad of the Six Witchers and the Undocumented Java Tool".
In this part, we have the massive Battle of Sparks and Storms.
The first part is here: https://devrant.com/rants/5009817/...
The second part is here: https://devrant.com/rants/5054467/...
Over the last couple sprints and then some, The Witcher Who Writes and the Butchers of Jarfile had studied the decompiled guts of the Undocumented Java Beast and finally derived (most of) the process by which the data was transformed. They even built a model to replicate the results in small scale.
But when such process was presented to the Priests of Accounting at the Temple of Cash-Flow, chaos ensued.
This cannot be! - cried the priests - You must be wrong!
Wrong, the Witchers were not. In every single test case the Priests of Accounting threw at the Witchers, their model predicted perfectly what would be registered by the Undocumented Java Tool at the very end.
It was not the Witchers. The process was corrupted at its essence.
The Witchers reconvened at their fortress of Sprint. In the dark room of Standup, the leader of their order, wise beyond his years (and there were plenty of those), in a deep and solemn voice, there declared:
"Guys, we must not fuck this up." (actual quote)
For the leader of the witchers had just returned from a war council at the capitol of the province. There, heading a table boarding the Archpriest of Accounting, the Augur of Economics, the Marketing Spymaster and Admiral of the Fleet, was the Ciefoh Seat himself.
They had heard rumors about the Order of the Witchers' battles and operations. They wanted to know more.
It was quiet that night in the flat and cloudy plains of Cluster of Sparks and Storms. The Ciefoh Seat had ordered the thunder to stay silent, so that the forces of whole cluster would be available for the Witchers.
The cluster had solid ground for Hive and Parquet turf, and extended from the Connection River to farther than the horizon.
The Witcher Who Writes, seated high atop his war-elephant, looked at the massive battle formations behind.
The frontline were all war-elephants of Hadoop, their mahouts the Witchers themselves.
For the right flank, the Red Port of Redis had sent their best connectors - currency conversions would happen by the hundreds, instantly and always updated.
The left flank had the first and second army of Coroutine Jugglers, trained by the Witchers. Their swift catapults would be able to move data to and from the JIRA cities. No data point will be left behind.
At the center were thousands of Sparks mounting their RDD warhorses. Organized in formations designed by the Witchers and the Priestesses of Accounting, those armoured and strong units were native to this cloudy landscape. This was their home, and they were ready to defend it.
For the enemy could be seen in the horizon.
There were terabytes of data crossing the Stony Event Bridge. Hundreds of millions of datapoints, eager to flood the memory of every system and devour the processing time of every node on sight.
For the Ciefoh Seat, in his fury about the wrong calculations of the processes of the past, had ruled that the Witchers would not simply reshape the data from now on.
The Witchers were to process the entire historical ledger of transactions. And be done before the end of the month.
The metrics rumbled under the weight of terabytes of data crossing the Event Bridge. With fire in their eyes, the war-elephants in the frontline advanced.
Hundreds of data points would be impaled by their tusks and trampled by their feet, pressed into the parquet and hive grounds. But hundreds more would take their place. There were too many data points for the Hadoop war-elephants alone.
But the dawn will come.
When the night seemed darker, the Witchers heard a thunder, and the skies turned red. The Sparks were on the move.
Riding into the parquet and hive turf, impaling scores of data points with their long SIMD lances and chopping data off with their Scala swords, the Sparks burned through the enemy like fire.
The second line of the sparks would pick data off to be sent by the Coroutine Jugglers to JIRA. That would provoke even more data to cross the Event Bridge, but the third line of Sparks were ready for it - those data would be pierced by the rounds provided by the Red Port of Redis, and sent back to JIRA - for good.
They fought for six days and six nights, taking turns so that the battles would not stop. And then, silence. The day was won, all the data crushed into hive and parquet.
Short-lived was the relief. The Witchers knew that the enemy in combat is but a shadow of the troubles that approach. Politics and greed and grudge are all next in line. Are the Witchers heroes or marauders? The aftermath is to come, and I will keep you posted.4 -
Hm.
Was very frustrated from work.
Started cooking.
Simple gnocchis with tomato / paprika sauce.
Might have been a little distracted...
I've grabbed a regular sized spoon instead of a tea spoon.
I've handmade ungarian puszta.
I've added a full spoon of it to the sauce.
It's very spicy and hot.
I'll guess my guts are in hell mode for the next days.
But it's delicious.
Remember kids: always eat up what you cooked.
Even if it seems to kill you by burning your insides out.13 -
I am so tired of fake ass people. Honestly, I think people should start firing more mfs in this industry, that way perfectly capable and hard working people wouldn’t have to be laid off all the time, and the harder and smarter workers can rise to the top and be way more valued. “No of course we don’t have the guts to do something sooo abhorrent as to fire anyone 🤵♂️“ - like shut the fuck up you rich ass bitch. I’d be willing to bet my life that your slimy executive ass has done a lot less ethical deeds on ur rise to stardom. There’s no point in rising to the occasion when it’s in vain. I’ll be damned if I put 100% into something that won’t allow me to grow…9
-
A couple fucking brutal, merciless dungeon moments.
So first, we were having a chill kind of session. Throwing lots of jokes and shit, and I rolled with it. The baddie for the day, I felt inspired, and named him Fawq El-Fuqer, which yes, is very unfortunate.
Anyway, we avoid his goons and reach his impenetrable fortress of chronic masturbation, and it goes as well as you think. The rogue says hey, we gotta get him with his pants down (pause) literally. The cleric is skeptical at first, but she comes around to it.
And so we do it. I spin this tale of a man who's got a schedule tighter than his fucking asshole. El-Fuqer meticulously plans his shits, he makes it a whole ritual, even gives it a special name: Mud O'Clock.
We wait for his alarm to ring, and spring into action while he's taking a fat stinking fucking dump. The warrior kicks down the bathroom door and corners El-Fuqer while he's on the shitter, demanding satisfaction for their past romantic involment that's been strongly been hinted at, you see, she said Fuck the Fucker and I, that's history. And that's enough for a subplot if you ask me.
So where was I? Ah, yes, the rogue bursts in through the window shouting out "Mud O'Clock MOTHER FUCKER!!" and we immortalize the moment in the finest silks. The wizard then does a little Bane impression for some reason and a multitude of loud 'plops' are heard as El-Fuqer evacuates the entire content of his putrid guts.
He gets roughed up a little, you know nothing like interrogating someone after they nearly shit themselves to death. We reveal some oooh so unexpected plot twist about a portal to goddamn hell and it's like well, crap, we gotta do something about that. So the wizard and the rogue leave to give the warrior and El-Fuqer some, ehem, space to settle their score.
What followed was the most unexpected, most brilliant part of the whole session. She didn't just execute him in a brutal, gruesome manner, no, she went full fucking throttle. Forced El-Fuqer to eat his own cock and balls while sewing his ass shut, then had a bowl of bull testicle salad to drop a montanious fecal cake of biblical proportions upon his face.
Believe it or not, we made it into an emotional moment. Because everyone was shocked by how brutal the affair was. Warrior had a mental breakdown like, uuuh, I'm becoming the monsters I swore to fight ooh no. She starting shaking and crap, ran away and hid in an alley to weep, it begins raining and it's getting very dramatic, so I cook up some spirit of sorrow that goes in and helps her face her fears and shit through the power of friendship or whatever.
Moving on to second moment, this is shorter but I like it best. The cleric and another two extras went to an old shrine to try and prove the wizard wrong about his denial of prophecy. Thing is, they did the ritual wrong. And I'm usually very forgiving but I was feeling nasty after the whole sowing of the asshole thing. So I'm like, uh, I gave you fools VERY PRECISE instructions on how to perform this ritual, and you just did some wacky prayers to the moon nonsense, that's idolatry in-universe and out-of-universe too (depending on who you ask).
So I said fuck it, you guys had it coming. I whip out immortal ten-thousand year old elder sorceress bitch guardian of the holy sphincter, and it gets real pretty fucking quick. She's got sanctified heavy plate armor, blue fire torches coming out they fucking pauldrons, argent greatsword of anal judgement plus infinity, all the juiciest shit.
Anyway, the sorc descends from the sky in a pillar of azure flames and is like yo, drop that idolatrous shit right now or I'm gonna kill you all. They mistake her for angel or some shit, and are like hey chill, we're the good guys. But the sorc doesn't give a shit, and she says shut the fuck up or I'll send you to the Night Eternal, bitch.
I dunno why but the cleric and the other two extras don't get it, so they insist with the whole heyyyy we are not idolaters, we're your friends, we are questing for the mandinga mandango mcguffango. So she bisects one, breaks the neck of another, and decapitates the fucking cleric. It was awesome.
So what did we learn? idk, don't plan your dumps and don't pray to the fucking moon if you're standing on hallowed ground. *****9