Merge pull request #25 from martin-a-brown/master
LDP nits and (partial) updates to Traffic Control HOWTO
|
@ -34,8 +34,8 @@ ifeq ($(FLAVOR),ubuntu)
|
|||
else ifeq ($(FLAVOR),opensuse)
|
||||
# -- OpenSUSE-13.2
|
||||
# -- for DocBook SGML (DSSSL) processing
|
||||
DBDSL := /usr/share/sgml/docbook/dsssl-stylesheets-1.79/html/docbook.dsl
|
||||
COLLATE := /usr/share/sgml/docbook/dsssl-stylesheets-1.79/bin/collateindex.pl
|
||||
DBDSL := /usr/share/sgml/docbook/dsssl-stylesheets/html/docbook.dsl
|
||||
COLLATE := /usr/share/sgml/docbook/dsssl-stylesheets/bin/collateindex.pl
|
||||
LDPDSL := /home/mabrown/vcs/LDP/LDP/builder/dsssl/ldp.dsl
|
||||
# -- for DocBook XML (XSLT layer) processing
|
||||
XSLCHUNK := /home/mabrown/vcs/LDP/LDP/builder/xsl/ldp-html-chunk.xsl
|
||||
|
@ -71,6 +71,8 @@ PDF = $(abspath $(OUTDIR)/$(OBJSTEM).pdf)
|
|||
HTML = $(abspath $(OUTDIR)/$(OBJSTEM).html)
|
||||
HTMLS = $(abspath $(OUTDIR)/$(OBJSTEM)-single.html)
|
||||
TEXT = $(abspath $(OUTDIR)/$(OBJSTEM).txt)
|
||||
TEXTGZ = $(TEXT).gz
|
||||
TARBALL = $(HTML).tar.gz
|
||||
|
||||
|
||||
# - - - - - - - - - - - - - - - - - - - - - - -
|
||||
|
@ -89,6 +91,18 @@ $(OUTDIR): $(WORKING)
|
|||
$(OUTDIR)/images $(OUTDIR)/resources: $(OUTDIR)
|
||||
(cd $(OBJDIR) && test ! -d $(notdir $@) || rsync -aL $(VERBOSE) ./$(notdir $@) $(OUTDIR))
|
||||
|
||||
$(TEXTGZ): $(OBJFORMAT)-$(TEXT)
|
||||
(cd $(OUTDIR) && gzip --stdout < $(TEXT) > $(TEXTGZ))
|
||||
|
||||
$(TARBALL): $(OBJFORMAT)-$(HTMLS) $(OBJFORMAT)-$(HTML)
|
||||
(cd $(WORKING) \
|
||||
&& tar $(VERBOSE) --gzip --create --file $(TARBALL) \
|
||||
--exclude $(OBJSTEM)/$(notdir $(TARBALL)) \
|
||||
--exclude $(OBJSTEM)/$(notdir $(PDF)) \
|
||||
--exclude $(OBJSTEM)/$(notdir $(TEXT)) \
|
||||
-- $(OBJSTEM))
|
||||
|
||||
|
||||
.PHONY: announce
|
||||
announce:
|
||||
$(info Detected $(OBJ) file as $(OBJFORMAT).)
|
||||
|
@ -137,7 +151,7 @@ sgml-$(TEXT): sgml-$(HTMLS)
|
|||
sgml-$(PDF): $(OUTDIR)
|
||||
( cd $(OUTDIR) \
|
||||
&& jw -f docbook -b pdf --output . $(OBJ) \
|
||||
|| dblatex -F sgml -t pdf -o sgml-$(PDF) $(OBJ))
|
||||
|| dblatex -F sgml -t pdf -o $(PDF) $(OBJ))
|
||||
|
||||
.PHONY: sgml-$(HTML)
|
||||
sgml-$(HTML): $(OUTDIR)
|
||||
|
|
|
@ -1,8 +1,18 @@
|
|||
TODO produce-ldp-outputs
|
||||
------------------------
|
||||
|
||||
* instead of requiring directory, working, use mktemp -d
|
||||
* add support for varied verbosity levels
|
||||
* instead of requiring 'working' directory, use mktemp -d (and cleanup)
|
||||
|
||||
* switch from Makefile to shell for ldp-process (Makefile is just not quite
|
||||
right)
|
||||
|
||||
* add command-line options to ldp-process and produce-ldp-outputs; make
|
||||
sure they are consistent
|
||||
|
||||
* add support for varied verbosity levels, since this will run as a service
|
||||
|
||||
* generate .txt.gz and .tar.gz (with HTML + images)
|
||||
|
||||
* figure out the TLDP XSL stylesheet support question)
|
||||
(no such package for OpenSUSE; Frank Lichtenheld's upstream Debian
|
||||
packages require minor changes to generate FOP outputs)
|
||||
|
|
|
@ -0,0 +1,138 @@
|
|||
#! /bin/bash
|
||||
#
|
||||
# -- create compatibility symlinks from a new style LDP output tree to the
|
||||
# earlier filesystem layout:
|
||||
#
|
||||
# -- License: GPLv2
|
||||
#
|
||||
# -- written for TLDP in January 2016; Martin A. Brown <martin@linux-ip.net>
|
||||
#
|
||||
#
|
||||
# old new
|
||||
# ------------------- -----------------------
|
||||
# ${STEM}/${STEM}.txt html/HOWTO/text/${STEM}
|
||||
# ${STEM}/${STEM}.pdf html/HOWTO/pdf/${STEM}.pdf
|
||||
# ${STEM}/${STEM}.html html/${STEM}.html
|
||||
# ${STEM}/${STEM}-single.html html/HOWTO/html_single/${STEM}/index.html
|
||||
#
|
||||
#
|
||||
|
||||
set -e
|
||||
# set -x
|
||||
|
||||
SELFNAME="$( readlink --canonicalize ${0})"
|
||||
ME="${SELFNAME##*/}" # -- basename
|
||||
DIR="${SELFNAME%/*}" # -- dirname
|
||||
|
||||
# -- my favorite shell functions (and their offspring)
|
||||
#
|
||||
gripe () { printf >&2 "%s\n" "$@"; }
|
||||
debug () { : ; } # -- NOOP for now
|
||||
notice () { gripe "${ME}[$$]: $@"; }
|
||||
abort () {
|
||||
EXIT_CODE="${1}" && shift;
|
||||
gripe "E: $@";
|
||||
exit $EXIT_CODE;
|
||||
}
|
||||
|
||||
usage () {
|
||||
abort 1 "usage: ${ME} <newtree> <oldtree>";
|
||||
}
|
||||
|
||||
test "$#" -eq 2 || usage
|
||||
|
||||
NEWTREE="$( readlink --canonicalize $1 )" && shift
|
||||
OLDTREE="$( readlink --canonicalize $1 )" && shift
|
||||
|
||||
notice "Will walk all documents in $NEWTREE"
|
||||
notice "Will create symlinks under $OLDTREE"
|
||||
|
||||
DRYRUN=echo
|
||||
|
||||
cd "$NEWTREE" \
|
||||
|| abort 1 "Could not \"cd $NEWTREE\""
|
||||
|
||||
find . -mindepth 1 -maxdepth 1 -type d -printf "%P\n" \
|
||||
| sort | while read STEM ; do
|
||||
|
||||
cd "${OLDTREE}" \
|
||||
|| abort 1 "Could not \"cd $OLDTREE\""
|
||||
|
||||
# HTML chunked outputs
|
||||
#
|
||||
unset DOC_HTML
|
||||
NEWFILE="${NEWTREE}/${STEM}/${STEM}.html"
|
||||
for OLDFILE in html/HOWTO/${STEM}/index.html html/HOWTO/${STEM}.html html/FAQ/${STEM}/index.html html/LDP/${STEM}/html/index.html ; do
|
||||
if test -e "$OLDFILE"; then
|
||||
DOC_HTML=$OLDFILE
|
||||
notice "$STEM symlinking (html) $OLDFILE (to $NEWFILE)"
|
||||
$DRYRUN ln -srf --backup=simple --suffix="-$( date +%F-%T)" -- "$NEWFILE" "$OLDFILE"
|
||||
break
|
||||
else
|
||||
: # -- noop
|
||||
#notice "$STEM missing (html) $OLDFILE"
|
||||
fi
|
||||
done
|
||||
|
||||
# HTML single file outputs for HOWTO and GUIDE document categories
|
||||
#
|
||||
unset DOC_HTMLS
|
||||
NEWFILE="${NEWTREE}/${STEM}/${STEM}-single.html"
|
||||
for OLDFILE in html/HOWTO/html_single/${STEM}/index.html html/LDP/${STEM}/html/${STEM}.html ; do
|
||||
if test -e "$OLDFILE"; then
|
||||
DOC_HTMLS=$OLDFILE
|
||||
notice "$STEM symlinking (htmls) $OLDFILE (to $NEWFILE)"
|
||||
$DRYRUN ln -srf --backup=simple --suffix="-$( date +%F-%T)" -- "$NEWFILE" "$OLDFILE"
|
||||
break
|
||||
else
|
||||
: # -- noop
|
||||
#notice "$STEM missing (htmls) $OLDFILE"
|
||||
fi
|
||||
done
|
||||
|
||||
|
||||
unset DOC_TXT
|
||||
NEWFILE="${NEWTREE}/${STEM}/${STEM}.txt"
|
||||
for OLDFILE in html/{FAQ/faqs,HOWTO/text}/${STEM} html/{LDP,REF}/${STEM}/${STEM}.txt ; do
|
||||
if test -e "$OLDFILE"; then
|
||||
DOC_TXT=$OLDFILE
|
||||
notice "$STEM symlinking (text) $OLDFILE (to $NEWFILE)"
|
||||
$DRYRUN ln -srf --backup=simple --suffix="-$( date +%F-%T)" -- "$NEWFILE" "$OLDFILE"
|
||||
break
|
||||
else
|
||||
: # -- noop
|
||||
#notice "$STEM missing (text) $OLDFILE"
|
||||
fi
|
||||
done
|
||||
|
||||
unset DOC_PDF
|
||||
NEWFILE="${NEWTREE}/${STEM}/${STEM}.pdf"
|
||||
for OLDFILE in html/{HOWTO,FAQ}/pdf/${STEM}.pdf html/{LDP,REF}/${STEM}/${STEM}.pdf ; do
|
||||
if test -e "$OLDFILE"; then
|
||||
DOC_PDF=$OLDFILE
|
||||
notice "$STEM symlinking (pdf) $OLDFILE (to $NEWFILE)"
|
||||
$DRYRUN ln -srf --backup=simple --suffix="-$( date +%F-%T)" -- "$NEWFILE" "$OLDFILE"
|
||||
break
|
||||
else
|
||||
: # -- noop
|
||||
#notice "$STEM missing (pdf) $OLDFILE"
|
||||
fi
|
||||
done
|
||||
|
||||
for var in DOC_HTML DOC_HTMLS DOC_TXT DOC_PDF; do
|
||||
|
||||
if test -n "${!var}"; then
|
||||
notice "$STEM ${var} ${!var}"
|
||||
else
|
||||
notice "$STEM ${var} not found"
|
||||
fi
|
||||
|
||||
done
|
||||
|
||||
done
|
||||
|
||||
# -- add some special handling for:
|
||||
#
|
||||
# solrhe
|
||||
#
|
||||
# -- end of file
|
|
@ -17,18 +17,21 @@ ME="${SELFNAME##*/}" # -- basename
|
|||
DIR="${SELFNAME%/*}" # -- dirname
|
||||
MAKEFILE="${DIR}/Makefile"
|
||||
|
||||
VCSBASE="${1:-$HOME/vcs/LDP/LDP}" && shift
|
||||
DESTDIR="${1:-$PWD/output}" && shift
|
||||
SOURCETREE="${1:-$HOME/vcs/LDP/LDP}" && shift
|
||||
SOURCETREE="$( readlink --canonicalize $SOURCETREE )"
|
||||
|
||||
SOURCES=""
|
||||
SOURCES="${SOURCES} ${VCSBASE}/faq/linuxdoc"
|
||||
SOURCES="${SOURCES} ${VCSBASE}/guide/linuxdoc"
|
||||
SOURCES="${SOURCES} ${VCSBASE}/howto/linuxdoc"
|
||||
OUTPUTTREE="${1:-$PWD/output}" && shift
|
||||
OUTPUTTREE="$( readlink --canonicalize $OUTPUTTREE )"
|
||||
|
||||
SOURCES="${SOURCES} ${VCSBASE}/faq/docbook"
|
||||
SOURCES="${SOURCES} ${VCSBASE}/guide/docbook"
|
||||
SOURCES="${SOURCES} ${VCSBASE}/howto/docbook"
|
||||
SOURCES="${SOURCES} ${VCSBASE}/ref/docbook"
|
||||
SOURCEDIRS=""
|
||||
SOURCEDIRS="${SOURCEDIRS} ${SOURCETREE}/faq/linuxdoc"
|
||||
SOURCEDIRS="${SOURCEDIRS} ${SOURCETREE}/guide/linuxdoc"
|
||||
SOURCEDIRS="${SOURCEDIRS} ${SOURCETREE}/howto/linuxdoc"
|
||||
|
||||
SOURCEDIRS="${SOURCEDIRS} ${SOURCETREE}/faq/docbook"
|
||||
SOURCEDIRS="${SOURCEDIRS} ${SOURCETREE}/guide/docbook"
|
||||
SOURCEDIRS="${SOURCEDIRS} ${SOURCETREE}/howto/docbook"
|
||||
SOURCEDIRS="${SOURCEDIRS} ${SOURCETREE}/ref/docbook"
|
||||
|
||||
# -- my favorite shell functions (and their offspring)
|
||||
#
|
||||
|
@ -60,8 +63,8 @@ logger () {
|
|||
|
||||
usage () {
|
||||
gripe "usage: ${ME} [<ldp_checkout> [<destdir>]]" \
|
||||
" default ldp_checkout=${VCSBASE}" \
|
||||
" default destdir=${DESTDIR}" \
|
||||
" default ldp_checkout=${SOURCETREE}" \
|
||||
" default destdir=${OUTPUTTREE}" \
|
||||
""
|
||||
abort 1 "$@";
|
||||
}
|
||||
|
@ -191,7 +194,7 @@ function is_output_current () {
|
|||
# -- return a list of filenames in any directory which are (likely)
|
||||
# to be documents for TLDP
|
||||
# args 1: input file name
|
||||
# args 2: DESTDIR
|
||||
# args 2: OUTPUTTREE
|
||||
#
|
||||
# -- there are two (probable) cases for the input, A) a single standalone
|
||||
# file or B) the main document source file in a dedicated directory;
|
||||
|
@ -201,7 +204,7 @@ function is_output_current () {
|
|||
# the parent directory
|
||||
#
|
||||
# OBJ=/home/fred/vcs/LDP/LDP/howto/docbook/Software-Release-Practice-HOWTO.xml
|
||||
# DESTDIR=/home/fred/wip/tldp/output
|
||||
# OUTPUTTREE=/home/fred/wip/tldp/output
|
||||
# fn=Software-Release-Practice-HOWTO.xml
|
||||
# stem=Software-Release-Practice-HOWTO
|
||||
# parentdir=/home/fred/vcs/LDP/LDP/howto/docbook
|
||||
|
@ -211,7 +214,7 @@ function is_output_current () {
|
|||
# to look for all files starting from the parent directory
|
||||
#
|
||||
# OBJ=/home/fred/vcs/LDP/LDP/howto/docbook/Jabber-Server-Farming-HOWTO/Jabber-Server-Farming-HOWTO.xml
|
||||
# DESTDIR=/home/fred/wip/tldp/output
|
||||
# OUTPUTTREE=/home/fred/wip/tldp/output
|
||||
# fn=Jabber-Server-Farming-HOWTO.xml
|
||||
# stem=Jabber-Server-Farming-HOWTO
|
||||
# parentdir=/home/fred/vcs/LDP/LDP/howto/docbook/Jabber-Server-Farming-HOWTO
|
||||
|
@ -219,7 +222,7 @@ function is_output_current () {
|
|||
#
|
||||
local stem="${1}" && shift
|
||||
local OBJ="${1}" && shift
|
||||
local DESTDIR="${1}" && shift
|
||||
local OUTPUTTREE="${1}" && shift
|
||||
|
||||
local parentdir="${OBJ%/*}"
|
||||
local parentstem="${parentdir##*/}"
|
||||
|
@ -228,7 +231,7 @@ function is_output_current () {
|
|||
test "${stem}" == "${parentstem}" \
|
||||
&& startloc="${parentdir}"
|
||||
|
||||
local outdir="${DESTDIR}/${stem}"
|
||||
local outdir="${OUTPUTTREE}/${stem}"
|
||||
|
||||
result=$( find_sort_by_mtime "$startloc" "$outdir" ) \
|
||||
|| abort 1 "Could not retrieve files for $stem sorted by mtime."
|
||||
|
@ -260,7 +263,7 @@ function is_output_current () {
|
|||
#
|
||||
local stem="${1}" && shift
|
||||
local OBJ="${1}" && shift
|
||||
local DESTDIR="${1}" && shift
|
||||
local OUTPUTTREE="${1}" && shift
|
||||
#local makefile="${1}" && shift
|
||||
|
||||
# -- make a stab at processing the document, but don't let the driver
|
||||
|
@ -269,7 +272,7 @@ function is_output_current () {
|
|||
{
|
||||
{
|
||||
exec 2>&1;
|
||||
make -f "$MAKEFILE" OBJ="${OBJ}" DESTDIR="${DESTDIR}";
|
||||
make -f "$MAKEFILE" OBJ="${OBJ}" DESTDIR="${OUTPUTTREE}";
|
||||
test $? -eq 0 \
|
||||
|| gripe "FAILURE" "FAILURE producing all outputs from $OBJ" "FAILURE";
|
||||
} | sed -ue "s/^/${stem} /";
|
||||
|
@ -280,11 +283,11 @@ function is_output_current () {
|
|||
list_orphaned_outputs () {
|
||||
# - - - - - - - - - - - -
|
||||
#
|
||||
local DESTDIR="${1}" && shift
|
||||
local SOURCES="$@"
|
||||
local OUTPUTTREE="${1}" && shift
|
||||
local SOURCEDIRS="$@"
|
||||
{
|
||||
SOURCEDOCS=$( list_source_documents "${SOURCES}" | get_stem | sort )
|
||||
OUTPUTDOCS=$( list_output_documents "${DESTDIR}" | sort )
|
||||
SOURCEDOCS=$( list_source_documents "${SOURCEDIRS}" | get_stem | sort )
|
||||
OUTPUTDOCS=$( list_output_documents "${OUTPUTTREE}" | sort )
|
||||
|
||||
# -- list documents in source tree that do not have corresponding
|
||||
# output directory
|
||||
|
@ -309,9 +312,9 @@ function is_output_current () {
|
|||
produce_ldp_outputs () {
|
||||
# - - - - - - - - - - - -
|
||||
#
|
||||
local DESTDIR="${1}" && shift
|
||||
local SOURCES="$@"
|
||||
list_source_documents "$SOURCES" | sort_by_stem | while read OBJ; do
|
||||
local OUTPUTTREE="${1}" && shift
|
||||
local SOURCEDIRS="$@"
|
||||
list_source_documents "$SOURCEDIRS" | sort_by_stem | while read OBJ; do
|
||||
|
||||
stem=$( printf "%s\n" "$OBJ" | get_stem )
|
||||
|
||||
|
@ -323,8 +326,8 @@ function is_output_current () {
|
|||
# would like to continue, if possible, and process the next
|
||||
# available document.
|
||||
#
|
||||
is_output_current "${stem}" "$OBJ" "$DESTDIR" \
|
||||
|| (generate_new_content "${stem}" "${OBJ}" "${DESTDIR}" || :)
|
||||
is_output_current "${stem}" "$OBJ" "$OUTPUTTREE" \
|
||||
|| (generate_new_content "${stem}" "${OBJ}" "${OUTPUTTREE}" || :)
|
||||
|
||||
done
|
||||
}
|
||||
|
@ -333,11 +336,11 @@ function is_output_current () {
|
|||
# main
|
||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
|
||||
test -d "${DESTDIR}" \
|
||||
test -d "${OUTPUTTREE}" \
|
||||
|| usage "Output directory must already exist, quitting."
|
||||
|
||||
produce_ldp_outputs "$DESTDIR" "$SOURCES"
|
||||
produce_ldp_outputs "$OUTPUTTREE" "$SOURCEDIRS"
|
||||
|
||||
list_orphaned_outputs "$DESTDIR" "$SOURCES"
|
||||
list_orphaned_outputs "$OUTPUTTREE" "$SOURCEDIRS"
|
||||
|
||||
# -- end of file
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
|
||||
<!-- Change this to the path to where you have installed Norman
|
||||
Walsh's XSL stylesheets -->
|
||||
<xsl:import href="/usr/share/sgml/docbook/docbook-xsl-1.44/html/chunk.xsl"/>
|
||||
<xsl:import href="http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl"/>
|
||||
|
||||
<!-- Imports the common LDP customization layer. -->
|
||||
<xsl:import href="ldp-html-common.xsl"/>
|
||||
|
|
|
@ -68,15 +68,15 @@
|
|||
|
||||
|
||||
<!-- Make funcsynopsis look pretty -->
|
||||
<xsl:param name="funcsynopsis.decoration" select="1" doc:type="boolean"/>
|
||||
<xsl:param name="funcsynopsis.decoration" select="1" type="boolean" />
|
||||
|
||||
<!-- Extension for HTML files -->
|
||||
<xsl:param name="html.ext" select="'.html'"/>
|
||||
|
||||
<!-- Generate TOCs for book, article, part -->
|
||||
<xsl:param name="generate.book.toc" select="1" doc:type="boolean"/>
|
||||
<xsl:param name="generate.article.toc" select="1" doc:type="boolean"/>
|
||||
<xsl:param name="generate.part.toc" select="1" doc:type="boolean"/>
|
||||
<xsl:param name="generate.book.toc" select="1" type="boolean"/>
|
||||
<xsl:param name="generate.article.toc" select="1" type="boolean"/>
|
||||
<xsl:param name="generate.part.toc" select="1" type="boolean"/>
|
||||
|
||||
<!-- generate-book-titlepage -->
|
||||
|
||||
|
@ -111,7 +111,7 @@
|
|||
<!-- graphic-extensions - NO LONGER NEEDED?? -->
|
||||
|
||||
<!-- default graphic filename extension -->
|
||||
<xsl:param name="graphic.default.extension" select="'.gif'" doc:type="string"/>
|
||||
<xsl:param name="graphic.default.extension" select="'.gif'" type="string"/>
|
||||
|
||||
<!-- Should chapters be labeled? 0 or 1 -->
|
||||
<xsl:param name="chapter.autolabel" select="1"/>
|
||||
|
@ -121,7 +121,7 @@
|
|||
|
||||
<!-- Related to section labels, should those labels include the chapter
|
||||
number in them (i.e., 1.1, 1.2, 1.3, 1.4 )-->
|
||||
<xsl:param name="section.label.includes.component.label" select="1" doc:type="boolean"/>
|
||||
<xsl:param name="section.label.includes.component.label" select="1" type="boolean"/>
|
||||
|
||||
<!-- To what depth (in sections) should the TOC go? -->
|
||||
<xsl:param name="toc.section.depth" select="2"/>
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
|
||||
<!-- Change this to the path to where you have installed Norman
|
||||
Walsh's XSL stylesheets. -->
|
||||
<xsl:import href="/usr/share/sgml/docbook/docbook-xsl-1.44/html/docbook.xsl"/>
|
||||
<xsl:import href="http://docbook.sourceforge.net/release/xsl/current/html/docbook.xsl"/>
|
||||
|
||||
<!-- Imports the common LDP customization layer. -->
|
||||
<xsl:import href="ldp-html-common.xsl"/>
|
||||
|
|
|
@ -11,8 +11,30 @@
|
|||
|
||||
<!-- Change this to the path to where you have installed Norman
|
||||
Walsh's XSL stylesheets. -->
|
||||
<xsl:import href="/usr/share/sgml/docbook/docbook-xsl-1.41/fo/docbook.xsl"/>
|
||||
<xsl:import href="http://docbook.sourceforge.net/release/xsl/current/fo/docbook.xsl"/>
|
||||
|
||||
<!-- Number all sections in the style of 'CH.S1.S2 Section Title' where
|
||||
CH is the chapter number, S1 is the section number and S2 is the
|
||||
sub-section number. The lables are not limited to any particular
|
||||
depth and can go as far as there are sections. -->
|
||||
<xsl:param name="section.autolabel" select="1"></xsl:param>
|
||||
<xsl:param name="section.label.includes.component.label" select="0"></xsl:param>
|
||||
|
||||
<!-- Turn off the default 'full justify' and go with 'left justify'
|
||||
instead. This avoids the large gaps that can sometimes appear
|
||||
between words in fully-justified documents. -->
|
||||
<xsl:param name="alignment">start</xsl:param>
|
||||
|
||||
<!-- Shade Verbatim Sections such as programlisting and screen -->
|
||||
<xsl:param name="shade.verbatim" select="1"/>
|
||||
|
||||
<!-- Create bookmarks in .PDF files -->
|
||||
<xsl:param name="fop.extensions" select="0"/>
|
||||
|
||||
<!-- Use fop1 extensions, per
|
||||
https://lists.oasis-open.org/archives/docbook-apps/201110/msg00080.html
|
||||
-->
|
||||
<xsl:param name="fop1.extensions" select="1"/>
|
||||
|
||||
<!-- Customized parameters and templates go here. -->
|
||||
|
||||
</xsl:stylesheet>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<!DOCTYPE book PUBLIC "-//OASIS/DTD DocBook XML V4.1.2//EN"
|
||||
"http://oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"
|
||||
[
|
||||
<!ENTITY chap1 SYSTEM "chap1.xml">
|
||||
<!ENTITY chap2 SYSTEM "chap2.xml">
|
||||
|
|
|
@ -54,7 +54,7 @@
|
|||
<para>This is a list of the most common signals:</para>
|
||||
|
||||
<table id="tab_12_02" frame="all"><title>Common kill signals</title>
|
||||
<tgroup cols="2" align="left" colsep="1" rowsep="1">
|
||||
<tgroup cols="3" align="left" colsep="1" rowsep="1">
|
||||
<thead>
|
||||
<row><entry>Signal name</entry><entry>Signal value</entry><entry>Effect</entry></row>
|
||||
</thead>
|
||||
|
|
|
@ -635,8 +635,8 @@ esac
|
|||
<listitem><para>Modify <filename>/etc/profile</filename> so that you get a special greeting message when you connect to your system as <emphasis>root</emphasis>.</para></listitem>
|
||||
<listitem><para>Edit the <filename>leaptest.sh</filename> script from <xref linkend="sect_07_02_04" /> so that it requires one argument, the year. Test that exactly one argument is supplied.</para></listitem>
|
||||
<listitem><para>Write a script called <filename>whichdaemon.sh</filename> that checks if the <command>httpd</command> and <command>init</command> daemons are running on your system. If an <command>httpd</command> is running, the script should print a message like, <quote>This machine is running a web server.</quote> Use <command>ps</command> to check on processes.</para></listitem>
|
||||
<listitem><para>Write a script that makes a backup of your home directory on a remote machine using <command>scp</command>. The script should report in a log file, for instance <filename>~/log/homebackup.log</filename>. If you don't have a second machine to copy the backup to, use <command>scp</command> to test copying it to the localhost. This requires SSH keys between the two hosts, or else you have to supply a password. The creation of SSH keys is explained in <command>man <parameter>ssh-keygen</parameter></command>.</para>
|
||||
<listitem><para>Adapt the script from the first example in <xref linkend="sect_07_03_01" /> to include the case of exactly 90% disk space usage, and lower than 10% disk space usage.</para></listitem>
|
||||
<listitem><para>Write a script that makes a backup of your home directory on a remote machine using <command>scp</command>. The script should report in a log file, for instance <filename>~/log/homebackup.log</filename>. If you don't have a second machine to copy the backup to, use <command>scp</command> to test copying it to the localhost. This requires SSH keys between the two hosts, or else you have to supply a password. The creation of SSH keys is explained in <command>man <parameter>ssh-keygen</parameter></command>.</para></listitem>
|
||||
<listitem><para>Adapt the script from the first example in <xref linkend="sect_07_03_01" /> to include the case of exactly 90% disk space usage, and lower than 10% disk space usage.</para>
|
||||
<para>The script should use <command>tar <option>cf</option></command> for the creation of the backup and <command>gzip</command> or <command>bzip2</command> for compressing the <filename>.tar</filename> file. Put all filenames in variables. Put the name of the remote server and the remote directory in a variable. This will make it easier to re-use the script or to make changes to it in the future.</para>
|
||||
<para>The script should check for the existence of a compressed archive. If this exists, remove it first in order to prevent output generation.</para>
|
||||
<para>The script should also check for available diskspace. Keep in mind that at any given moment you could have the data in your home directory, the data in the <filename>.tar</filename> file and the data in the compressed archive all together on your disk. If there is not enough diskspace, exit with an error message in the log file.</para>
|
||||
|
|
|
@ -4568,21 +4568,21 @@ are necessary for moving to 2.2.x is available at <ULink
|
|||
URL="http://www-stu.calvin.edu/~clug/users/jnieho38/goto22.html">
|
||||
http://www-stu.calvin.edu/~clug/users/jnieho38/goto22.html</ULink>; I will
|
||||
attempt to summarize the information below (items marked with a leading
|
||||
``<bf>**</bf>'' indicate you will most likely need to
|
||||
``✶'' indicate you will most likely need to
|
||||
upgrade the item for Red Hat 5.2; items not indicated as such are
|
||||
<Emphasis>probably</Emphasis> okay but probably worth checking).</Para>
|
||||
|
||||
<ItemizedList Mark="Bullet" Spacing="Compact">
|
||||
|
||||
<ListItem><para><bf>**</bf> <Emphasis>initscripts-3.78-2.4 or
|
||||
<ListItem><para>✶ <Emphasis>initscripts-3.78-2.4 or
|
||||
better</Emphasis> (Type ``<Literal>rpm -q initscripts</Literal>'' to check
|
||||
your version)</Para></ListItem>
|
||||
|
||||
<ListItem><Para><bf>**</bf> <Emphasis>modutils-2.1.121 or
|
||||
<ListItem><Para>✶ <Emphasis>modutils-2.1.121 or
|
||||
better</Emphasis> (Type ``<Literal>rpm -q modutils</Literal>'' to check your
|
||||
version)</Para></ListItem>
|
||||
|
||||
<ListItem><Para><bf>**</bf> <Emphasis>mount-2.9-0 or better</Emphasis>
|
||||
<ListItem><Para>✶ <Emphasis>mount-2.9-0 or better</Emphasis>
|
||||
(Type ``<Literal>rpm -q mount</Literal>'' to check your
|
||||
version)</Para></ListItem>
|
||||
|
||||
|
@ -4607,13 +4607,13 @@ glibc</Literal>'')</Para></ListItem>
|
|||
<ListItem><Para><Emphasis>procps-1.2.9 or better</Emphasis> (``<Literal>rpm -q
|
||||
procps</Literal>'')</Para></ListItem>
|
||||
|
||||
<ListItem><Para><bf>**</bf> <Emphasis>procinfo-15 or better</Emphasis>
|
||||
<ListItem><Para>✶ <Emphasis>procinfo-15 or better</Emphasis>
|
||||
(``<Literal>rpm -q procinfo</Literal>'')</Para></ListItem>
|
||||
|
||||
<ListItem><Para><Emphasis>psmisc-17 or better</Emphasis> (``<Literal>rpm -q
|
||||
psmisc</Literal>'')</Para></ListItem>
|
||||
|
||||
<ListItem><Para><bf>**</bf> <Emphasis>net-tools-1.50 or
|
||||
<ListItem><Para>✶ <Emphasis>net-tools-1.50 or
|
||||
better</Emphasis> (``<Literal>rpm -q net-tools</Literal>'')</Para></ListItem>
|
||||
|
||||
<ListItem><Para><Emphasis>loadlin-1.6 or better</Emphasis> (Needed only if
|
||||
|
@ -4651,7 +4651,7 @@ with a modem and PPP.)</Para></ListItem>
|
|||
client to connect to the Internet, such as with a cable
|
||||
modem).</Para></ListItem>
|
||||
|
||||
<ListItem><Para><bf>**</bf> <Emphasis>util-linux-2.9.0</Emphasis>
|
||||
<ListItem><Para>✶ <Emphasis>util-linux-2.9.0</Emphasis>
|
||||
(``<Literal>rpm -q util-linux</Literal>'')</Para></ListItem>
|
||||
|
||||
<ListItem><Para><Emphasis>setserial-2.1 or better</Emphasis>
|
||||
|
@ -4796,11 +4796,11 @@ the scope of this document.</Para>
|
|||
the configuration file to thwart off spammers. These include:</Para>
|
||||
|
||||
<ProgramListing>
|
||||
<bf>O PrivacyOptions=authwarnings</bf>
|
||||
<emphasis>O PrivacyOptions=authwarnings</emphasis>
|
||||
<Emphasis>change to:</Emphasis>
|
||||
O PrivacyOptions=authwarnings,noexpn,novrfy
|
||||
|
||||
<bf>O SmtpGreetingMessage=$j Sendmail $v/$Z; $b</bf>
|
||||
<emphasis>O SmtpGreetingMessage=$j Sendmail $v/$Z; $b</emphasis>
|
||||
<Emphasis>change to:</Emphasis>
|
||||
O SmtpGreetingMessage=$j Sendmail $v/$Z; $b NO UCE C=xx L=xx
|
||||
</ProgramListing>
|
||||
|
@ -5211,7 +5211,7 @@ security:</Para>
|
|||
|
||||
<ItemizedList Mark="Bullet" Spacing="Normal">
|
||||
|
||||
<ListItem><Para><bf>Upgrade system tools, applications, and kernel:</bf>
|
||||
<ListItem><Para><emphasis>Upgrade system tools, applications, and kernel:</emphasis>
|
||||
By far the most common cause of system break-ins is by not exercising
|
||||
diligence in keeping an up-to-date server. Performing regular upgrades of
|
||||
the system kernel, tools and utilities will ensure that your system is not
|
||||
|
@ -5220,19 +5220,19 @@ details on keeping an up-to-date server, see <XRef
|
|||
LinkEnd="update-redhat">, as well as <XRef
|
||||
LinkEnd="keeping-up-to-date">.</Para></ListItem>
|
||||
|
||||
<ListItem><Para><bf>Shadow passwords:</bf> You should definitely be using
|
||||
<ListItem><Para><emphasis>Shadow passwords:</emphasis> You should definitely be using
|
||||
Shadow passwords; switching to this password format is
|
||||
<Emphasis>easy</Emphasis>! For details, see <XRef
|
||||
LinkEnd="shadow-file-formats">.</Para></ListItem>
|
||||
|
||||
<ListItem><Para><bf>Smart password management:</bf> Make sure passwords,
|
||||
<ListItem><Para><emphasis>Smart password management:</emphasis> Make sure passwords,
|
||||
<Emphasis>especially</Emphasis> for users you are providing with shell
|
||||
access, are strong and changed often. Also, if you use multiple servers,
|
||||
resist the temptation to use the same password for all of them (otherwise,
|
||||
if a cracker breaks into one server using a discovered password, he or she
|
||||
can break into them all).</Para></ListItem>
|
||||
|
||||
<ListItem><Para><bf>Use secure shell (ssh):</bf> Switch to using ``ssh''
|
||||
<ListItem><Para><emphasis>Use secure shell (ssh):</emphasis> Switch to using ``ssh''
|
||||
instead of ``telnet''. Telnet is insecure for two reasons: One, sessions
|
||||
are unencrypted, which means everything, including username and passwords,
|
||||
are transmitted as clear text. Second, an open telnet port is one of the
|
||||
|
@ -5310,7 +5310,7 @@ servers and one insecure one is a waste of time,
|
|||
<Emphasis>especially</Emphasis> if you are foolish enough to use the same
|
||||
password for more than one server.</Para></Note></ListItem>
|
||||
|
||||
<ListItem><Para><bf>Restrict access to external services:</bf> Next, you
|
||||
<ListItem><Para><emphasis>Restrict access to external services:</emphasis> Next, you
|
||||
should edit the ``<Literal>/etc/hosts.allow</Literal>'' as well as the
|
||||
``<Literal><Filename>/etc/hosts.deny</Filename></Literal>'' file to
|
||||
restrict access to services to external hosts. Here is an example of how
|
||||
|
@ -5339,7 +5339,7 @@ in.ftpd: ALL
|
|||
|
||||
</ListItem>
|
||||
|
||||
<ListItem><Para><bf>Turn off and uninstall unneeded services:</bf> Edit
|
||||
<ListItem><Para><emphasis>Turn off and uninstall unneeded services:</emphasis> Edit
|
||||
your ``<Literal><Filename>/etc/inetd.conf</Filename></Literal>'' file,
|
||||
and disable (ie. comment out using a ``<Literal>#</Literal>'' character)
|
||||
any services that are not needed (if you're using ssh as recommended
|
||||
|
@ -5348,7 +5348,7 @@ done so, as root type ``<Literal>/etc/rc.d/init.d/inet
|
|||
restart</Literal>'' to restart the inetd daemon with the
|
||||
changes.</Para></ListItem>
|
||||
|
||||
<ListItem><Para><bf>Install a security detection system:</bf> Consider
|
||||
<ListItem><Para><emphasis>Install a security detection system:</emphasis> Consider
|
||||
installing security programs such as ``Tripwire'' (see <ULink
|
||||
URL="http://www.tripwiresecurity.com/">
|
||||
http://www.tripwiresecurity.com/</ULink>) which can detect intrusions, and
|
||||
|
@ -5356,7 +5356,7 @@ http://www.tripwiresecurity.com/</ULink>) which can detect intrusions, and
|
|||
http://www.psionic.com/abacus/</ULink>) which can help prevent
|
||||
them.</Para></ListItem>
|
||||
|
||||
<ListItem><Para><bf>Due diligence:</bf> Keeping your eye on your system, performing
|
||||
<ListItem><Para><emphasis>Due diligence:</emphasis> Keeping your eye on your system, performing
|
||||
random security audits (which can be as simple as checking for suspicious
|
||||
entries in the password files, examining your process list, and checking
|
||||
your log files for suspicious entries) can go a long way towards keeping
|
||||
|
|
|
@ -36,12 +36,30 @@ UUCP connection. <xref linkend = "x-087-2-appendix.brewery.subsidiary"> shows th
|
|||
|
||||
<figure id="X-087-2-appendix.brewery.diagram">
|
||||
<title>The Virtual Brewery and Virtual Winery subnets</title>
|
||||
<graphic fileref="lag2_aa01.jpg"></graphic>
|
||||
<!-- <graphic fileref="lag2_aa01.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_aa01.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_aa01.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<figure id="X-087-2-appendix.brewery.subsidiary">
|
||||
<title>The Virtual Brewery Network</title>
|
||||
<graphic fileref="lag2_aa02.jpg"></graphic>
|
||||
<!-- <graphic fileref="lag2_aa02.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_aa02.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_aa02.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<sect1><title>Connecting the Virtual Subsidiary Network</title>
|
||||
|
|
|
@ -60,7 +60,16 @@ end only.
|
|||
|
||||
<figure id="X-087-2-cable.plip.diagram">
|
||||
<title>Parallel PLIP cable</title>
|
||||
<graphic fileref="lag2_ab01.jpg"></graphic>
|
||||
<!-- <graphic fileref="lag2_ab01.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_ab01.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_ab01.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>
|
||||
|
@ -74,7 +83,16 @@ end only.
|
|||
|
||||
<figure id="X-087-2-cable.nullmodem.diagram">
|
||||
<title>Serial NULL-Modem cable</title>
|
||||
<graphic fileref="lag2_ab02.jpg"></graphic>
|
||||
<!-- <graphic fileref="lag2_ab02.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_ab02.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_ab02.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>
|
||||
|
|
|
@ -564,7 +564,16 @@ linkend="X-087-2-intro.fig.ip-flow">.
|
|||
|
||||
<figure id="X-087-2-intro.fig.ip-flow">
|
||||
<title>The three steps of sending a datagram from erdos to quark</title>
|
||||
<graphic fileref="lag2_0101.jpg"></graphic>
|
||||
<!-- <graphic fileref="lag2_0101.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0101.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0101.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>
|
||||
|
|
|
@ -445,7 +445,16 @@ subnetting.
|
|||
|
||||
<figure id="X-087-2-issues.fig.subnet">
|
||||
<title>Subnetting a class B network</title>
|
||||
<graphic fileref="lag2_0201.jpg"></graphic>
|
||||
<!-- <graphic fileref="lag2_0201.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0201.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0201.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>
|
||||
|
@ -488,7 +497,16 @@ time are shown with both addresses.
|
|||
|
||||
<figure id="X-087-2-issues.fig.ip">
|
||||
<title>A part of the net topology at Groucho Marx University</title>
|
||||
<graphic fileref="lag2_0202.jpg"></graphic>
|
||||
<!-- <graphic fileref="lag2_0202.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0202.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0202.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>
|
||||
|
|
|
@ -152,7 +152,16 @@ between the hardware, device drivers, and interfaces.
|
|||
|
||||
<figure id="X-087-2-hardware.fig.drivers">
|
||||
<title>The relationship between drivers, interfaces, and hardware</title>
|
||||
<graphic fileref="lag2_0301.jpg"></graphic>
|
||||
<!-- <graphic fileref="lag2_0301.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0301.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0301.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>
|
||||
|
|
|
@ -732,7 +732,16 @@ last component is the root domain.
|
|||
|
||||
<figure id="X-087-2-resolv.fig.dns">
|
||||
<title>A part of the domain namespace</title>
|
||||
<graphic fileref="lag2_0601.jpg"></graphic>
|
||||
<!-- <graphic fileref="lag2_0601.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0601.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0601.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>
|
||||
|
@ -915,7 +924,19 @@ present its query for <systemitem role="sitename">erdos</systemitem> to one
|
|||
of these, which will finally recognize the name as belonging to its zone,
|
||||
and return the corresponding IP address.
|
||||
|
||||
<graphic fileref="OREILLY.BIND.DIAGRAM"></graphic>
|
||||
<!-- <graphic fileref="OREILLY.BIND.DIAGRAM"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/image-missing.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/image-missing.eps" format="eps">
|
||||
</imageobject>
|
||||
<textobject>
|
||||
<phrase>Missing image of OREILLY.BIND.DIAGRAM</phrase>
|
||||
</textobject>
|
||||
</mediaobject>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
|
|
|
@ -222,7 +222,16 @@ common firewall configurations.</para>
|
|||
|
||||
<figure id="X-087-2-firewall.design.graphic" float=1>
|
||||
<title>The two major classes of firewall design</title>
|
||||
<graphic fileref="lag2_0901.jpg"></graphic>
|
||||
<!-- <graphic fileref="lag2_0901.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0901.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0901.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>
|
||||
|
@ -488,8 +497,16 @@ processes IP datagrams. The basic steps, shown in <xref linkend="X-087-2-firewal
|
|||
|
||||
<figure id="X-087-2-firewall.methods.graphic" float=1>
|
||||
<title>The stages of IP datagram processing</title>
|
||||
<graphic fileref="lag2_0902.jpg">
|
||||
</graphic>
|
||||
<!-- <graphic fileref="lag2_0902.jpg"> </graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0902.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0902.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<itemizedlist>
|
||||
|
@ -852,7 +869,16 @@ default. The differences are illustrated in <xref linkend="X-087-2-firewall.ftp.
|
|||
|
||||
<figure id="X-087-2-firewall.ftp.graphic" float=1>
|
||||
<title>FTP server modes</title>
|
||||
<graphic fileref="lag2_0903.jpg"></graphic>
|
||||
<!-- <graphic fileref="lag2_0903.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0903.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0903.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>
|
||||
|
@ -1800,7 +1826,16 @@ another accounting rule. They will produce the following Firewall Chains shown i
|
|||
|
||||
<figure id="X-087-2-firewall.ipchains" float=0>
|
||||
<title>A simple IP chain ruleset</title>
|
||||
<graphic fileref="lag2_0904.jpg"></graphic>
|
||||
<!-- <graphic fileref="lag2_0904.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0904.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0904.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>
|
||||
|
@ -1818,7 +1853,16 @@ flow through the rules.
|
|||
|
||||
<figure id="X-087-2-firewall.ipchains.udp" float=0>
|
||||
<title>The sequence of rules tested for a received UDP datagram</title>
|
||||
<graphic fileref="lag2_0905.jpg"></graphic>
|
||||
<!-- <graphic fileref="lag2_0905.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0905.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0905.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>
|
||||
|
@ -1841,7 +1885,16 @@ in <xref linkend="X-087-2-firewall.ipchains.tcp.ssh">.
|
|||
|
||||
<figure id="X-087-2-firewall.ipchains.tcp.ssh" float=0>
|
||||
<title>The rules flow for a received TCP datagram for ssh</title>
|
||||
<graphic fileref="lag2_0906.jpg"></graphic>
|
||||
<!-- <graphic fileref="lag2_0906.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0906.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0906.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>
|
||||
|
@ -1867,7 +1920,16 @@ specifically, as shown in <xref linkend="X-087-2-firewall.ipchains.tcp.other">.
|
|||
|
||||
<figure id="X-087-2-firewall.ipchains.tcp.other" float=0>
|
||||
<title>The rules flow for a received TCP datagram for telnet</title>
|
||||
<graphic fileref="lag2_0907.jpg"></graphic>
|
||||
<!-- <graphic fileref="lag2_0907.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0907.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0907.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>
|
||||
|
@ -2141,7 +2203,16 @@ alone offers a huge simplification of many firewall configurations.
|
|||
|
||||
<figure id="X-087-2-firewall.routing.ipchains" float=1>
|
||||
<title>Datagram processing chain in IP chains</title>
|
||||
<graphic fileref="lag2_0908.jpg"></graphic>
|
||||
<!-- <graphic fileref="lag2_0908.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0908.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0908.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>
|
||||
|
@ -2178,7 +2249,16 @@ serve to simplify the design of firewall configurations immensely.
|
|||
|
||||
<figure id="X-087-2-firewall.routing.netfilter" float=1>
|
||||
<title>Datagram processing chain in netfilter</title>
|
||||
<graphic fileref="lag2_0909.jpg"></graphic>
|
||||
<!-- <graphic fileref="lag2_0909.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0909.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_0909.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>
|
||||
|
|
|
@ -74,7 +74,16 @@ A simple example is illustrated in <xref linkend="X-087-2-masquerade.net">.
|
|||
|
||||
<figure id="X-087-2-masquerade.net" float=0>
|
||||
<title>A typical IP masquerade configuration</title>
|
||||
<graphic fileref="lag2_1101.jpg"></graphic>
|
||||
<!-- <graphic fileref="lag2_1101.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_1101.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_1101.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>
|
||||
|
|
|
@ -684,8 +684,17 @@ that network if they've discovered this server from the SAP broadcasts.
|
|||
</para>
|
||||
|
||||
<figure id="X-087-2-ipx.internal.network" float=0>
|
||||
<title>IPX internal network</title> <graphic
|
||||
fileref="lag2_1501.jpg"></graphic>
|
||||
<title>IPX internal network</title>
|
||||
<!-- <graphic fileref="lag2_1501.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_1501.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_1501.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>
|
||||
|
|
|
@ -605,7 +605,16 @@ configuration files.
|
|||
|
||||
<figure id="X-087-2-uucp.fig.files">
|
||||
<title>Interaction of Taylor UUCP configuration files</title>
|
||||
<graphic fileref="lag2_1601.jpg"></graphic>
|
||||
<!-- <graphic fileref="lag2_1601.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_1601.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_1601.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
</sect2>
|
||||
|
|
|
@ -178,7 +178,16 @@ shown in <xref linkend="X-087-2-news.fig.article-flow">.
|
|||
|
||||
<figure id="X-087-2-news.fig.article-flow">
|
||||
<title>Usenet newsflow through Groucho Marx University</title>
|
||||
<graphic fileref="lag2_2001.jpg"></graphic>
|
||||
<!-- <graphic fileref="lag2_2001.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_2001.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_2001.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>
|
||||
|
|
|
@ -149,7 +149,16 @@ enabled.
|
|||
|
||||
<figure id="X-087-2-cnews.fig.flow">
|
||||
<title>News flow through relaynews</title>
|
||||
<graphic fileref="lag2_2101.jpg"></graphic>
|
||||
<!-- <graphic fileref="lag2_2101.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_2101.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_2101.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
</sect1>
|
||||
|
|
|
@ -80,7 +80,16 @@ attention, we will come back to this a little later.
|
|||
|
||||
<figure id="X-087-2-inn.inn.architecture">
|
||||
<title>INN architecture (simplified for clarity)</title>
|
||||
<graphic fileref="lag2_2301.jpg"></graphic>
|
||||
<!-- <graphic fileref="lag2_2301.jpg"></graphic> -->
|
||||
<!-- 2016-01-28; MAB, TLDP -->
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_2301.jpg" format="jpg">
|
||||
</imageobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lag2_2301.eps" format="eps">
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
|
||||
<para>
|
||||
|
|
After Width: | Height: | Size: 8.1 KiB |
After Width: | Height: | Size: 26 KiB |
Before Width: | Height: | Size: 8.5 KiB After Width: | Height: | Size: 8.5 KiB |
Before Width: | Height: | Size: 6.9 KiB After Width: | Height: | Size: 6.9 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
Before Width: | Height: | Size: 8.8 KiB After Width: | Height: | Size: 8.8 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 9.2 KiB After Width: | Height: | Size: 9.2 KiB |
Before Width: | Height: | Size: 7.0 KiB After Width: | Height: | Size: 7.0 KiB |
Before Width: | Height: | Size: 7.8 KiB After Width: | Height: | Size: 7.8 KiB |
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
Before Width: | Height: | Size: 8.3 KiB After Width: | Height: | Size: 8.3 KiB |
Before Width: | Height: | Size: 8.8 KiB After Width: | Height: | Size: 8.8 KiB |
Before Width: | Height: | Size: 8.8 KiB After Width: | Height: | Size: 8.8 KiB |
Before Width: | Height: | Size: 9.3 KiB After Width: | Height: | Size: 9.3 KiB |
Before Width: | Height: | Size: 9.1 KiB After Width: | Height: | Size: 9.1 KiB |
Before Width: | Height: | Size: 8.6 KiB After Width: | Height: | Size: 8.6 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 8.6 KiB After Width: | Height: | Size: 8.6 KiB |
Before Width: | Height: | Size: 8.6 KiB After Width: | Height: | Size: 8.6 KiB |
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 5.5 KiB After Width: | Height: | Size: 5.5 KiB |
Before Width: | Height: | Size: 9.5 KiB After Width: | Height: | Size: 9.5 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 9.7 KiB After Width: | Height: | Size: 9.7 KiB |
|
@ -28,7 +28,7 @@
|
|||
<!ENTITY appb SYSTEM "appb.sgm">
|
||||
<!ENTITY appc SYSTEM "appc.sgm">
|
||||
<!ENTITY appd SYSTEM "appd.sgm">
|
||||
<!ENTITY doc-index SYSTEM "index.sgml">
|
||||
<!ENTITY doc-index SYSTEM "doc-index.sgml">
|
||||
]>
|
||||
<book id="LNAG">
|
||||
<title>Linux Network Administrators Guide</title>
|
||||
|
|
|
@ -1,12 +1,13 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1" standalone='no'?>
|
||||
<!DOCTYPE article PUBLIC '-//OASIS//DTD DocBook XML V4.1.2//EN'>
|
||||
<!DOCTYPE article PUBLIC '-//OASIS//DTD DocBook XML V4.1.2//EN'
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" []>
|
||||
|
||||
<book><?dbhtml filename="coverpage.html"?>
|
||||
|
||||
|
||||
<bookinfo>
|
||||
<mediaobject>
|
||||
<imageobject><imagedata fileref="./Annimals/Chapter3.gif" format="GIF"/></imageobject>
|
||||
<imageobject><imagedata fileref="./resources/resources/Annimals/Chapter3.gif" format="GIF"/></imageobject>
|
||||
<textobject><phrase>Wolf</phrase></textobject>
|
||||
</mediaobject>
|
||||
<mediaobject><imageobject><imagedata fileref="./images/OpenNA-NewLogo-Penguin.gif" format="GIF"/></imageobject>
|
||||
|
@ -249,7 +250,7 @@
|
|||
<partintro>
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="./Annimals/Chapter12.gif" format="GIF" align="center"/>
|
||||
<imagedata fileref="./resources/Annimals/Chapter12.gif" format="GIF" align="center"/>
|
||||
</imageobject>
|
||||
<textobject><phrase>Owl</phrase></textobject>
|
||||
</mediaobject>
|
||||
|
@ -564,7 +565,7 @@
|
|||
<partintro>
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="./Annimals/Chapter7-8.gif" format="GIF" align="center"/>
|
||||
<imagedata fileref="./resources/Annimals/Chapter7-8.gif" format="GIF" align="center"/>
|
||||
</imageobject>
|
||||
<textobject><phrase>Turtle!</phrase></textobject>
|
||||
</mediaobject>
|
||||
|
@ -3146,7 +3147,7 @@
|
|||
</simplelist>
|
||||
</para>
|
||||
</section>
|
||||
<section><?dbhtml filename="chap4sec26"?>
|
||||
<section><?dbhtml filename="./resources/chap4sec26"?>
|
||||
<title>Verify,Cross-check</title>
|
||||
<para>
|
||||
After we have uninstalled all the software that must be uninstalled after the installation of our Linux server see <link linkend="ch3sc3.1-1">Software that must be uninstalled</link>
|
||||
|
@ -3535,7 +3536,7 @@
|
|||
<partintro>
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="./Annimals/Chapter15.gif" format="GIF" align="center"/>
|
||||
<imagedata fileref="./resources/Annimals/Chapter15.gif" format="GIF" align="center"/>
|
||||
</imageobject>
|
||||
<textobject><phrase>Bat</phrase></textobject>
|
||||
</mediaobject>
|
||||
|
@ -8018,7 +8019,7 @@
|
|||
<partintro>
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="./Annimals/Chapter10.gif" format="GIF" align="center"/>
|
||||
<imagedata fileref="./resources/Annimals/Chapter10.gif" format="GIF" align="center"/>
|
||||
</imageobject>
|
||||
<textobject><phrase>PIG</phrase></textobject>
|
||||
</mediaobject>
|
||||
|
@ -11346,7 +11347,7 @@
|
|||
<partintro>
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="./Annimals/Chapter21.gif" format="GIF" align="center"/>
|
||||
<imagedata fileref="./resources/Annimals/Chapter21.gif" format="GIF" align="center"/>
|
||||
</imageobject>
|
||||
<textobject><phrase>Spoonbill</phrase></textobject>
|
||||
</mediaobject>
|
||||
|
@ -12903,7 +12904,7 @@
|
|||
<partintro>
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="./Annimals/Chapter16.gif" format="GIF" align="center"/>
|
||||
<imagedata fileref="./resources/Annimals/Chapter16.gif" format="GIF" align="center"/>
|
||||
</imageobject>
|
||||
<textobject><phrase>Two ducks!</phrase></textobject>
|
||||
</mediaobject>
|
||||
|
@ -20680,7 +20681,14 @@ drwxr-xr-x 2 harrypotter harrypotter 4096 Jun 8 13:00 pam.d/
|
|||
<section>
|
||||
<title>Securing <acronym>IMAP</acronym>/<acronym>POP</acronym></title>
|
||||
|
||||
<qandaset defaultlabel="none">
|
||||
<!--
|
||||
xsltproc-20903 and docbook-xsl-stylesheets-1.78.1+svn9743 manage to
|
||||
generate FO that confuses xmlgraphics-fop-1.1; but commenting
|
||||
out just this one attribute makes it possible to build the
|
||||
entire document
|
||||
-->
|
||||
<!-- <qandaset defaultlabel="none"> -->
|
||||
<qandaset>
|
||||
<qandaentry><question><para>
|
||||
Do you really need <acronym>IMAP</acronym>/<acronym>POP</acronym> service?
|
||||
</para></question><answer><para>
|
||||
|
@ -32226,7 +32234,7 @@ Require only if you are not using the <parameter class="option">--enable-ls</par
|
|||
<partintro>
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="./Annimals/Chapter19-20.gif" format="GIF" align="center"/>
|
||||
<imagedata fileref="./resources/Annimals/Chapter19-20.gif" format="GIF" align="center"/>
|
||||
</imageobject>
|
||||
<textobject><phrase>hen, cock!</phrase></textobject>
|
||||
</mediaobject>
|
||||
|
@ -33389,7 +33397,7 @@ BRU Homepage: <link linkend="prtinxfp26">http://www.bru.com/</link>
|
|||
<row valign="middle"><entry align="center">
|
||||
<inlinemediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="./Annimals/Chapter17.gif" format="GIF"/>
|
||||
<imagedata fileref="./resources/Annimals/Chapter17.gif" format="GIF"/>
|
||||
|
||||
</imageobject>
|
||||
<textobject><phrase>Elephant</phrase></textobject>
|
||||
|
|
After Width: | Height: | Size: 29 KiB |
After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 77 KiB |
After Width: | Height: | Size: 18 KiB |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 8.1 KiB |
After Width: | Height: | Size: 32 KiB |
After Width: | Height: | Size: 27 KiB |
After Width: | Height: | Size: 10 KiB |
After Width: | Height: | Size: 8.7 KiB |
After Width: | Height: | Size: 18 KiB |
After Width: | Height: | Size: 20 KiB |
After Width: | Height: | Size: 9.2 KiB |
After Width: | Height: | Size: 6.6 KiB |