tilde.club/server.org

120 lines
3.0 KiB
Org Mode
Raw Normal View History

2014-10-02 20:48:32 +00:00
#+TITLE: Server Configuration
2014-10-07 02:24:48 +00:00
* Preface
This is a literate shell program written. The formatting is pretty
straightforward. You can have documentation and code mixed up and make
2014-10-07 02:33:32 +00:00
nice PDFs but also spit out code. It's good for public projects. It
looks okay on Github. I'll set it up so that it automatically exports a companion shell script in time.
2014-10-07 02:24:48 +00:00
Let's set up a tilde.club server!
2014-10-02 20:48:32 +00:00
* Base machine
2014-10-07 02:24:48 +00:00
- A standard unix server, Ubuntu or CentOS.
- [TK explain servers and server math]
* TODO Getting started
- [ ] Add apropos descriptions for each application?
We need to start by installing some basics.
First we automatically upgrade the system
#+begin_src bash
echo "Installing basics"
yum upgrade
#+end_src
And we remove Java; it's a beast and it takes a lot of memory and is
generally a pretty bad citizen on machines that many people share.
#+begin_src bash
echo "Removing java"
yum uninstall java
#+end_src
Then we fetch the version control management software "git" which
allows us to load recently updated code from public code
repositories. And we get nodejs, which provides us with an
implementation of JavaScript, a programming language that we need to
run our IRC server.
#+begin_src bash
yum install git-core
yum install nodejs
yum install npm
#+end_src
* Servers
Now we install servers, which allow client software to connect and
issue commands. Each server is like a small computer unto itself.
The first server we fetch is Webmin, which is a systems administration
tool that you can use from the web.
#+begin_src bash
echo "Installing servers"
echo "1) Webmin"
yum install libnet-ssleay-perl # (so that webmin uses HTTPS rather than HTTP)
wget http://prdownloads.sourceforge.net/webadmin/webmin-1.710-1.noarch.rpm
rpm -U webmin-1.710-1.noarch.rpm
echo "2) HTTPD/Apache"
yum install httpd
echo "3) Unix Talk"
yum install talk-server
echo "4) IRCD"
git clone https://github.com/alexyoung/ircd.js
cd ircd.js
# TODO FINISH INSTALL OF IRCD
echo "5) postfix mail server"
yum install postfix
#+end_src
** TODO Is postfix even necessary?
- [ ] We could just do maildrop.
- [ ] I do not know.
** TODO Log into webmin and set things up?
** TODO Finish the installation of the IRC server
** TODO Finish the installation of the NNTP server (INN?)
* Applications
#+begin_src bash
yum install emacs
yum install tmux
yum install htop
yum install elinks
yum install nail # [?why did I did this]
yum install lynx
yum install figlet
yum install ImageMagick
yum --enablerepo=epel install -y mosh
# Irc clients
yum install scrollz
yum install irssi
yum install alpine
yum install pico
yum install readline
yum install tig
yum install sbcl
yum install fortune-mod
2014-10-12 00:49:13 +00:00
yum install tidy
2014-10-07 02:24:48 +00:00
#+end_src
** TODO Figure out mosh ports
** TODO Decided if we want mailman for internal private mailing lists. Probably so!
* Development Tools
2014-10-11 05:31:17 +00:00
#+begin_src bash
2014-10-07 02:24:48 +00:00
yum groupinstall "Development Tools"
yum install gcc
chmod 700 /usr/bin/gcc*
chmod 700 /usr/bin/cc*
2014-10-11 05:31:17 +00:00
#+end_src
2014-10-07 02:24:48 +00:00
* Add other things
2014-10-07 02:24:48 +00:00
- Get the right racket for the box at http://racket-lang.org/download/