Fultus Links
Fultus: Corporate Web Site
Fultus Writers Network
Fultus Book Superstore
Fultus: Corporate Web Site
Fultus Writers Network
Fultus Book Superstore
FreeBSD Documentation
Fultus Book Superstore - FreeBSD
Books
List of eBooks
A project model for the FreeBSD Project
Table of Contents
Foreword
Overview
Definitions
Table of Contents
Activity
Process
Hat
Outcome
FreeBSD
Organisational structure
Methodology model
Development model
Release branches
Model summary
Hats
General Hats
Official Hats
Process dependent hats
Processes
Adding new and removing old committers
Adding/Removing an official CVSup Mirror
Committing code
Core election
Development of new features
Maintenance
Problem reporting
Reacting to misbehaviour
Release engineering
Tools
Concurrent Versions System (CVS)
CVSup
GNATS
Mailman
Perforce
Pretty Good Privacy
Secure Shell
Sub-projects
The Ports Subproject
The FreeBSD Documentation Project
References
FreeBSD FAQ
Copyright
Table of Contents
Introduction
Documentation and Support
Installation
Hardware Compatibility
General
Memory
Architectures and Processors
Hard Drives, Tape Drives, and CD and DVD Drives
Keyboards and Mice
Networking and Serial Devices
Sound Devices
Other Hardware
Troubleshooting
Commercial Applications
User Applications
Kernel Configuration
Disks, File Systems, and Boot Loaders
System Administration
The X Window System and Virtual Consoles
Networking
Security
PPP
Serial Communications
Miscellaneous Questions
The FreeBSD Funnies
Advanced Topics
Acknowledgments
Bibliography
FreeBSD Handbook
Copyright
Table of Contents
Preface
Getting Started
Introduction
Synopsis
Welcome to FreeBSD!
About the FreeBSD Project
Installing FreeBSD
Synopsis
Hardware Requirements
Pre-installation Tasks
Starting the Installation
Introducing Sysinstall
Allocating Disk Space
Choosing What to Install
Choosing Your Installation Media
Committing to the Installation
Post-installation
Troubleshooting
Advanced Installation Guide
Preparing Your Own Installation Media
UNIX Basics
Synopsis
Virtual Consoles and Terminals
Permissions
Directory Structure
Disk Organization
Mounting and Unmounting File Systems
Processes
Daemons, Signals, and Killing Processes
Shells
Text Editors
Devices and Device Nodes
Binary Formats
For More Information
Installing Applications: Packages and Ports
Synopsis
Overview of Software Installation
Finding Your Application
Using the Packages System
Using the Ports Collection
Post-installation Activities
Dealing with Broken Ports
The X Window System
Synopsis
Understanding X
Installing X11
X11 Configuration
Using Fonts in X11
The X Display Manager
Desktop Environments
Common Tasks
Desktop Applications
Synopsis
Browsers
Productivity
Document Viewers
Finance
Summary
Multimedia
Synopsis
Setting Up the Sound Card
MP3 Audio
Video Playback
Setting Up TV Cards
Image Scanners
Configuring the FreeBSD Kernel
Synopsis
Why Build a Custom Kernel?
Finding the System Hardware
Kernel Drivers, Subsystems, and Modules
Building and Installing a Custom Kernel
The Configuration File
If Something Goes Wrong
Printing
Synopsis
Introduction
Basic Setup
Advanced Printer Setup
Using Printers
Alternatives to the Standard Spooler
Troubleshooting
Linux Binary Compatibility
Synopsis
Installation
Installing Mathematica
Installing Maple
Installing MATLAB
Installing Oracle
Installing SAP R/3
Advanced Topics
System Administration
Configuration and Tuning
Synopsis
Initial Configuration
Core Configuration
Application Configuration
Starting Services
Configuring the cron Utility
Using rc under FreeBSD
Setting Up Network Interface Cards
Virtual Hosts
Configuration Files
Tuning with sysctl
Tuning Disks
Tuning Kernel Limits
Adding Swap Space
Power and Resource Management
Using and Debugging FreeBSD ACPI
The FreeBSD Booting Process
Synopsis
The Booting Problem
The Boot Manager and Boot Stages
Kernel Interaction During Boot
Device Hints
Init: Process Control Initialization
Shutdown Sequence
Users and Basic Account Management
Synopsis
Introduction
The Superuser Account
System Accounts
User Accounts
Modifying Accounts
Limiting Users
Groups
Security
Synopsis
Introduction
Securing FreeBSD
DES, Blowfish, MD5, and Crypt
One-time Passwords
TCP Wrappers
KerberosIV
Kerberos5
OpenSSL
VPN over IPsec
OpenSSH
File System Access Control Lists
Monitoring Third Party Security Issues
FreeBSD Security Advisories
Process Accounting
Jails
Synopsis
Terms Related to Jails
Introduction
Creating and Controlling Jails
Fine Tuning and Administration
Application of Jails
Mandatory Access Control
Synopsis
Key Terms in this Chapter
Explanation of MAC
Understanding MAC Labels
Planning the Security Configuration
Module Configuration
The MAC seeotheruids Module
The MAC bsdextended Module
The MAC ifoff Module
The MAC portacl Module
The MAC partition Module
The MAC Multi-Level Security Module
The MAC Biba Module
The MAC LOMAC Module
Nagios in a MAC Jail
User Lock Down
Troubleshooting the MAC Framework
Security Event Auditing
Synopsis
Key Terms in this Chapter
Installing Audit Support
Audit Configuration
Administering the Audit Subsystem
Storage
Synopsis
Device Names
Adding Disks
RAID
USB Storage Devices
Creating and Using Optical Media (CDs)
Creating and Using Optical Media (DVDs)
Creating and Using Floppy Disks
Creating and Using Data Tapes
Backups to Floppies
Backup Strategies
Backup Basics
Network, Memory, and File-Backed File Systems
File System Snapshots
File System Quotas
Encrypting Disk Partitions
Encrypting Swap Space
GEOM: Modular Disk Transformation Framework
Synopsis
GEOM Introduction
RAID0 - Striping
RAID1 - Mirroring
GEOM Gate Network Devices
Labeling Disk Devices
UFS Journaling Through GEOM
File Systems Support
Synopsis
The Z File System
The Vinum Volume Manager
Synopsis
Disks Are Too Small
Access Bottlenecks
Data Integrity
Vinum Objects
Some Examples
Object Naming
Configuring Vinum
Using Vinum for the Root Filesystem
Virtualization
Synopsis
FreeBSD as a Guest OS
FreeBSD as a Host OS
Localization - I18N/L10N Usage and Setup
Synopsis
The Basics
Using Localization
Compiling I18N Programs
Localizing FreeBSD to Specific Languages
Updating and Upgrading FreeBSD
Synopsis
FreeBSD Update
Portsnap: A Ports Collection Update Tool
Updating the Documentation Set
Tracking a Development Branch
Synchronizing Your Source
Rebuilding world
Tracking for Multiple Machines
DTrace
Synopsis
Implementation Differences
Enabling DTrace Support
Using DTrace
The D Language
Network Communication
Serial Communications
Synopsis
Introduction
Terminals
Dial-in Service
Dial-out Service
Setting Up the Serial Console
PPP and SLIP
Synopsis
Using User PPP
Using Kernel PPP
Troubleshooting PPP Connections
Using PPP over Ethernet (PPPoE)
Using PPP over ATM (PPPoA)
Using SLIP
Electronic Mail
Synopsis
Using Electronic Mail
sendmail Configuration
Changing Your Mail Transfer Agent
Troubleshooting
Advanced Topics
SMTP with UUCP
Setting Up to Send Only
Using Mail with a Dialup Connection
SMTP Authentication
Mail User Agents
Using fetchmail
Using procmail
Network Servers
Synopsis
The inetd Super-Server
Network File System (NFS)
Network Information System (NIS/YP)
Automatic Network Configuration (DHCP)
Domain Name System (DNS)
Apache HTTP Server
File Transfer Protocol (FTP)
File and Print Services for Microsoft Windows clients (Samba)
Clock Synchronization with NTP
Remote Host Logging with syslogd
Firewalls
Introduction
Firewall Concepts
Firewall Packages
The OpenBSD Packet Filter (PF) and ALTQ
The IPFILTER (IPF) Firewall
IPFW
Advanced Networking
Synopsis
Gateways and Routes
Wireless Networking
Bluetooth
Bridging
Link Aggregation and Failover
Diskless Operation
ISDN
Network Address Translation
Parallel Line IP (PLIP)
IPv6
Asynchronous Transfer Mode (ATM)
Common Access Redundancy Protocol (CARP)
Appendices
A. Obtaining FreeBSD
CDROM and DVD Publishers
FTP Sites
BitTorrent
Anonymous CVS
Using CTM
Using CVSup
CVS Tags
AFS Sites
rsync Sites
B. Bibliography
Books & Magazines Specific to FreeBSD
Users' Guides
Administrators' Guides
Programmers' Guides
Operating System Internals
Security Reference
Hardware Reference
UNIX History
Magazines and Journals
C. Resources on the Internet
Mailing Lists
Usenet Newsgroups
World Wide Web Servers
Email Addresses
D. PGP Keys
Officers
Core Team Members
Developers
FreeBSD Glossary
Index
Colophon
FreeBSD Developer's Handbook
Copyright
Table of Contents
Basics
Introduction
Developing on FreeBSD
The BSD Vision
Architectural Guidelines
The Layout of /usr/src
Programming Tools
Synopsis
Introduction
Introduction to Programming
Compiling with cc
Make
Debugging
Using Emacs as a Development Environment
Further Reading
Secure Programming
Synopsis
Secure Design Methodology
Buffer Overflows
SetUID issues
Limiting your program's environment
Trust
Race Conditions
Localization and Internationalization - L10N and I18N
Programming I18N Compliant Applications
Source Tree Guidelines and Policies
MAINTAINER on Makefiles
Contributed Software
Encumbered Files
Shared Libraries
Regression and Performance Testing
Micro Benchmark Checklist
Interprocess Communication
Sockets
Synopsis
Networking and Diversity
Protocols
The Sockets Model
Essential Socket Functions
Helper Functions
Concurrent Servers
IPv6 Internals
IPv6/IPsec Implementation
Kernel
Building and Installing a FreeBSD Kernel
Building a Kernel the Traditional Way
Building a Kernel the New Way
Kernel Debugging
Obtaining a Kernel Crash Dump
Debugging a Kernel Crash Dump with kgdb
Debugging a Crash Dump with DDD
Post-Mortem Analysis of a Dump
On-Line Kernel Debugging Using DDB
On-Line Kernel Debugging Using Remote GDB
Debugging Loadable Modules Using GDB
Debugging a Console Driver
Debugging Deadlocks
Glossary of Kernel Options for Debugging
Architectures
x86 Assembly Language Programming
Synopsis
The Tools
System Calls
Return Values
Creating Portable Code
Our First Program
Writing UNIX Filters
Buffered Input and Output
Command Line Arguments
UNIX Environment
Working with Files
One-Pointed Mind
Using the FPU
Caveats
Acknowledgements
Appendices
Bibliography
Index
FreeBSD Architecture Handbook
Copyright
Table of Contents
Kernel
Table of Contents
Bootstrapping and kernel initialization
Table of Contents
Synopsis
Overview
BIOS POST
boot0 stage
boot2 stage
loader stage
Kernel initialization
Locking Notes
Table of Contents
Mutexes
Shared Exclusive Locks
Atomically Protected Variables
Kernel Objects
Table of Contents
Terminology
Kobj Operation
Using Kobj
The Jail Subsystem
Table of Contents
Architecture
Restrictions
The Sysinit Framework
Table of Contents
Terminology
SYSINIT Operation
Using SYSINIT
The TrustedBSD MAC Framework
Table of Contents
MAC Documentation Copyright
Synopsis
Introduction
Policy Background
MAC Framework Kernel Architecture
MAC Policy Architecture
MAC Policy Entry Point Reference
Userland Architecture
Conclusion
Virtual Memory System
Table of Contents
Management of physical memory--vm_page_t
The unified buffer cache--vm_object_t
Filesystem I/O--struct buf
Mapping Page Tables--vm_map_t, vm_entry_t
KVM Memory Mapping
Tuning the FreeBSD VM system
SMPng Design Document
Table of Contents
Introduction
Basic Tools and Locking Fundamentals
General Architecture and Design
Specific Locking Strategies
Implementation Notes
Miscellaneous Topics
Glossary
Device Drivers
Table of Contents
Writing FreeBSD Device Drivers
Table of Contents
Introduction
Dynamic Kernel Linker Facility - KLD
Accessing a device driver
Character Devices
Block Devices (Are Gone)
Network Drivers
ISA device drivers
Table of Contents
Synopsis
Basic information
Device_t pointer
Configuration file and the order of identifying and probing during auto-configuration
Resources
Bus memory mapping
DMA
xxx_isa_probe
xxx_isa_attach
xxx_isa_detach
xxx_isa_shutdown
xxx_intr
PCI Devices
Table of Contents
Probe and Attach
Bus Resources
Common Access Method SCSI Controllers
Table of Contents
Synopsis
General architecture
Polling
Asynchronous Events
Interrupts
Errors Summary
Timeout Handling
USB Devices
Table of Contents
Introduction
Host Controllers
USB Device Information
Device probe and attach
USB Drivers Protocol Information
Newbus
Table of Contents
Device Drivers
Overview of Newbus
Newbus API
Sound subsystem
Table of Contents
Introduction
Files
Probing, attaching, etc.
Interfaces
PC Card
Adding a device
Appendices
Bibliography
Index
FreeBSD Porter's Handbook
Copyright
Table of Contents
Introduction
Making a port yourself
Quick Porting
Writing the Makefile
Writing the description files
pkg-descr
pkg-plist
Creating the checksum file
Testing the port
Checking your port with portlint
Submitting the port
Slow Porting
How things work
Getting the original sources
Modifying the port
Patching
Configuring
Handling user input
Configuring the Makefile
The original source
Naming
PORTNAME and PORTVERSION
PORTREVISION and PORTEPOCH
PKGNAMEPREFIX and PKGNAMESUFFIX
LATEST_LINK
Package Naming Conventions
Categorization
CATEGORIES
Current list of categories
Choosing the right category
Proposing a new category
Proposing reorganizing all the categories
The distribution files
DISTVERSION/DISTNAME
MASTER_SITES
EXTRACT_SUFX
DISTFILES
EXTRACT_ONLY
PATCHFILES
Multiple distribution files or patches from different sites and subdirectories (MASTER_SITES:n)
DIST_SUBDIR
ALWAYS_KEEP_DISTFILES
MAINTAINER
COMMENT
Dependencies
LIB_DEPENDS
RUN_DEPENDS
BUILD_DEPENDS
FETCH_DEPENDS
EXTRACT_DEPENDS
PATCH_DEPENDS
USE_*
Minimal version of a dependency
Notes on dependencies
Circular dependencies are fatal
MASTERDIR
Manpages
Info files
Makefile Options
Knobs
OPTIONS
Feature auto-activation
Specifying the working directory
WRKSRC
NO_WRKSUBDIR
CONFLICTS
Installing files
INSTALL_* macros
Stripping Binaries
Installing a whole tree of files
Install additional documentation
Subdirectories under PREFIX
Special considerations
Shared Libraries
Ports with distribution restrictions
NO_PACKAGE
NO_CDROM
NOFETCHFILES
RESTRICTED
RESTRICTED_FILES
Building mechanisms
make, gmake, and imake
configure script
Using scons
Using GNU autotools
Introduction
libtool
libltdl
autoconf and autoheader
automake and aclocal
Using GNU gettext
Basic usage
Optional usage
Handling message catalog directories
Using perl
Using X11
X.Org components
Ports that require Motif
X11 fonts
Getting fake DISPLAY using Xvfb
Desktop entries
Using GNOME
Using KDE
Variable definitions
Ports that require Qt
Component selection (Qt 4.x only)
Additional considerations
Using Java
Variable definitions
Building with Ant
Best practices
Web applications, Apache and PHP
Apache
Web applications
PHP
PEAR modules
Using Python
Using Tcl/Tk
Using Emacs
Using Ruby
Using SDL
Using wxWidgets
Introduction
Version selection
Component selection
Unicode
Detecting installed versions
Defined variables
Processing in bsd.port.pre.mk
Additional configure arguments
Using Lua
Introduction
Version selection
Component selection
Detecting installed versions
Defined variables
Processing in bsd.port.pre.mk
Using Xfce
Using databases
Starting and stopping services (rc scripts)
Stopping services at deinstall
Advanced pkg-plist practices
Changing pkg-plist based on make variables
Empty directories
Cleaning up empty directories
Creating empty directories
Configuration files
Dynamic vs. static package list
Automated package list creation
The pkg-* files
pkg-message
pkg-install
pkg-deinstall
pkg-req
Changing the names of pkg-* files
Making use of SUB_FILES and SUB_LIST
Testing your port
Running make describe
Portlint
Port Tools
PREFIX and DESTDIR
Tinderbox
Upgrading
Ports security
Why security is so important
Fixing security vulnerabilities
Keeping the community informed
The VuXML database
A short introduction to VuXML
Testing your changes to the VuXML database
Dos and Don'ts
Introduction
WRKDIR
WRKDIRPREFIX
Differentiating operating systems and OS versions
__FreeBSD_version values
Writing something after bsd.port.mk
Use the exec statement in wrapper scripts
UIDs and GIDs
Do things rationally
Respect both CC and CXX
Respect CFLAGS
Threading libraries
Feedback
README.html
Marking a port not installable with BROKEN, FORBIDDEN, or IGNORE
Variables
Implementation Notes
Marking a port for removal with DEPRECATED or EXPIRATION_DATE
Avoid use of the .error construct
Usage of sysctl
Rerolling distfiles
Necessary workarounds
Miscellanea
A Sample Makefile
Keeping Up
FreshPorts
The Web Interface to the Source Repository
The FreeBSD Ports Mailing List
The FreeBSD Port Building Cluster on pointyhat.FreeBSD.org
The FreeBSD Port Distfile Survey
The FreeBSD Ports Monitoring System
PMake -- A Tutorial
Copyright
Table of Contents
Introduction
The Basics of PMake
Dependency Lines
Shell Commands
Variables
Local Variables
Command-line Variables
Global Variables
Environment Variables
Comments
Parallelism
Writing and Debugging a Makefile
Invoking PMake
Summary
Short-cuts and Other Nice Things
Transformation Rules
Including Other Makefiles
Saving Commands
Target Attributes
Special Targets
Modifying Variable Expansion
More Exercises
PMake for Gods
Search Paths
Archives and Libraries
On the Condition...
A Shell is a Shell is a Shell
Compatibility
DEFCON 3 - Variable Expansion
DEFCON 2 - The Number of the Beast
DEFCON 1 - Imitation is the Not the Highest Form of Flattery
The Way Things Work
Answers to Exercises
Glossary of Jargon
Chapter 2 of "The Design and Implementation of the 4.4BSD Operating System"
Copyright
Table of Contents
Design Overview of 4.4BSD
Table of Contents
BSD Facilities and the Kernel
The Kernel
Kernel Organization
Kernel Services
Process Management
Signals
Process Groups and Sessions
Memory Management
BSD Memory-Management Design Decisions
Memory Management Inside the Kernel
I/O System
Descriptors and I/O
Descriptor Management
Devices
Socket IPC
Scatter/Gather I/O
Multiple Filesystem Support
Filesystems
Filestores
Network Filesystem
Terminals
Interprocess Communication
Network Communication
Network Implementation
System Operation
References
Chapter 8 of "The FreeBSD Corporate Networker's Guide"
Copyright
Table of Contents
Printserving
Table of Contents
PC printing history
Printer communication protocols and hardware
ASCII Printing Protocol
PostScript Printing Protocol
HPPCL Printing Protocol
Network Printing Basics
Printservers
Printspools
Setting up LPR on Windows clients
Windows 3.1/Windows for Workgroups 3.11
Installation of the Novell TCP/IP Winsock client
Installation of the LPR client on 16-bit Windows with a Winsock installed
Installation of LPR client on Windows 95/98
Installation of LPR client on Windows NT
Printing PostScript and DOS command files
Checking PostScript Printer capabilities
Setting up LPR/LPD on FreeBSD
Creating the spools
Additional spool capabilities
Printing to hardware print server boxes or remote print servers
Filters
Printer Accounting
Microsoft Networking Client printing with Samba
Client access issues
Printer entries in configuration files
Browsing output
Printing between NT Server/NetWare and FreeBSD.
Printing from UNIX
lp
lpr
Managing the UNIX Print Queue
Advanced Printing Topics
Ghostscript
a2ps filter
Miscellaneous
FreeBSD Documentation Project Primer for New Contributors
Copyright
Table of Contents
Preface
Shell Prompts
Typographic Conventions
Notes, Tips, Important Information, Warnings, and Examples
Acknowledgments
Overview
The FreeBSD Documentation Set
Before You Start
Quick Start
Tools
Mandatory Tools
Software
DTDs and Entities
Stylesheets
Optional Tools
Software
SGML Primer
Overview
Elements, Tags, and Attributes
For You to Do...
The DOCTYPE Declaration
Formal Public Identifiers (FPIs)
Alternatives to FPIs
Escaping Back to SGML
Comments
For You to Do...
Entities
General Entities
Parameter Entities
For You to Do...
Using Entities to Include Files
Using General Entities to Include Files
Using Parameter Entities to Include Files
For You to Do...
Marked Sections
Marked Section Keywords
For You to Do...
Conclusion
SGML Markup
HTML
Formal Public Identifier (FPI)
Sectional Elements
Block Elements
In-line Elements
Links
DocBook
FreeBSD Extensions
Formal Public Identifier (FPI)
Document Structure
Block Elements
In-line Elements
Images
Links
* Stylesheets
* DSSSL
CSS
The DocBook Documents
Structuring Documents Under doc/
The Top Level, doc/
The lang.encoding/Directories
Document Specific Information
The Handbook
The Documentation Build Process
The FreeBSD Documentation Build Toolset
Understanding Makefiles in the Documentation tree
Subdirectory Makefiles
Documentation Makefiles
FreeBSD Documentation Project make includes
doc.project.mk
doc.subdir.mk
The Website
Preparation
Simple Method: Using csup
Advanced Method: Maintaining a Local CVS doc/www Repository
Build the Web Pages from Scratch
Install the Web Pages into Your Web Server
Environment Variables
Translations
Writing Style
Style Guide
Letter Case
Acronyms
Indentation
Tag Style
White Space Changes
Non-Breaking Space
Word List
Using sgml-mode with Emacs
See Also
The FreeBSD Documentation Project
SGML
HTML
DocBook
The Linux Documentation Project
A.Examples
A.1 DocBook book
A.2 DocBook <article>
A.3 Producing Formatted Output
A.3.1 Using Jade
PPP - Pedantic PPP Primer
Table of Contents
Overview
Building the Local Area Network
Typical Network Topology
Assumptions about the Local Area Network
FreeBSD System Configuration
Table of Contents
Verifying the FreeBSD Host Name
Configuring the FreeBSD Host Name
Verifying the Ethernet Interface Configuration
Configuring your Ethernet Interface
Enabling Packet Forwarding
Creating the List of other LAN Hosts(/etc/hosts)
Testing the FreeBSD system
Verifying the operation of the loopback device
Verifying the operation of the Ethernet Device
Configuring the PPP Dial-Out Connection
Table of Contents
Backing up the original PPP configuration files
Create your own PPP configuration files
The '/etc/ppp/ppp.conf' file
The '/etc/ppp/ppp.linkup' file
IP Aliasing
Configuring Windows Systems
Configuring Windows 95
Configuring Windows NT
Configuring Windows for Workgroups
Testing the Network
Table of Contents
Testing the Dial-Up link
Testing the Ethernet LAN
Exercises for the Interested Student
Table of Contents
Creating a mini-DNS system
The /etc/namedb/named.boot file
The /etc/namedb/mydomain.db file
Starting the DNS Server
Playing with PPP filters
FreeBSD Installation Guide
Table of Contents
Home
0.1 Table of Contents
1.0 Limits of Liability and Disclaimer of Warranty
1.1 Copyright
1.1 Contact
Getting Started
1.2 Synopsis
1.3 Installer Prerequisites
1.4 Introduction
2.0 Preparing PC for FBSD
2.1 Incremental Install Method
2.2 Minimum Hardware Requirements
Installing
3.0 Installing FBSD
3.1 ISO CD images
3.2 Using MS/Windows to get ISO CD images
3.3 PC BIOS
3.4 Starting Award BIOS setup utility
3.5 First time changes to PC BIOS
3.6 Loading FBSD to the Hard drive
Post Install
4.0 Post Install Configuration
4.1 Root Account
4.2 Gracefully Stopping your System
4.3 Navigating the File System Directory Tree
4.4 Command Line Path Prefix
4.5 How to use the ee editor
4.6 User Login Announcement
4.7 Command Line History
4.8 Keyboard F1 - F8 Keys
4.9 FBSD Logs
4.10 Enabling clear tmp directory
4.11 Using mouse copy/paste function
4.11.1 Enabling 2 button mouse copy/paste function
4.11.3 Testing mouse copy/paste function
4.11.4 Further customizing the mouse arrow pointer
4.12 Scroll lock history
4.13 Assigning a Host name to your FBSD system.
4.14 Hosts File
4.15 Screen Saver
4.16 Basic EMAIL Information
4.17 Time Zone setup
Internet Access
5.0 Accessing the Internet
5.1 Cable TV access to the Internet
5.1.1 Installing a PCI NIC
5.1.2 Configuring a cable modem Internet connection
5.1.3 Test your cable modem connectivity
5.2 Products offered by the public telephone company
5.2.1 Analog voice dial up service to your ISP
5.2.2 Analog voice ISDN service
5.2.3 Digital DSL service
5.2.4 Digital leased lines
5.3 Enabling voice phone Modems
5.3.1 PCI Modem Types
5.3.2 How to determine if FBSD found my modem at boot time
5.3.4 External serial modems
5.3.5 Determining if your external serial modem is connected to FBSD
5.3.6 Internal PCI modem
5.3.7 PCI Modem found as <unknown card>
5.3.8 PCI Modem found and moved to sio4
5.3.9 Determining if your internal PCI modem is connected to FBSD
5.5 Internet access protocols
5.5.0 User PPP
5.5.1 User PPP NAT function
5.5.2 Configuring User PPP for modem dial out to ISP
5.5.3 Test User PPP dialisp
5.5.4 Enable Dial ISP at boot time
5.5.5 User PPP Filters
5.6 Configuring User PPP to accept inbound modem calls
5.6.1 Inbound ppp.conf statements
5.6.2 Configure Incoming services
5.6.3 Configure Modem to answer call using HAYES Commands
5.6.4 How the Incoming call process works
5.6.5 Testing Incoming call function
5.7 User PPP Callback Feature
5.7.1 Callback Feature on Incoming Calls
5.7.2 Summary of how Incoming callback works
5.7.3 ISP callback Feature
5.7.4 Summary of how ISP callback works
5.8 PPPoE ppp.conf statements for DSL connection
5.9 User PPP Logs
5.10 Stray irq 7 messages
Network Security
6.0 Network Security
6.0.1 Firewalls
6.0.2 Firewall Rule Set Types
6.0.3 Firewall Software Applications
6.1 IPFILTER (IPF) Firewall
6.1.1 Enabling IPF
6.1.2 Kernel options.
6.1.3 RC.CONF Options
6.2 IPF COMMAND
6.3 IPFSTAT Command
6.4 IPMON Command
6.4.1 IPMON Logging
6.4.2 Format of Logged Messages
6.5 Building Rule Script
6.6.IPF Rule Sets
6.6.1 Rule Syntax
6.6.2 Stateful Filtering
6.7 Inclusive Rule set Example
6.8 NAT Explanation
6.8.1 IPNAT Command
6.8.2 NAT Rules
6.8.3 How NAT works
6.8.4 Enabling Nat
6.8.5 Nat for very Large Lan
6.8.6 Directing traffic to Lan Servers
6.8.7 FTP Special Nat Handling
6.8.8 FTP Filter rules
6.9 IPFIREWALL (IPFW) Firewall
6.9.1 Enabling IPFW
6.9.2 Kernel Options
6.9.3 RC.CONF Options
6.9.4 IPFW Command
6.9.4 IPFW Rule Sets
6.9.5 Rule Syntax
6.9.6 Stateful Rule Option
6.9.7 Logging Firewall Messages
6.9.8 Building Rule Script
6.9.9 Stateful Rule Set
6.9.10 Example Inclusive Rule Set
6.10 Stateful + NATD Rule Set
6.11 OpenBSD's Packet Filter Firewall
6.11.1 Enabling PF
6.11.2 Kernel Options
6.11.3 RC.CONF Statements
6.11.4 PFCTL Command
6.11.5 PF Rule Sets
6.11.6 Rule Syntax
6.11.7 Stateful Filtering
6.11.8 Nat Explanation
6.11.9 Logging
6.12 Inclusive Rule set Example
6.13 Defending Against Attacks
6.13.1 Know Who Your Attacker is
6.13.2 Stopping Login Attacks
6.13.3 Stopping Web Server Attacks
6.14 Example SSH setup
6.14.1 Example Environment Description
6.14.2 Host Setup
6.14.3 FBSD-client Setup
6.14.4 Using Midnight Commander for SFTP
6.14.5 Win-client Setup
6.14.6 Putty Setup
6.14.7 WinSC3 Setup
6.14.8 Fraudulent SSH Login Attempts
Local Area Network
7.0 Setting up Local Area Network (LAN)
7.1 Home User LANs
7.2 Topography of a LAN
7.3 Installing the LAN
7.4 LAN private IP address
7.5 Manually Configuring the Gateway
7.6 Manually configuring FBSD LAN PCs
7.7 Manually configuring MS/Windows LAN PCs
DHCP Server
8.0 DHCP (Dynamic Host Configuration Protocol)
8.1 What function does DHCP perform?
8.2 DHCP Server
8.3 How DHCP Works
8.4 DHCP Configuration Instructions
8.5 Testing the DHCPD Daemon
8.6 FBSD as a DHCP Client
System Security
9.0 FBSD System Security
9.1 Network packet Security options
9.1.1 Sysctl.conf Security Knobs
9.1.2 Secure rc.conf
9.1.3 Secure Kernel Source
9.2 Security Paranoia
9.3 Highest Level of Security Paranoia
9.3.1 Jail facility
9.3.2 rc.conf securelevel option
9.3.3 Encrypting Disk Partitions
FBSD Basics
10.0 FBSD Basics
10.1 Introduction to the manual documentation
10.2 Basic FBSD Commands you will need to know
10.3 Controlling what messages go to what syslog files
10.3.1 LOG rotation and archiving
10.4 Setting System Date and Time
10.5 Capturing screen content to file
10.6 Cron Scheduling Application & System Management Reports
10.7 Using the Floppy drive
10.7.1 To format a FBSD file system floppy disk
10.7.2 To create /a floppy mount point
10.7.3 To mount floppy drive
10.7.4 To test floppy drive
10.7.5 To remove floppy from drive
10.7.6 To mount MS/Windows formatted floppy disk
10.7.7 Easier way to mount MS/Windows floppies
10.7.8 To test auto floppy drive mount
10.8 Mounting Cdrom
10.9 User Account Admin
10.9.1 Configure the pw Command
10.9.2 Examples of pw command usage
10.9.3 pw command embedded in a script
10.9.4 passwd command
10.9.5 chpass command
10.9.6 Super User
10.10 Permissions
10.10.1 Managing Permissions
10.10 2 Change file permissions
10.10.3 Change file owner
10.10.4 Change file group
10.11 Managing your configuration changes
10.11.1 Personal Scripts
10.11.2 Script to Backup /custom to floppy
10.11.3 Script to Restore floppy to /custom
10.12 Burncd and .iso files
10.12.1 ISO FTP download script
10.12.2 Burncd command
10.13 Technical Support
10.14 Boot Time Splash Screen
10.14.1 Splash Screen Function
10.14.2 Enabling the Splash Screen Function
10.14.3 Sample Splash Screen
Email Services
11.0 Email Service
11.1 Commercial, non-Commercial sendmail Users
11.2 Configure Sendmail to send enail through your ISP
11.3 POP3 Email Server
11.4 Qpopper Application
11.4.1 Qpopper Installation Instructions
11.5 Configuring Microsoft Outlook for FBSD mail service
11.6 Fetchmail / Getting your ISP mail to FBSD
11.6.1 Fetchmail Installation Instructions
11.6.2 Testing Fetchmail
11.6.3 Boot Time Enable
11.8 Email Reading
11.8.1 Using the mail command
11.8.2 Checking your mail
11.8.3 Creating / sending your mail
11.8.4 Mbox File
11.8.5 Mail sub-commands
11.8.6 Replying to or creating new mail
11.9 Email Vacation Auto Responder
11.9.1 How vacation process works
11.9.2 .vacation msg file
11.9.3 .vacation.db File
11.9.4 .forward File
11.9.5 SYNTAX of the command
11.9.6 Procedure to Activate
Ports & Packages
12.0 Ports & Packages
12.1 Determining what to install
12.2 Finding the Application Download Name
12.3 Package Benefits
12.4 Ports Benefits
12.5 Using the Package Collection
12.5.1 Alternate Access Method to package Collection
12.6 Using the Port Collection
12.6.1 Downloading make files for single port
12.6.2 Fetch Port Config Files Script
12.7 Ports/Package Install History Database Commands
12.8 Port Make Commands
Kernel Customizing
13.0 Kernel Customizing
13.1 Kernel Compile Steps
13.2 Managing Multiple Kernels
13.4 Replacing /kernel with saved /kernel
13.5 Fix System Boot problems
13.6 Single user mode
13.7 Forgot Root password
13.8 New Kernel won't boot
FTP & Telnet
14.0 FTP & Telnet
14.1 Inetd, FBSD's Super server
14.2 Configure Insecure FTP
14.3 Anonymous FTP Server
14.4 Quotas
14.5 Telnet
14.6 Secure FTP & Telnet
Masquerading as Commercial User
15.0 Masquerading as a Commercial User
15.2 Verifying ports 25 & 80 are open
15.3 Masquerading Using ZoneEdit
15.4 Configurating ZoneEdit
Articles
List of eBooks
The Roadmap for 5-STABLE
Table of Contents
Introduction and Background
Major issues
Requirements for 5-STABLE
Post RELENG_5 direction
Why you should use a BSD style license for your Open Source Project
Table of Contents
Introduction
Very Brief Open Source History
Unix from a BSD Licensing Perspective
The Current State of FreeBSD and BSD Licenses
The origins of the GPL
The origins of Linux and the LGPL
Open Source licenses and the Orphaning Problem
What a license cannot do
GPL Advantages and Disadvantages
BSD Advantages
Specific Recommendations for using a BSD license
Conclusion
Addenda
Building Products with FreeBSD
Table of Contents
Introduction
FreeBSD as a set of building blocks
Collaborating with FreeBSD
Conclusion
Bibliography
Argentina.com : A Case Study
Table of Contents
Overview
The Challenge
The FreeBSD solution
Results
Integration of Check Point VPN-1/Firewall-1 and FreeBSD IPsec
Table of Contents
Prerequisites
Firewall-1 Network Object Configuration
Firewall-1 VPN Rule Configuration
FreeBSD VPN Policy Configuration
FreeBSD Racoon Configuration
Starting the VPN
References
Committer's Guide
Table of Contents
Administrative Details
Commit Bit Types
CVS Operations
Conventions and Traditions
Preferred License for New Files
Developer Relations
GNATS
Who's Who
SSH Quick-Start Guide
The FreeBSD Committers' Big List of Rules
Support for Multiple Architectures
Ports Specific FAQ
Perks of the Job
Miscellaneous Questions
Console Server Tutorial
Table of Contents
The Problem
Possible Solutions
Our Solution
Setting Up The Server
Cabling
On Sun Systems And Break
Using a Serial Console on FreeBSD
Security Implications
On Conserver Versions
Links
Manual Pages
Contributing to FreeBSD
Table of Contents
What Is Needed
How to Contribute
Contributing to the FreeBSD Ports Collection
Table of Contents
Introduction
What you can do to help
Creating a new port
Adopting an unmaintained port
The challenge for port maintainers
Finding and fixing a broken port
When to call it quits
Resources for ports maintainers and contributors
Contributors to FreeBSD
Table of Contents
Donors Gallery
The FreeBSD Core Team
Other FreeBSD Teams
Miscellaneous Hats
FreeBSD Release Engineering Teams
The FreeBSD Developers
The FreeBSD Documentation Project
Who is Responsible for What
Core Team Alumni
Development Team Alumni
Derived Software Contributors
Additional FreeBSD Contributors
386BSD Patch Kit Patch Contributors
Setting up a CVS repository - the FreeBSD way
Introduction
First setup
FreeBSD specific setup
CVSup Advanced Points
Table of Contents
Preface
Introduction
A useful python script: cvsupchk
Examples of more advanced source management
Dialup firewalling with FreeBSD
Table of Contents
Preface
Kernel Options
Changing /etc/rc.conf to load the firewall
Enable PPP's network address translation
The rule set for the firewall
Questions
Diskless X Server: a how to guide
Table of Contents
Creating the boot floppy (On the diskless system)
Getting the network boot programs (On the server)
Determine which program to run (On the diskless system)
Booting across the network
Allowing systems to boot across the network (On the server)
The Euro symbol on FreeBSD
The Euro in a nutshell
A general remark
The console
Modifying X11
Open problems
Explaining BSD
What is BSD?
What, a real UNIX?
Why is BSD not better known?
Comparing BSD and Linux
FreeBSD From Scratch
Introduction
Why would I (not) want FreeBSD From Scratch?
Prerequisites
Stage One: System Installation
Stage Two: Ports Installation
Stage Three
Limitations
The Files
Filtering Bridges
Why use a filtering bridge?
How to Install
Final Preparation
Enabling the Bridge
Configuring The Firewall
Contributors
Fonts and FreeBSD
Introduction
Basic terminology
What font formats can I use?
Setting a virtual console to 80x60 line mode
Using type 1 fonts with X11
Using type 1 fonts with Ghostscript
Using type 1 fonts with Groff
Converting TrueType fonts to a groff/postscript format for groff
Can TrueType fonts be used with other programs?
Where can additional fonts be obtained?
Additional questions
Formatting Media For Use With FreeBSD
Introduction & Definitions
Formatting Disks in Dedicated Mode
Making Compatibility Mode Disks
Other Disk Operations
Credits
How to get best results from the FreeBSD-questions mailing list
Introduction
How to subscribe to FreeBSD-questions
How to unsubscribe from FreeBSD-questions
Should I ask -questions or -hackers?
Before submitting a question
How to submit a question
How to follow up to a question
How to answer a question
Working with Hats
Working with Hats
Mirroring FreeBSD
Contact Information
Requirements for FreeBSD mirrors
How to mirror FreeBSD
Where to mirror from
Official Mirrors
Some statistics from mirror sites
Independent Verification of IPsec Functionality in FreeBSD
The Problem
The Solution
The Experiment
Caveat
IPsec---Definition
Installing IPsec
src/sys/i386/conf/KERNELNAME
Maurer's Universal Statistical Test (for block size=8 bits)
Java and Jakarta Tomcat on FreeBSD
Introduction
The Java- Environment
Jakarta Tomcat Setup
Reference
FreeBSD on Laptops
Xorg
XFree86O
Modems
PCMCIA (PC Card) devices
Power management
FreeBSD: An Open Source Alternative to Linux
Table of Contents
Introduction
FreeBSD Features
Security
Support
Advantages to Choosing FreeBSD
Conclusion
Addenda
Frequently Asked Questions About The FreeBSD Mailing Lists
Introduction
Mailing List Etiquette
Recurring Topics On The Mailing Lists
What Is A 'Bikeshed'?
Acknowledgments
An MH Primer
Introduction
Reading Mail
Folders and Mail Searching
Sending Mail
Installing and Using FreeBSD With Other Operating Systems
Overview
Overview of Boot Managers
A Typical Installation
Special Considerations
Examples
Other Sources of Help
Technical Details
Introduction to NanoBSD
Table of Contents
Introduction to NanoBSD
NanoBSD Howto
For People New to Both FreeBSD and Unix
Logging in and Getting Out
Adding A User with Root Privileges
Looking Around
Getting Help and Information
Editing Text
Printing Files from DOS
Other Useful Commands
Next Steps
Your Working Environment
Other
Comments Welcome
Perforce in FreeBSD Development
Table of Contents
Introduction
Getting Started
Clients
Syncing
Branches
Integrations
Submit
Editing
Changes, Descriptions, and History
Diffs
Adding and Removing Files
Working with diffs
Renaming files
Interactions between FreeBSD CVS and Perforce
Offline Operation
Notes for Google Summer of Code
Pluggable Authentication Modules
Table of Contents
Introduction
Terms and conventions
PAM Essentials
PAM Configuration
FreeBSD PAM Modules
PAM Application Programming
PAM Module Programming
A. Sample PAM Application
B. Sample PAM Module
C. Sample PAM Conversation Function
Further Reading
Package Building Procedures
Copyright
Table of Contents
Introduction and Conventions
Build Client Management
Chroot Build Environment Setup
Starting the Build
Anatomy of a Build
Interrupting a Build
Monitoring the Build
Release Builds
Uploading Packages
Experimental Patches Builds
Problem Report Handling Guidelines
Table of Contents
Introduction
Problem Report Life-cycle
Problem Report State
Types of Problem Reports
Further Reading
Writing FreeBSD Problem Reports
Table of Contents
Introduction
When to submit a problem report
Preparations
Writing the problem report
Follow-up
If you are having problems
Further Reading
FreeBSD Jumpstart Guide
Introduction
Server Configuration
Bootstrap Setup
Install Setup
Custom Post-Install Package
Practical rc.d scripting in BSD
Table of Contents
Introduction
Outlining the task
A dummy script
A configurable dummy script
Startup and shutdown of a simple daemon
Startup and shutdown of an advanced daemon
Connecting a script to the rc.d framework
Further reading
Using Greylist with FreeBSD
Basic Configuration
FreeBSD Release Engineering
Table of Contents
Introduction
Release Process
Release Building
Distribution
Extensibility
Lessons Learned from FreeBSD 4.4
Future Directions
Acknowledgements
References
FreeBSD Release Engineering for Third Party Software Packages
Building packages from the Ports Collection
The Package Split
Serial and UART Tutorial
The UART: What it is and how it works
Configuring the sio driver
Configuring the cy driver
Configuring the si driver
FreeBSD and Solid State Devices
Table of Contents
Solid State Disk Devices
Kernel Options
rc.diskless and Read-Only Filesystems
Building a File System From Scratch
Building a kern.flp Installation Floppy with the fla Driver
System Strategies for Small and Read Only Environments
Storage Devices
Using ESDI hard disks
What is SCSI?
* Disk/tape controllers
Hard drives
Tape drives
CDROM drives
Choosing the FreeBSD Version That Is Right For You
Table of Contents
Background
Release Scheduling In The Past
Release Scheduling Goals Going Forward
How Do These Factors Affect My Decision?
Conclusion
Bootstrapping Vinum: A Foundation for Reliable Servers
Introduction
Bootstrapping Phases
Where to Go from Here?
Failure Scenarios
bootvinum Perl Script
Manual Vinum Bootstrapping
Acknowledgements
Design elements of the FreeBSD VM system
Introduction
VM Objects
SWAP Layers
When to free a page
Pre-Faulting and Zeroing Optimizations
Page Table Optimizations
Page Coloring
Conclusion
Bonus QA session by Allen Briggs briggs@ninthwonder.com
ZIP Drives
ZIP Drive Basics
Parallel ZIP: The vpo Driver
Mounting ZIP disks
Writing a GEOM Class
Table of Contents
Introduction
Preliminaries
On FreeBSD kernel programming
On GEOM programming
Creating a Software Testing Environment Using FreeBSD
Table of Contents
Overview
The Challenge
The FreeBSD Solution
Conclusion
FreeBSD Releases
FreeBSD 7.1-RELEASE Release Notes
Introduction
What's New
Security Advisories
Kernel Changes
Boot Loader Changes
Hardware Support
Network Protocols
Disks and Storage
File Systems
Userland Changes
/etc/rc.d Scripts
Contributed Software
Release Engineering and Integration
Upgrading from previous releases of FreeBSD
FreeBSD 7.1-RELEASE Hardware Notes
Introduction
Supported Processors and System Boards
amd64
i386
ia64
pc98
powerpc
sparc64
Supported Devices
Disk Controllers
Ethernet Interfaces
Token Ring Interfaces
FDDI Interfaces
ATM Interfaces
Wireless Network Interfaces
Miscellaneous Networks
ISDN Interfaces
Serial Interfaces
Sound Devices
Camera and Video Capture Devices
USB Devices
IEEE 1394 (Firewire) Devices
Bluetooth Devices
Cryptographic Accelerators
Miscellaneous
FreeBSD 7.1-RELEASE Errata
Fultus Book Superstore - FreeBSD
Books
List of eBooks
A project model for the FreeBSD Project
Table of Contents
Foreword
Overview
Definitions
Table of Contents
Activity
Process
Hat
Outcome
FreeBSD
Organisational structure
Methodology model
Development model
Release branches
Model summary
Hats
General Hats
Official Hats
Process dependent hats
Processes
Adding new and removing old committers
Adding/Removing an official CVSup Mirror
Committing code
Core election
Development of new features
Maintenance
Problem reporting
Reacting to misbehaviour
Release engineering
Tools
Concurrent Versions System (CVS)
CVSup
GNATS
Mailman
Perforce
Pretty Good Privacy
Secure Shell
Sub-projects
The Ports Subproject
The FreeBSD Documentation Project
References
FreeBSD FAQ
Copyright
Table of Contents
Introduction
Documentation and Support
Installation
Hardware Compatibility
General
Memory
Architectures and Processors
Hard Drives, Tape Drives, and CD and DVD Drives
Keyboards and Mice
Networking and Serial Devices
Sound Devices
Other Hardware
Troubleshooting
Commercial Applications
User Applications
Kernel Configuration
Disks, File Systems, and Boot Loaders
System Administration
The X Window System and Virtual Consoles
Networking
Security
PPP
Serial Communications
Miscellaneous Questions
The FreeBSD Funnies
Advanced Topics
Acknowledgments
Bibliography
FreeBSD Handbook
Copyright
Table of Contents
Preface
Getting Started
Introduction
Synopsis
Welcome to FreeBSD!
About the FreeBSD Project
Installing FreeBSD
Synopsis
Hardware Requirements
Pre-installation Tasks
Starting the Installation
Introducing Sysinstall
Allocating Disk Space
Choosing What to Install
Choosing Your Installation Media
Committing to the Installation
Post-installation
Troubleshooting
Advanced Installation Guide
Preparing Your Own Installation Media
UNIX Basics
Synopsis
Virtual Consoles and Terminals
Permissions
Directory Structure
Disk Organization
Mounting and Unmounting File Systems
Processes
Daemons, Signals, and Killing Processes
Shells
Text Editors
Devices and Device Nodes
Binary Formats
For More Information
Installing Applications: Packages and Ports
Synopsis
Overview of Software Installation
Finding Your Application
Using the Packages System
Using the Ports Collection
Post-installation Activities
Dealing with Broken Ports
The X Window System
Synopsis
Understanding X
Installing X11
X11 Configuration
Using Fonts in X11
The X Display Manager
Desktop Environments
Common Tasks
Desktop Applications
Synopsis
Browsers
Productivity
Document Viewers
Finance
Summary
Multimedia
Synopsis
Setting Up the Sound Card
MP3 Audio
Video Playback
Setting Up TV Cards
Image Scanners
Configuring the FreeBSD Kernel
Synopsis
Why Build a Custom Kernel?
Finding the System Hardware
Kernel Drivers, Subsystems, and Modules
Building and Installing a Custom Kernel
The Configuration File
If Something Goes Wrong
Printing
Synopsis
Introduction
Basic Setup
Advanced Printer Setup
Using Printers
Alternatives to the Standard Spooler
Troubleshooting
Linux Binary Compatibility
Synopsis
Installation
Installing Mathematica
Installing Maple
Installing MATLAB
Installing Oracle
Installing SAP R/3
Advanced Topics
System Administration
Configuration and Tuning
Synopsis
Initial Configuration
Core Configuration
Application Configuration
Starting Services
Configuring the cron Utility
Using rc under FreeBSD
Setting Up Network Interface Cards
Virtual Hosts
Configuration Files
Tuning with sysctl
Tuning Disks
Tuning Kernel Limits
Adding Swap Space
Power and Resource Management
Using and Debugging FreeBSD ACPI
The FreeBSD Booting Process
Synopsis
The Booting Problem
The Boot Manager and Boot Stages
Kernel Interaction During Boot
Device Hints
Init: Process Control Initialization
Shutdown Sequence
Users and Basic Account Management
Synopsis
Introduction
The Superuser Account
System Accounts
User Accounts
Modifying Accounts
Limiting Users
Groups
Security
Synopsis
Introduction
Securing FreeBSD
DES, Blowfish, MD5, and Crypt
One-time Passwords
TCP Wrappers
KerberosIV
Kerberos5
OpenSSL
VPN over IPsec
OpenSSH
File System Access Control Lists
Monitoring Third Party Security Issues
FreeBSD Security Advisories
Process Accounting
Jails
Synopsis
Terms Related to Jails
Introduction
Creating and Controlling Jails
Fine Tuning and Administration
Application of Jails
Mandatory Access Control
Synopsis
Key Terms in this Chapter
Explanation of MAC
Understanding MAC Labels
Planning the Security Configuration
Module Configuration
The MAC seeotheruids Module
The MAC bsdextended Module
The MAC ifoff Module
The MAC portacl Module
The MAC partition Module
The MAC Multi-Level Security Module
The MAC Biba Module
The MAC LOMAC Module
Nagios in a MAC Jail
User Lock Down
Troubleshooting the MAC Framework
Security Event Auditing
Synopsis
Key Terms in this Chapter
Installing Audit Support
Audit Configuration
Administering the Audit Subsystem
Storage
Synopsis
Device Names
Adding Disks
RAID
USB Storage Devices
Creating and Using Optical Media (CDs)
Creating and Using Optical Media (DVDs)
Creating and Using Floppy Disks
Creating and Using Data Tapes
Backups to Floppies
Backup Strategies
Backup Basics
Network, Memory, and File-Backed File Systems
File System Snapshots
File System Quotas
Encrypting Disk Partitions
Encrypting Swap Space
GEOM: Modular Disk Transformation Framework
Synopsis
GEOM Introduction
RAID0 - Striping
RAID1 - Mirroring
GEOM Gate Network Devices
Labeling Disk Devices
UFS Journaling Through GEOM
File Systems Support
Synopsis
The Z File System
The Vinum Volume Manager
Synopsis
Disks Are Too Small
Access Bottlenecks
Data Integrity
Vinum Objects
Some Examples
Object Naming
Configuring Vinum
Using Vinum for the Root Filesystem
Virtualization
Synopsis
FreeBSD as a Guest OS
FreeBSD as a Host OS
Localization - I18N/L10N Usage and Setup
Synopsis
The Basics
Using Localization
Compiling I18N Programs
Localizing FreeBSD to Specific Languages
Updating and Upgrading FreeBSD
Synopsis
FreeBSD Update
Portsnap: A Ports Collection Update Tool
Updating the Documentation Set
Tracking a Development Branch
Synchronizing Your Source
Rebuilding world
Tracking for Multiple Machines
DTrace
Synopsis
Implementation Differences
Enabling DTrace Support
Using DTrace
The D Language
Network Communication
Serial Communications
Synopsis
Introduction
Terminals
Dial-in Service
Dial-out Service
Setting Up the Serial Console
PPP and SLIP
Synopsis
Using User PPP
Using Kernel PPP
Troubleshooting PPP Connections
Using PPP over Ethernet (PPPoE)
Using PPP over ATM (PPPoA)
Using SLIP
Electronic Mail
Synopsis
Using Electronic Mail
sendmail Configuration
Changing Your Mail Transfer Agent
Troubleshooting
Advanced Topics
SMTP with UUCP
Setting Up to Send Only
Using Mail with a Dialup Connection
SMTP Authentication
Mail User Agents
Using fetchmail
Using procmail
Network Servers
Synopsis
The inetd Super-Server
Network File System (NFS)
Network Information System (NIS/YP)
Automatic Network Configuration (DHCP)
Domain Name System (DNS)
Apache HTTP Server
File Transfer Protocol (FTP)
File and Print Services for Microsoft Windows clients (Samba)
Clock Synchronization with NTP
Remote Host Logging with syslogd
Firewalls
Introduction
Firewall Concepts
Firewall Packages
The OpenBSD Packet Filter (PF) and ALTQ
The IPFILTER (IPF) Firewall
IPFW
Advanced Networking
Synopsis
Gateways and Routes
Wireless Networking
Bluetooth
Bridging
Link Aggregation and Failover
Diskless Operation
ISDN
Network Address Translation
Parallel Line IP (PLIP)
IPv6
Asynchronous Transfer Mode (ATM)
Common Access Redundancy Protocol (CARP)
Appendices
A. Obtaining FreeBSD
CDROM and DVD Publishers
FTP Sites
BitTorrent
Anonymous CVS
Using CTM
Using CVSup
CVS Tags
AFS Sites
rsync Sites
B. Bibliography
Books & Magazines Specific to FreeBSD
Users' Guides
Administrators' Guides
Programmers' Guides
Operating System Internals
Security Reference
Hardware Reference
UNIX History
Magazines and Journals
C. Resources on the Internet
Mailing Lists
Usenet Newsgroups
World Wide Web Servers
Email Addresses
D. PGP Keys
Officers
Core Team Members
Developers
FreeBSD Glossary
Index
Colophon
FreeBSD Developer's Handbook
Copyright
Table of Contents
Basics
Introduction
Developing on FreeBSD
The BSD Vision
Architectural Guidelines
The Layout of /usr/src
Programming Tools
Synopsis
Introduction
Introduction to Programming
Compiling with cc
Make
Debugging
Using Emacs as a Development Environment
Further Reading
Secure Programming
Synopsis
Secure Design Methodology
Buffer Overflows
SetUID issues
Limiting your program's environment
Trust
Race Conditions
Localization and Internationalization - L10N and I18N
Programming I18N Compliant Applications
Source Tree Guidelines and Policies
MAINTAINER on Makefiles
Contributed Software
Encumbered Files
Shared Libraries
Regression and Performance Testing
Micro Benchmark Checklist
Interprocess Communication
Sockets
Synopsis
Networking and Diversity
Protocols
The Sockets Model
Essential Socket Functions
Helper Functions
Concurrent Servers
IPv6 Internals
IPv6/IPsec Implementation
Kernel
Building and Installing a FreeBSD Kernel
Building a Kernel the Traditional Way
Building a Kernel the New Way
Kernel Debugging
Obtaining a Kernel Crash Dump
Debugging a Kernel Crash Dump with kgdb
Debugging a Crash Dump with DDD
Post-Mortem Analysis of a Dump
On-Line Kernel Debugging Using DDB
On-Line Kernel Debugging Using Remote GDB
Debugging Loadable Modules Using GDB
Debugging a Console Driver
Debugging Deadlocks
Glossary of Kernel Options for Debugging
Architectures
x86 Assembly Language Programming
Synopsis
The Tools
System Calls
Return Values
Creating Portable Code
Our First Program
Writing UNIX Filters
Buffered Input and Output
Command Line Arguments
UNIX Environment
Working with Files
One-Pointed Mind
Using the FPU
Caveats
Acknowledgements
Appendices
Bibliography
Index
FreeBSD Architecture Handbook
Copyright
Table of Contents
Kernel
Table of Contents
Bootstrapping and kernel initialization
Table of Contents
Synopsis
Overview
BIOS POST
boot0 stage
boot2 stage
loader stage
Kernel initialization
Locking Notes
Table of Contents
Mutexes
Shared Exclusive Locks
Atomically Protected Variables
Kernel Objects
Table of Contents
Terminology
Kobj Operation
Using Kobj
The Jail Subsystem
Table of Contents
Architecture
Restrictions
The Sysinit Framework
Table of Contents
Terminology
SYSINIT Operation
Using SYSINIT
The TrustedBSD MAC Framework
Table of Contents
MAC Documentation Copyright
Synopsis
Introduction
Policy Background
MAC Framework Kernel Architecture
MAC Policy Architecture
MAC Policy Entry Point Reference
Userland Architecture
Conclusion
Virtual Memory System
Table of Contents
Management of physical memory--vm_page_t
The unified buffer cache--vm_object_t
Filesystem I/O--struct buf
Mapping Page Tables--vm_map_t, vm_entry_t
KVM Memory Mapping
Tuning the FreeBSD VM system
SMPng Design Document
Table of Contents
Introduction
Basic Tools and Locking Fundamentals
General Architecture and Design
Specific Locking Strategies
Implementation Notes
Miscellaneous Topics
Glossary
Device Drivers
Table of Contents
Writing FreeBSD Device Drivers
Table of Contents
Introduction
Dynamic Kernel Linker Facility - KLD
Accessing a device driver
Character Devices
Block Devices (Are Gone)
Network Drivers
ISA device drivers
Table of Contents
Synopsis
Basic information
Device_t pointer
Configuration file and the order of identifying and probing during auto-configuration
Resources
Bus memory mapping
DMA
xxx_isa_probe
xxx_isa_attach
xxx_isa_detach
xxx_isa_shutdown
xxx_intr
PCI Devices
Table of Contents
Probe and Attach
Bus Resources
Common Access Method SCSI Controllers
Table of Contents
Synopsis
General architecture
Polling
Asynchronous Events
Interrupts
Errors Summary
Timeout Handling
USB Devices
Table of Contents
Introduction
Host Controllers
USB Device Information
Device probe and attach
USB Drivers Protocol Information
Newbus
Table of Contents
Device Drivers
Overview of Newbus
Newbus API
Sound subsystem
Table of Contents
Introduction
Files
Probing, attaching, etc.
Interfaces
PC Card
Adding a device
Appendices
Bibliography
Index
FreeBSD Porter's Handbook
Copyright
Table of Contents
Introduction
Making a port yourself
Quick Porting
Writing the Makefile
Writing the description files
pkg-descr
pkg-plist
Creating the checksum file
Testing the port
Checking your port with portlint
Submitting the port
Slow Porting
How things work
Getting the original sources
Modifying the port
Patching
Configuring
Handling user input
Configuring the Makefile
The original source
Naming
PORTNAME and PORTVERSION
PORTREVISION and PORTEPOCH
PKGNAMEPREFIX and PKGNAMESUFFIX
LATEST_LINK
Package Naming Conventions
Categorization
CATEGORIES
Current list of categories
Choosing the right category
Proposing a new category
Proposing reorganizing all the categories
The distribution files
DISTVERSION/DISTNAME
MASTER_SITES
EXTRACT_SUFX
DISTFILES
EXTRACT_ONLY
PATCHFILES
Multiple distribution files or patches from different sites and subdirectories (MASTER_SITES:n)
DIST_SUBDIR
ALWAYS_KEEP_DISTFILES
MAINTAINER
COMMENT
Dependencies
LIB_DEPENDS
RUN_DEPENDS
BUILD_DEPENDS
FETCH_DEPENDS
EXTRACT_DEPENDS
PATCH_DEPENDS
USE_*
Minimal version of a dependency
Notes on dependencies
Circular dependencies are fatal
MASTERDIR
Manpages
Info files
Makefile Options
Knobs
OPTIONS
Feature auto-activation
Specifying the working directory
WRKSRC
NO_WRKSUBDIR
CONFLICTS
Installing files
INSTALL_* macros
Stripping Binaries
Installing a whole tree of files
Install additional documentation
Subdirectories under PREFIX
Special considerations
Shared Libraries
Ports with distribution restrictions
NO_PACKAGE
NO_CDROM
NOFETCHFILES
RESTRICTED
RESTRICTED_FILES
Building mechanisms
make, gmake, and imake
configure script
Using scons
Using GNU autotools
Introduction
libtool
libltdl
autoconf and autoheader
automake and aclocal
Using GNU gettext
Basic usage
Optional usage
Handling message catalog directories
Using perl
Using X11
X.Org components
Ports that require Motif
X11 fonts
Getting fake DISPLAY using Xvfb
Desktop entries
Using GNOME
Using KDE
Variable definitions
Ports that require Qt
Component selection (Qt 4.x only)
Additional considerations
Using Java
Variable definitions
Building with Ant
Best practices
Web applications, Apache and PHP
Apache
Web applications
PHP
PEAR modules
Using Python
Using Tcl/Tk
Using Emacs
Using Ruby
Using SDL
Using wxWidgets
Introduction
Version selection
Component selection
Unicode
Detecting installed versions
Defined variables
Processing in bsd.port.pre.mk
Additional configure arguments
Using Lua
Introduction
Version selection
Component selection
Detecting installed versions
Defined variables
Processing in bsd.port.pre.mk
Using Xfce
Using databases
Starting and stopping services (rc scripts)
Stopping services at deinstall
Advanced pkg-plist practices
Changing pkg-plist based on make variables
Empty directories
Cleaning up empty directories
Creating empty directories
Configuration files
Dynamic vs. static package list
Automated package list creation
The pkg-* files
pkg-message
pkg-install
pkg-deinstall
pkg-req
Changing the names of pkg-* files
Making use of SUB_FILES and SUB_LIST
Testing your port
Running make describe
Portlint
Port Tools
PREFIX and DESTDIR
Tinderbox
Upgrading
Ports security
Why security is so important
Fixing security vulnerabilities
Keeping the community informed
The VuXML database
A short introduction to VuXML
Testing your changes to the VuXML database
Dos and Don'ts
Introduction
WRKDIR
WRKDIRPREFIX
Differentiating operating systems and OS versions
__FreeBSD_version values
Writing something after bsd.port.mk
Use the exec statement in wrapper scripts
UIDs and GIDs
Do things rationally
Respect both CC and CXX
Respect CFLAGS
Threading libraries
Feedback
README.html
Marking a port not installable with BROKEN, FORBIDDEN, or IGNORE
Variables
Implementation Notes
Marking a port for removal with DEPRECATED or EXPIRATION_DATE
Avoid use of the .error construct
Usage of sysctl
Rerolling distfiles
Necessary workarounds
Miscellanea
A Sample Makefile
Keeping Up
FreshPorts
The Web Interface to the Source Repository
The FreeBSD Ports Mailing List
The FreeBSD Port Building Cluster on pointyhat.FreeBSD.org
The FreeBSD Port Distfile Survey
The FreeBSD Ports Monitoring System
PMake -- A Tutorial
Copyright
Table of Contents
Introduction
The Basics of PMake
Dependency Lines
Shell Commands
Variables
Local Variables
Command-line Variables
Global Variables
Environment Variables
Comments
Parallelism
Writing and Debugging a Makefile
Invoking PMake
Summary
Short-cuts and Other Nice Things
Transformation Rules
Including Other Makefiles
Saving Commands
Target Attributes
Special Targets
Modifying Variable Expansion
More Exercises
PMake for Gods
Search Paths
Archives and Libraries
On the Condition...
A Shell is a Shell is a Shell
Compatibility
DEFCON 3 - Variable Expansion
DEFCON 2 - The Number of the Beast
DEFCON 1 - Imitation is the Not the Highest Form of Flattery
The Way Things Work
Answers to Exercises
Glossary of Jargon
Chapter 2 of "The Design and Implementation of the 4.4BSD Operating System"
Copyright
Table of Contents
Design Overview of 4.4BSD
Table of Contents
BSD Facilities and the Kernel
The Kernel
Kernel Organization
Kernel Services
Process Management
Signals
Process Groups and Sessions
Memory Management
BSD Memory-Management Design Decisions
Memory Management Inside the Kernel
I/O System
Descriptors and I/O
Descriptor Management
Devices
Socket IPC
Scatter/Gather I/O
Multiple Filesystem Support
Filesystems
Filestores
Network Filesystem
Terminals
Interprocess Communication
Network Communication
Network Implementation
System Operation
References
Chapter 8 of "The FreeBSD Corporate Networker's Guide"
Copyright
Table of Contents
Printserving
Table of Contents
PC printing history
Printer communication protocols and hardware
ASCII Printing Protocol
PostScript Printing Protocol
HPPCL Printing Protocol
Network Printing Basics
Printservers
Printspools
Setting up LPR on Windows clients
Windows 3.1/Windows for Workgroups 3.11
Installation of the Novell TCP/IP Winsock client
Installation of the LPR client on 16-bit Windows with a Winsock installed
Installation of LPR client on Windows 95/98
Installation of LPR client on Windows NT
Printing PostScript and DOS command files
Checking PostScript Printer capabilities
Setting up LPR/LPD on FreeBSD
Creating the spools
Additional spool capabilities
Printing to hardware print server boxes or remote print servers
Filters
Printer Accounting
Microsoft Networking Client printing with Samba
Client access issues
Printer entries in configuration files
Browsing output
Printing between NT Server/NetWare and FreeBSD.
Printing from UNIX
lp
lpr
Managing the UNIX Print Queue
Advanced Printing Topics
Ghostscript
a2ps filter
Miscellaneous
FreeBSD Documentation Project Primer for New Contributors
Copyright
Table of Contents
Preface
Shell Prompts
Typographic Conventions
Notes, Tips, Important Information, Warnings, and Examples
Acknowledgments
Overview
The FreeBSD Documentation Set
Before You Start
Quick Start
Tools
Mandatory Tools
Software
DTDs and Entities
Stylesheets
Optional Tools
Software
SGML Primer
Overview
Elements, Tags, and Attributes
For You to Do...
The DOCTYPE Declaration
Formal Public Identifiers (FPIs)
Alternatives to FPIs
Escaping Back to SGML
Comments
For You to Do...
Entities
General Entities
Parameter Entities
For You to Do...
Using Entities to Include Files
Using General Entities to Include Files
Using Parameter Entities to Include Files
For You to Do...
Marked Sections
Marked Section Keywords
For You to Do...
Conclusion
SGML Markup
HTML
Formal Public Identifier (FPI)
Sectional Elements
Block Elements
In-line Elements
Links
DocBook
FreeBSD Extensions
Formal Public Identifier (FPI)
Document Structure
Block Elements
In-line Elements
Images
Links
* Stylesheets
* DSSSL
CSS
The DocBook Documents
Structuring Documents Under doc/
The Top Level, doc/
The lang.encoding/Directories
Document Specific Information
The Handbook
The Documentation Build Process
The FreeBSD Documentation Build Toolset
Understanding Makefiles in the Documentation tree
Subdirectory Makefiles
Documentation Makefiles
FreeBSD Documentation Project make includes
doc.project.mk
doc.subdir.mk
The Website
Preparation
Simple Method: Using csup
Advanced Method: Maintaining a Local CVS doc/www Repository
Build the Web Pages from Scratch
Install the Web Pages into Your Web Server
Environment Variables
Translations
Writing Style
Style Guide
Letter Case
Acronyms
Indentation
Tag Style
White Space Changes
Non-Breaking Space
Word List
Using sgml-mode with Emacs
See Also
The FreeBSD Documentation Project
SGML
HTML
DocBook
The Linux Documentation Project
A.Examples
A.1 DocBook book
A.2 DocBook <article>
A.3 Producing Formatted Output
A.3.1 Using Jade
PPP - Pedantic PPP Primer
Table of Contents
Overview
Building the Local Area Network
Typical Network Topology
Assumptions about the Local Area Network
FreeBSD System Configuration
Table of Contents
Verifying the FreeBSD Host Name
Configuring the FreeBSD Host Name
Verifying the Ethernet Interface Configuration
Configuring your Ethernet Interface
Enabling Packet Forwarding
Creating the List of other LAN Hosts(/etc/hosts)
Testing the FreeBSD system
Verifying the operation of the loopback device
Verifying the operation of the Ethernet Device
Configuring the PPP Dial-Out Connection
Table of Contents
Backing up the original PPP configuration files
Create your own PPP configuration files
The '/etc/ppp/ppp.conf' file
The '/etc/ppp/ppp.linkup' file
IP Aliasing
Configuring Windows Systems
Configuring Windows 95
Configuring Windows NT
Configuring Windows for Workgroups
Testing the Network
Table of Contents
Testing the Dial-Up link
Testing the Ethernet LAN
Exercises for the Interested Student
Table of Contents
Creating a mini-DNS system
The /etc/namedb/named.boot file
The /etc/namedb/mydomain.db file
Starting the DNS Server
Playing with PPP filters
FreeBSD Installation Guide
Table of Contents
Home
0.1 Table of Contents
1.0 Limits of Liability and Disclaimer of Warranty
1.1 Copyright
1.1 Contact
Getting Started
1.2 Synopsis
1.3 Installer Prerequisites
1.4 Introduction
2.0 Preparing PC for FBSD
2.1 Incremental Install Method
2.2 Minimum Hardware Requirements
Installing
3.0 Installing FBSD
3.1 ISO CD images
3.2 Using MS/Windows to get ISO CD images
3.3 PC BIOS
3.4 Starting Award BIOS setup utility
3.5 First time changes to PC BIOS
3.6 Loading FBSD to the Hard drive
Post Install
4.0 Post Install Configuration
4.1 Root Account
4.2 Gracefully Stopping your System
4.3 Navigating the File System Directory Tree
4.4 Command Line Path Prefix
4.5 How to use the ee editor
4.6 User Login Announcement
4.7 Command Line History
4.8 Keyboard F1 - F8 Keys
4.9 FBSD Logs
4.10 Enabling clear tmp directory
4.11 Using mouse copy/paste function
4.11.1 Enabling 2 button mouse copy/paste function
4.11.3 Testing mouse copy/paste function
4.11.4 Further customizing the mouse arrow pointer
4.12 Scroll lock history
4.13 Assigning a Host name to your FBSD system.
4.14 Hosts File
4.15 Screen Saver
4.16 Basic EMAIL Information
4.17 Time Zone setup
Internet Access
5.0 Accessing the Internet
5.1 Cable TV access to the Internet
5.1.1 Installing a PCI NIC
5.1.2 Configuring a cable modem Internet connection
5.1.3 Test your cable modem connectivity
5.2 Products offered by the public telephone company
5.2.1 Analog voice dial up service to your ISP
5.2.2 Analog voice ISDN service
5.2.3 Digital DSL service
5.2.4 Digital leased lines
5.3 Enabling voice phone Modems
5.3.1 PCI Modem Types
5.3.2 How to determine if FBSD found my modem at boot time
5.3.4 External serial modems
5.3.5 Determining if your external serial modem is connected to FBSD
5.3.6 Internal PCI modem
5.3.7 PCI Modem found as <unknown card>
5.3.8 PCI Modem found and moved to sio4
5.3.9 Determining if your internal PCI modem is connected to FBSD
5.5 Internet access protocols
5.5.0 User PPP
5.5.1 User PPP NAT function
5.5.2 Configuring User PPP for modem dial out to ISP
5.5.3 Test User PPP dialisp
5.5.4 Enable Dial ISP at boot time
5.5.5 User PPP Filters
5.6 Configuring User PPP to accept inbound modem calls
5.6.1 Inbound ppp.conf statements
5.6.2 Configure Incoming services
5.6.3 Configure Modem to answer call using HAYES Commands
5.6.4 How the Incoming call process works
5.6.5 Testing Incoming call function
5.7 User PPP Callback Feature
5.7.1 Callback Feature on Incoming Calls
5.7.2 Summary of how Incoming callback works
5.7.3 ISP callback Feature
5.7.4 Summary of how ISP callback works
5.8 PPPoE ppp.conf statements for DSL connection
5.9 User PPP Logs
5.10 Stray irq 7 messages
Network Security
6.0 Network Security
6.0.1 Firewalls
6.0.2 Firewall Rule Set Types
6.0.3 Firewall Software Applications
6.1 IPFILTER (IPF) Firewall
6.1.1 Enabling IPF
6.1.2 Kernel options.
6.1.3 RC.CONF Options
6.2 IPF COMMAND
6.3 IPFSTAT Command
6.4 IPMON Command
6.4.1 IPMON Logging
6.4.2 Format of Logged Messages
6.5 Building Rule Script
6.6.IPF Rule Sets
6.6.1 Rule Syntax
6.6.2 Stateful Filtering
6.7 Inclusive Rule set Example
6.8 NAT Explanation
6.8.1 IPNAT Command
6.8.2 NAT Rules
6.8.3 How NAT works
6.8.4 Enabling Nat
6.8.5 Nat for very Large Lan
6.8.6 Directing traffic to Lan Servers
6.8.7 FTP Special Nat Handling
6.8.8 FTP Filter rules
6.9 IPFIREWALL (IPFW) Firewall
6.9.1 Enabling IPFW
6.9.2 Kernel Options
6.9.3 RC.CONF Options
6.9.4 IPFW Command
6.9.4 IPFW Rule Sets
6.9.5 Rule Syntax
6.9.6 Stateful Rule Option
6.9.7 Logging Firewall Messages
6.9.8 Building Rule Script
6.9.9 Stateful Rule Set
6.9.10 Example Inclusive Rule Set
6.10 Stateful + NATD Rule Set
6.11 OpenBSD's Packet Filter Firewall
6.11.1 Enabling PF
6.11.2 Kernel Options
6.11.3 RC.CONF Statements
6.11.4 PFCTL Command
6.11.5 PF Rule Sets
6.11.6 Rule Syntax
6.11.7 Stateful Filtering
6.11.8 Nat Explanation
6.11.9 Logging
6.12 Inclusive Rule set Example
6.13 Defending Against Attacks
6.13.1 Know Who Your Attacker is
6.13.2 Stopping Login Attacks
6.13.3 Stopping Web Server Attacks
6.14 Example SSH setup
6.14.1 Example Environment Description
6.14.2 Host Setup
6.14.3 FBSD-client Setup
6.14.4 Using Midnight Commander for SFTP
6.14.5 Win-client Setup
6.14.6 Putty Setup
6.14.7 WinSC3 Setup
6.14.8 Fraudulent SSH Login Attempts
Local Area Network
7.0 Setting up Local Area Network (LAN)
7.1 Home User LANs
7.2 Topography of a LAN
7.3 Installing the LAN
7.4 LAN private IP address
7.5 Manually Configuring the Gateway
7.6 Manually configuring FBSD LAN PCs
7.7 Manually configuring MS/Windows LAN PCs
DHCP Server
8.0 DHCP (Dynamic Host Configuration Protocol)
8.1 What function does DHCP perform?
8.2 DHCP Server
8.3 How DHCP Works
8.4 DHCP Configuration Instructions
8.5 Testing the DHCPD Daemon
8.6 FBSD as a DHCP Client
System Security
9.0 FBSD System Security
9.1 Network packet Security options
9.1.1 Sysctl.conf Security Knobs
9.1.2 Secure rc.conf
9.1.3 Secure Kernel Source
9.2 Security Paranoia
9.3 Highest Level of Security Paranoia
9.3.1 Jail facility
9.3.2 rc.conf securelevel option
9.3.3 Encrypting Disk Partitions
FBSD Basics
10.0 FBSD Basics
10.1 Introduction to the manual documentation
10.2 Basic FBSD Commands you will need to know
10.3 Controlling what messages go to what syslog files
10.3.1 LOG rotation and archiving
10.4 Setting System Date and Time
10.5 Capturing screen content to file
10.6 Cron Scheduling Application & System Management Reports
10.7 Using the Floppy drive
10.7.1 To format a FBSD file system floppy disk
10.7.2 To create /a floppy mount point
10.7.3 To mount floppy drive
10.7.4 To test floppy drive
10.7.5 To remove floppy from drive
10.7.6 To mount MS/Windows formatted floppy disk
10.7.7 Easier way to mount MS/Windows floppies
10.7.8 To test auto floppy drive mount
10.8 Mounting Cdrom
10.9 User Account Admin
10.9.1 Configure the pw Command
10.9.2 Examples of pw command usage
10.9.3 pw command embedded in a script
10.9.4 passwd command
10.9.5 chpass command
10.9.6 Super User
10.10 Permissions
10.10.1 Managing Permissions
10.10 2 Change file permissions
10.10.3 Change file owner
10.10.4 Change file group
10.11 Managing your configuration changes
10.11.1 Personal Scripts
10.11.2 Script to Backup /custom to floppy
10.11.3 Script to Restore floppy to /custom
10.12 Burncd and .iso files
10.12.1 ISO FTP download script
10.12.2 Burncd command
10.13 Technical Support
10.14 Boot Time Splash Screen
10.14.1 Splash Screen Function
10.14.2 Enabling the Splash Screen Function
10.14.3 Sample Splash Screen
Email Services
11.0 Email Service
11.1 Commercial, non-Commercial sendmail Users
11.2 Configure Sendmail to send enail through your ISP
11.3 POP3 Email Server
11.4 Qpopper Application
11.4.1 Qpopper Installation Instructions
11.5 Configuring Microsoft Outlook for FBSD mail service
11.6 Fetchmail / Getting your ISP mail to FBSD
11.6.1 Fetchmail Installation Instructions
11.6.2 Testing Fetchmail
11.6.3 Boot Time Enable
11.8 Email Reading
11.8.1 Using the mail command
11.8.2 Checking your mail
11.8.3 Creating / sending your mail
11.8.4 Mbox File
11.8.5 Mail sub-commands
11.8.6 Replying to or creating new mail
11.9 Email Vacation Auto Responder
11.9.1 How vacation process works
11.9.2 .vacation msg file
11.9.3 .vacation.db File
11.9.4 .forward File
11.9.5 SYNTAX of the command
11.9.6 Procedure to Activate
Ports & Packages
12.0 Ports & Packages
12.1 Determining what to install
12.2 Finding the Application Download Name
12.3 Package Benefits
12.4 Ports Benefits
12.5 Using the Package Collection
12.5.1 Alternate Access Method to package Collection
12.6 Using the Port Collection
12.6.1 Downloading make files for single port
12.6.2 Fetch Port Config Files Script
12.7 Ports/Package Install History Database Commands
12.8 Port Make Commands
Kernel Customizing
13.0 Kernel Customizing
13.1 Kernel Compile Steps
13.2 Managing Multiple Kernels
13.4 Replacing /kernel with saved /kernel
13.5 Fix System Boot problems
13.6 Single user mode
13.7 Forgot Root password
13.8 New Kernel won't boot
FTP & Telnet
14.0 FTP & Telnet
14.1 Inetd, FBSD's Super server
14.2 Configure Insecure FTP
14.3 Anonymous FTP Server
&nbs