\documentclass[final,pdf,slideColor]{prosper}

  %-- Packages ---------------------------------------------------------------

  \usepackage[latin1]{inputenc}
  \usepackage[british]{babel}
  \usepackage[T1]{fontenc}
  \usepackage{url}

  \usepackage{amsmath}
  \usepackage{amssymb}
  \usepackage{epsfig}
  \usepackage{makeidx}

  %---------------------------------------------------------------------------

  \title{Adgangskodebeskyttede nyhedsgrupper med INN}
  \author{Jacob Sparre Andersen}
  \institution{\epsfig{file=gulch_logo.ps,width=80mm}}
  \email{news@jacob-sparre.dk}
  \slideCaption{SSLUG, 2006-03-16: Adgangskodebeskyttede nyhedsgrupper med INN
    --- \url{http://edb.jacob-sparre.dk/foredrag/INN/adgangskoder/}}

  %---------------------------------------------------------------------------

\begin{document}
  \maketitle

  \begin{slide}
    {Antagelser}

    Grundlæggende kendskab til:
    \begin{itemize}
    \item Hvordan Usenet fungerer.
    \item Hvordan INN sættes op.
    \end{itemize}

    Ellers er det en idé at læse Peter Makholms præsentation af
    hvordan man sætter INN op.  Den kan findes på
    \url{http://hacking.dk/talks/inn/}.
  \end{slide}

  \begin{slide}
    {readers.conf(5)/1}

{\small
\begin{verbatim}
READERS.CONF(5)           InterNetNews Documentation           READERS.CONF(5)

NAME
       readers.conf - Access control and configuration for nnrpd

DESCRIPTION
       readers.conf in pathetc specifies access control for nnrpd(8).  It con-
       trols who is allowed to connect as a news reader and what they're
       allowed to do after they connect.  nnrpd reads this file when it starts
       up.  This generally means that any changes take effect immediately on
       all subsequent connections, but nnrpd may have to be restarted if you
       use the -D option.  (The location pathetc/readers.conf is only the
\end{verbatim}
}
  \end{slide}

  \begin{slide}
    {readers.conf(5)/2}

    \verb|/etc/news/readers.conf| er opbygget af to typer elementer:
    \begin{itemize}
    \item \verb|auth|-blokke der identificerer brugere.
    \item \verb|access|-blokke der knytter adgangstilladelser til de
      identificerede brugere.
    \end{itemize}

    Rækkefølgen af \verb|auth|- og \verb|access|-blokkene har
    betydning.

    \vspace{10mm}

    \begin{center}
      Sørg for at alle \verb|auth|-blokkene kommer \\
      {\bf \large før } \\
      alle \verb|access|-blokkene.
    \end{center}
  \end{slide}

  \begin{slide}
    {Eksempel på ``auth''-blok}

\begin{verbatim}
auth "NBI" {
    hosts:   "130.225.226.0/24, 130.225.212.0/24, 172.24.0.0/16"
    auth:    "ckpasswd -f /etc/news/accounts"
    default: "NBI"
}
\end{verbatim}

    \begin{itemize}
    \item Kun de nævnte IP-adresser tæller.
    \item Brugernavnet sættes som standard til \verb|NBI|.
    \item Brugere der har sendt et (brugernavn, adgangskode)-par der
      godkendes af kommandoen, beholder det godkendte brugernavn.
    \end{itemize}

    Det tildelte brugernavn bruges i \verb|access|-blokkene.
  \end{slide}

  \begin{slide}
    {Oprette en konto}

    I \verb|auth|-blokken vi så før, bliver der refereret til
    kontodatabasen \verb|/etc/news/accounts|.

    \vspace{10mm}
    Vi kan oprette en konto med brugernavnet \verb|sslug-foredrag| og
    adgangskoden \verb|adgangskoden| med kommandoen:

    \vspace{10mm}
\begin{verbatim}
sudo htpasswd -db /etc/news/accounts \
  sslug-foredrag adgangskoden
\end{verbatim}
  \end{slide}

  \begin{slide}
    {Eksempler på ``access''-blokke}
    
    Her får brugeren \verb|sparre| læse- og skriveadgang til samtlige
    grupper:
\begin{verbatim}
access "Jacob Sparre Andersen" {
    users:      "sparre"
    newsgroups: "*"
    access:     "RP"
}
\end{verbatim}

    Her får brugeren \verb|<read-only>| læseadgang til et udvalg af
    grupperne og skriveadgang til gruppen \verb|dk.test|:
\begin{verbatim}
access "read-only" {
    users: "<read-only>"
    read:  "bionet.*, cern.*, comp.*, dk.*, fo.*, gnu.*, is.*, linux.*, news.*, no.*, rec.*, rss.*, sci.*, se.*, soc.*, swnet.*, szn.news.*, uk.*"
    post:  "dk.test"
}
\end{verbatim}
  \end{slide}

  \begin{slide}
    {Demonstration}

    \begin{enumerate}
    \item Opret nyhedsgruppe.
    \item Føj en konto til \verb|/etc/news/accounts|.
    \item Føj en \verb|auth|-blok til \verb|readers.conf|.
    \item Føj en \verb|access|-blok til \verb|readers.conf|.
    \item Genindlæs INN's opsætning.
    \item Afprøv.
    \end{enumerate}
  \end{slide}

  \begin{slide}
    {Henvisninger}

    \begin{itemize}
    \item Noter om opsætning af INN: \url{http://hacking.dk/talks/inn/}
    \item Private News eXchange (udveksling af nyhedsgrupper):
      \url{http://pnx.dk/}
    \item Opsætning af NNTP-klienter med brugernavn og adgangskode:
      \url{http://dotsrc.org/usenet/clientconfig/}
    \item Flere spørgsmål: \url{news://news.sslug.dk/sslug.netvaerk}
    \end{itemize}
  \end{slide}
\end{document}

