SSH multiplexing på språng
januari 18th, 2026
Många SSH-användare använder multiplexing för snabba upp arbetet. Metoden sparar tid men kan orsaka problem när datorn byter eller tappar nätverk. Här finns mina anteckningar med en metod för att undvika låsta sessioner.
Vid varje SSH-anslutning sker handskakning för kryptering och autentisering. Det tar tid och ett riktigt gissel om systemet du ansluter till kräver 2FA. Fördröjningen blir särskilt tydlig för den som ofta öppnar nya terminalfönster mot samma server eller har ett script som utför upprepade anslutningar t.ex för att utföra underhållskommandon.
Lösningen är multiplexing via ControlMaster. Funktionen gör att SSH skapar en socket på den lokala datorn och återanvänder den redan etablerade anslutning för efterföljande sessioner. Det ger en upplevelse av att inloggningen sker ögonblickligen.
Men det finns fallgropar som kan göra arbetet svårare i stället för lättare.
Det vanligaste problemet uppstår när datorn byter nätverk, till exempel när en bärbar dator flyttas från kontoret till hemmet eller när datorn går i viloläge. Om den ursprungliga anslutningen bryts utan att stängas korrekt finns socketen kvar på klientdatorn. Nästa gång användaren försöker ansluta tror SSH att kontakten fortfarande fungerar. Resultatet blir att terminalen hänger sig och användaren måste vänta på en timeout.
Ett annat problem rör filsystemet. Många operativsystem har en gräns för hur långa sökvägar till filer får vara. En vanlig konfiguration använder serverns namn i filnamnet för socket-filen. Om servernamnet är långt, vilket inte är helt ovanligt i moderna molnmiljöer, misslyckas anslutningen helt.
För att undvika problemen krävs anpassad konfiguration. Den bör innehålla en tidsgräns för hur länge en anslutning får leva och en metod för att hålla filnamnen korta.
Följande steg fungerar för en användare med Macos eller Linux.
1. Skapa en mapp för sockets SSH skapar inte mappen automatiskt. Detta måste göras före konfigurationen läggs in.
mkdir -p ~/.ssh/sockets
2. Uppdatera konfigurationen Redigera filen ~/.ssh/config. Använd Host * för att reglerna ska gälla alla servrar, eller specificera enskilda värdar.
Host *
ControlMaster auto
ControlPath ~/.ssh/sockets/%C
ControlPersist 10m
I exemplet ovan används %C. Det instruerar SSH att skapa en hash-kod av anslutningsuppgifterna i stället för att skriva ut hela servernamnet. Det garanterar att sökvägen aldrig blir för lång.
ControlPersist 10m anger att anslutningen ska hållas öppen i tio minuter efter att sista anslutnigen stängts.
Hantera låsta anslutningar
Även med en bra konfiguration kan en session hänga sig om nätverket är instabilt. Det enklaste sättet att lösa detta är att radera socket-filerna.
Lägg gärna in ett alias i din profilfil (exempelvis .bashrc eller .zshrc) för att snabbt kunna rensa upp.
alias fixssh="rm -f ~/.ssh/sockets/* && echo 'Anslutningar rensade'"
Genom att använda dessa inställningar blir arbetet i terminalen snabbare och stabilare. Ju fler servrar du hanterar, desto större nytta har du av en korrekt uppsatt miljö.
linux | Comments (0)
Props till gamlingarna
december 29th, 2023
The IDEs we had 30 years ago… and we lost
Den här texten gav samma känsla som bläddrandet i någon gammal programmeringshandbok.
Skönt att drömma sig tillbaka till en enklare tid där allt var nytt och svårt.
nerdfactor | Kommentarer inaktiverade för Props till gamlingarna
Självhostade FOSS-tjänster med configs för Docker Compose
april 18th, 2023
Kanske mest ett bokmärke för mig själv eftersom jag ständigt glömmer bort vad repot heter. I vilket fall: div configs för allt från mediehantering till bloggning och automatisering.
open source | Kommentarer inaktiverade för Självhostade FOSS-tjänster med configs för Docker Compose
Koda som det är 1992
februari 27th, 2021
Lawrence Kesteloot har vänligt nog
- Kodat en Turbo Pascal-kompliator i javascript
- Släppt koden fritt
- Slängt upp en körbör version på nätet så att jag slipper installera node


javascript, nerdfactor | Kommentarer inaktiverade för Koda som det är 1992
Rymdkriget
maj 16th, 2020

