Installera Sklaffkom

24 Feb 2022

Så du är sugen på att starta en egen BBS, eller kanske bara testa och se om du tycker det här verkar roligt? Oavsett vad så är det dags att köra igång!
Först och främst behöver du ett operativsystem att köra SklaffKOM på.

Sklaffkom är en gammal programvara och den källkod som funnits sedan gammalt (version 1.32) går inte att kompilera på något modernt operativsystem. Olika patchar och uppgraderingar har gjorts av Sklaffkom så det numera går att kompilera källkoden under FreeBSD 12,1, OpenBSD 6 eller CentOS 7. Versionen av källkoden för FreeBSD 12 och OpenBSD 6 finns att ladda ner här.

Om du finner denna guide knepig eller helt obegriplig så kan det bero på att det inte är helt enkelt att sätta upp en sådan här programvara. Men ge det ett försök!

Ladda ned saker

Samtliga versioner av SklaffKOM som sparats finns att ladda ner från ftp.melin.org i katalogen /bbs/unix/sklaffkom/. ftp.melin.org är, ironiskt nog, tyvärr inte tillgänglig via FTP.

Börja med att installera en maskin du vill köra Sklaffkom på. När din server är uppsatt laddar du ned SklaffKOM till den och packar upp den i lämplig katalog (exempelvis /root). Skapa därefter användaren sklaff och sätt ett klurigt lösenord på detta konto. Glöm inte bort lösenordet bara. Placera källkoden i hemkatalogen för sklaff.

Packa upp och konfigurera SklaffKOM

En katalog kallad sklaff-1.32 skapas när du packat upp arkivet. I katalogen finns en en fil kallad INSTALLATION och även om den inte är så vansinnigt uppdaterad för dagens mått mätt så är den värd att läsa igenom och följa.

Som användaren sklaff gör du följande:

Modifiera filen sklaff.h och leta efter följande saker att ändra:


# define MACHINE_NAME “skom.se”  


# define SKLAFF_ACCT “sklaff”  


# define SKLAFF_ID “SKOM II”  


# define SKLAFF_LOC “Stockholm, Sweden”  


# define SKLAFF_NUM “+46-8-7021174”  


# define SKLAFF_SYSOP “Carl Sundbom”  

Alla värden och texter inom citationstecken måste ändras så de matchar din BBS. Har du inget telefonnummer kan du antingen låta det som står där stå kvar eller fylla i ett antal nollor eller annat. Kontot för SklaffKOM är som standard sklaff och det är rekommenderat att du låter det fortsätta vara det om du inte har en väldigt specifik anledning till att göra på annat sätt.

När du ändrat alla filer som ska ändras skriver du make och sen väntar du ett slag. Du kommer att få en och annan kompileringsvarning men för det mesta brukar det gå bra.
Om kompileringen gått bra är det dags att bli root på maskinen.

Därefter är det dags att som root skriva make install. Nu kommer installationsprocessen att bråka och det beror på att SklaffKOM i denna version antar att den ska uppgradera en äldre version av samma programvara och därför tror den att det finns vissa filer sedan tidigare. Men det gör det ju givetvis inte, så därför måste vi lura installationsscriptet lite.

Gå in i katalogen /usr/local/sklaff/etc och skriv ls. Du ska då se två filer, mailtoss och newstoss Dessa två filer är för att man ska kunna läsa och skriva e-post och nyhetsgrupper inne i SklaffKOM. Huruvida det faktiskt fungerar idag låter vi vara osagt.

Kopiera mailtoss till mtoss och newstoss till ntoss och sedan återvänder du till installationskatalogen och kör make install igen.

Om allt nu gått bra skriver du make installdb. Nu installeras databasen för SklaffKOM.

Nu är SklaffKOM installerat! Glöm inte att du inte kan köra SklaffKOM som root utan skapa istället en egen användare för ändamålet. Glöm inte att ange förnamn och efternamn när du skapar din användare, annars ser det ganska fult ut i SklaffKOM. Var också noga med att skapa en fil kallad .plan i respektive Sklaffkom-användares hemkatalog. Sätt generösa rättigheter på den (777), annars kommer Sklaffkom att krascha så snart användaren försöker ändra sina egna inställningar/flaggor.

Logga in användare automatiskt

För att dina användare ska loggas in direkt i SklaffKOM och inte få tillgång till operativsystemet först måste de använda SklaffKOM som ett shell.
Öppna /etc/shellsmed valfri editor som root och lägg till följande rader i filen:

/usr/local/bin/sklaffkom  
/usr/local/bin/sklaffacct

När du skapar användare kommer du nu kunna välja sklaffkom som shell. Gör det så loggas de in direkt. Om du vill att folk ska kunna ansöka om konto sätter du upp ett nytt konto för ändamålet. Förslagsvis ska kontot inte ha något lösenord och ha sklaffacct som shell.

Kontoansökningarna loggas sedan i en textfil vid namn acctlog som ligger i /usr/local/sklaff/etc. Läs även vidare i denna instruktion för att göra detta säkrare.

Gör Sklaffkom säkert

När Sklaffkom utvecklades så användes inte SSH i särskilt stor utan det var Telnet som gällde. Numera är riskerna större när det gäller att exponera en Unix-baserad dator mot Internet och därför är SSH att föredra framför Telnet. Med detta sagt så finns det saker du behöver modifiera i datorn som kör Sklaffkom när det gäller SSH.

För användaren konto, som du använder för att registrera kontoansökningar, bör du lägga till följande i /etc/ssh/sshd_config:

Match user konto  
Banner /etc/vadduvillvisa  
PasswordAuthentication yes  
ForceCommand /usr/local/bin/sklaffacct  
AllowAgentForwarding no  
AllowTcpForwarding no  
X11Forwarding no

Parametern Banner är en helt vanlig textfil du kan placera under exempelvis /etc och döpa till något utan svenska tecken eller andra specialtecken, exempelvis /etc/kontoansokan.

För övriga SSH-inloggningar bör du också använda följande parametrar i /etc/ssh/sshd_config:

AllowAgentForwarding no  
AllowTcpForwarding no  
X11Forwarding no

Starta sedan om SSH-servern på din Sklaffkomdator.

Om någon eller några av dessa parametrar inte är satta finns en väldigt stor risk att någon kan bryta sig ur Sklaffkom eller kontoansökningsprogrammet, sklaffacct, och landa rakt ner i operativsystemet på din Sklaffkom-dator, och det är inte en särskilt trevlig tanke.