ENiGMA½ BBS on EL7

From Alteeve Wiki
Jump to navigation Jump to search

 AN!Wiki :: How To :: ENiGMA½ BBS on EL7

Warning: This is just a raw dump on notes. Built on internal VMs for now.

CentOS 7

Note: Apache shouldn't be needed, will likely remove it later and add a section for a web gateway if desired.
# Setup our internal repo (to be moved to external repo)
curl http://192.168.122.231/repo/el7/alteeve.repo > /etc/yum.repos.d/alteeve.repo

# Install stuff
yum -y groupinstall development 
yum -y install httpd gcc gcc-c++ mlocate vim telnet nodejs npm nodejs-async

# Enable and start apache
systemctl start httpd
systemctl enable httpd

# Open http
firewall-cmd --add-service http 
firewall-cmd --add-service https 
firewall-cmd --add-port=8888-8889/tcp
firewall-cmd --runtime-to-permanent

Install NVM:

# Check here for updates: https://github.com/creationix/nvm
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.30.1/install.sh | bash
reset
cd /var/www/html/enigma-bbs/
nvm install 4.2.2
npm install

Browse to http://enigma-bbs, verify default apache page is visible.

Download ENiGMA½:

mkdir /var/www/html
cd /var/www/html
npm -g install npm@latest

Setup SSH:

mkdir /var/www/html/misc
openssl genrsa -des3 -out ./misc/ssh_private_key.pem 8191

Initial config:

vim /var/www/config.hjson
general: {
  boardName: AN!BBS
}
servers: {
  ssh: {
    privateKeyPass: <passphrase used in keygen>
    enabled: true /* set to false to disable the SSH server */
  }
}
messages: {
  areas: [
    { name: "anvil_discusssion", desc: "Anvil! Discussion", groups: [ "users" ] }
  ]
}

Start it up;

nvm use 4.2.2
/var/www/html/enigma-bbs/main.js --config /var/www/config.hjson

It won't return to shell, that's fine. Test connection.

In another terminal, telnet to port 8888.

  • On the first screen, select Apply
  • Set the username to whatever you want. The first user will be a SysOp.


References

Debug

Log file:

  • /var/www/html/enigma-bbs/logs/enigma-bbs.log

Use bunyan to parse logs:

  • Install it:
cd /var/www/html/enigma-bbs
npm install bunyan
  • Use it:
/var/www/html/enigma-bbs/node_modules/.bin/bunyan /var/www/html/enigma-bbs/logs/enigma-bbs.log

Increase log verbosity:

/var/www/config.hjson
logging: {
  level: trace
}


 

Any questions, feedback, advice, complaints or meanderings are welcome.
Alteeve's Niche! Enterprise Support:
Alteeve Support
Community Support
© Alteeve's Niche! Inc. 1997-2024   Anvil! "Intelligent Availability®" Platform
legal stuff: All info is provided "As-Is". Do not use anything here unless you are willing and able to take responsibility for your own actions.