Något som smög förbi mig i Coronaröran:
US Space Force meddelade i mitten av mars att de har aktiverat ett nytt offensivt vapen, en markbaserad manick för störning och blockering av fientlig satellitkommunikation.
Tydligen utvecklad med fräsiga metoder:
“CCS B10.2 represents the end of the traditional way of development,” Purdy said. “Future upgrades and enhancements will make use of SMC’s Agile DevSecOps (Development, Security and Operations) approach adapting to the evolving battlefield while delivering capabilities to the warfighter faster and better than our opponents.”
Se Aerotechnews.
nerdfactor | Kommentarer inaktiverade för Rymdkriget
Du är det du bygger
december 28th, 2019

George Hilliard jobbar med embedded system och är uppenbarligen rätt duktig på det. Med en F1C100 som bas har han byggt ett komplett bootbart linuxsystem.
På sitt visitkort.
På det skrivbara flashminnet finns det tom någon meg över för att spara saker i hemkatalogen.
Total hårdvarukostnad: under 3 USD/kort.
Uncategorized | Kommentarer inaktiverade för Du är det du bygger
Missa inte RMS i Stockholm 8 November
oktober 2nd, 2011
FOSS-Stockholm har bjudit in Gnuprojektets grundare och chefsideolog Richard M Stallman för en föreläsning om hans hjärtefråga Fri Mjukvara. Platserna försvann på några timmar, men tack vare vänliga sponsorer har lokalen uppgraderats och det finns fortfarande ett hundratal (gratis)biljetter kvar.
Plats: Aula Magna/KTH, Frescativägen 6, Stockholm.
Tid: Tisdag 8 November, kl 18-20:30 (+efterföljande nördöl på lokal).
nerdfactor, open source | Kommentarer inaktiverade för Missa inte RMS i Stockholm 8 November
”I can’t belive it’s not WordPress!”
september 29th, 2011
Drupal-Sverige växer så att det knakar. Gamla kontorskompisen och i24-partnern Björn har till sist lyckas tämja Dries Best. Tillsammans med Karin (Drupalhackande fru) och Maja (möbelbloggande svägerska) har de lyckats iterera konceptet från Björns tunga hobbyprojekt I Have Synth till snabbfotade Möbler.se med Drupal 6 som grund.
Data från egentutvecklade moduler för soffor och andra möbler serveras blixsnabbt från Varnishcachen. Dynamiskt innehåll som en sökning efter Stolar tutar på fint eftersom åldringen Mysql är bortbytt mot Solr.
Läs mer om familjeprojektet Möbler.se: Maja för familjens möbeltraditionen vidare.
mjukvara, webbutveckling | Kommentarer inaktiverade för ”I can’t belive it’s not WordPress!”
För att det går
augusti 31st, 2009
short s[70];*l=s;t;main(){for(;;){read(0,s,140);if((s[4]&65280)==256&s[10]==8){s[10]=0;s[11]+=8;t=l[4];l[4]=l[3];l[3]=t;write(1,s,140);}}}
Priset för helgens skönaste geek går till Adam Dunkel som hackat ihop en tweet-sized (, max 140 chars), IP-stack för BSD. Begränsad funktionalitet, visst – men det går i alla fall att pinga. Varför? För skojs skull.
”So what’s the point of this? This was done only for the fun of it. Fitting a sensible program into 140 characters of source code is quite a challenge. It started with Razvan Musaloiu-E. posting a tweet-size program that would crash MacOSX. Inspired by this, I began writing a few small programs (Hello world, a Fibbonachi function, a factorial function, and a small linked list library) and finally ended up writing the twIP stack. Just for fun.”
Kolla in själv: twIP – a Tweet-size IP stack.
nerdfactor | Comments (2)
WordPress 2.8 sätter stopp för realtidswebben
juli 19th, 2009
Oh ironin.
För nästan exakt ett år sen skrev jag om push via PubSub och hur vi kan gå mot en snabbare webb genom att annonsera nytt material via smarta protokoll i stället för att passivt leta upp data genom att polla feeds.
När det väl börjar hända något i och med att Google välsignat PubSubHubBub och implementerat stöd för protokollet i FeedBurner så kommer WordPressutvecklarna och slår undan benen för realtidswebben.
Med en odokumenterad förändring i hur WordPress 2.8 hanterar utgående pingar försvann vips en stor del av snabbheten och nyttan.
I stället för att tidigare sända pingar direkt när ett nytt inlägg publicerats så batchkörs nu pingarna en gång per timme. Om du inte postat något nytt under den senaste timmen schemaläggs pinget först en timme efter att ett nytt inlägg postats.
I en engelsk bloggpost berättar jag mer och presenterar en lösning: WordPress putting the real time web to a halt?
