Security is a function that begins and ends with the system administrator. While FreeBSD provides some inherent security, the job of configuring and maintaining additional security mechanisms is probably one of the single largest undertakings of the sysadmin.
System security also pertains to dealing with various forms
of attack, including attacks that attempt to crash, or otherwise
make a system unusable, but do not attempt to compromise the
root
account. Security concerns can be
split up into several categories:
Denial of service attacks.
User account compromises.
Root compromise through accessible services.
Root compromise via user accounts.
Backdoor creation.
A Denial of Service DoS attack is an action that deprives the machine of needed resources. Typically, DoS attacks are brute-force mechanisms that attempt to crash or otherwise make a machine unusable by overwhelming its services or network stack. Attacks on servers can often be fixed by properly specifying options to limit the load the servers incur on the system under adverse conditions. Brute-force network attacks are harder to deal with. This type of attack may not be able to take the machine down, but it can saturate the Internet connection.
A user account compromise is more common than a DoS attack. Many sysadmins still run unencrypted services, meaning that users logging into the system from a remote location are vulnerable to having their password sniffed. The attentive sysadmin analyzes the remote access logs looking for suspicious source addresses and suspicious logins.
In a well secured and maintained system, access to a user
account does not necessarily give the attacker access to
root
. Without root
access, the attacker cannot generally hide his tracks and may,
at best, be able to do nothing more than mess with the user's
files or crash the machine. User account compromises are common
because users tend not to take the precautions that sysadmins
take.
There are potentially many ways to break
root
: the attacker may know the
root
password, the attacker may exploit a
bug in a service which runs as root
, or the
attacker may know of a bug in a SUID-root program. An attacker
may utilize a program known as a backdoor to search for
vulnerable systems, take advantage of unpatched exploits to
access a system, and hide traces of illegal activity.
Security remedies should always be implemented with a multi-layered “onion peel” approach and can be categorized as follows:
Secure root
and staff
accounts.
Secure root
–run servers
and SUID/SGID binaries.
Secure user accounts.
Secure the password file.
Secure the kernel core, raw devices, and filesystems.
Quick detection of inappropriate changes made to the system.
Paranoia.
The next section covers these items in greater depth.
All FreeBSD documents are available for download at http://ftp.FreeBSD.org/pub/FreeBSD/doc/
Questions that are not answered by the
documentation may be
sent to <freebsd-questions@FreeBSD.org>.
Send questions about this document to <freebsd-doc@FreeBSD.org>.