# Usenet in 60 Seconds ## Installation Create Linux machine $ sudo -i root # yum update root # yum install gcc root # yum install cpan root # yum install python-devel root # Get the Mime parser (for controlchan [idk wtf that is]) root # cpan -f install Mime::Parser root # wget ftp://ftp.isc.org/isc/inn/inn-2.5.4.tar.gz root # tar xvf inn-2.5.4.tar.gz root # cd inn-2.5.4 root # groupadd news root # useradd -g news -d /usr/local/news news root # ./configure \ --with-python \ --enable-libtool \ --with-gnu-ld \ --with-sendmail=/usr/sbin/sendmail \ --enable-tagged-hash \ --enable-shared \ LIBS="-lpthread" root # vim /etc/hostname # set your hostname to something like `news` root # vim /etc/hosts # change local.localdomain to the new hostname # should probably restart the machine to get the new hostname root # su - news news $ vim etc/inn.conf The top of my `inn.conf` looks like: mta: "/usr/sbin/sendmail -oi -oem %s" organization: "tilde.club" ovmethod: tradindexed hismethod: hisv6 pathhost: news pathnews: /usr/local/news #runasuser: # default: news #runasgroup: # default: news # General Settings domain: news.tilde.club #innflags: mailcmd: /usr/local/news/bin/innmail #server: Then you need to configure `readers.conf` to say who can connect, how, and what kind of things they get when they log in. news $ mv etc/readers.conf etc/readers.conf.old news $ vim etc/readers.conf A rudimentary `readers.conf` looks like: # as this machine will only listen to connections from the tilde.club server, I don't mind having # such a wild rule. auth tilde.club { hosts: * default: } access default { users: newsgroups: "*,!admin.*,!control,!control.*,!mode,!junk" } access admin { users: "artem,ftrain@tilde.club" newsgroups: * access: "RPA" perlfilter: false } Ensure that all the history files have the right permissions: news $ chmod 644 ~/db/* And finally set up the cron job to expire messages. Make sure you run this as the `news` user: 0 3 * * * ~/bin/news.daily expireover lowmark ## Running the server There are some scripts in the `contrib` which will help you get started, namely `sample.init.script`. I think it goes into `/etc/init.d`, though I might be mistaken. Another option is a long-running tmux session. Either way, the following runs the server: news $ bin/rc.news start And the following stops it: news $ bin/rc.news stop All errors are logged to `~/log/`. `~/log/errlog` is a good resource for finding out why your news server isn't running.