All Topics  
OpenBSD

 

   Email Print
   Bookmark   Link






 

OpenBSD



 
 
OpenBSD is a Unix-like
Unix-like

A Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification....
 computer operating system
Operating system

An operating system is an interface between hardware and applications; it is responsible for the management and coordination of activities and the sharing of the limited resources of the computer....
 descended from Berkeley Software Distribution
Berkeley Software Distribution

Berkeley Software Distribution is the Unix operating system derivative developed and distributed by the Computer Systems Research Group of the University of California, Berkeley, from 1977 to 1995....
 (BSD), a Unix
Unix

Unix is a computer operating system originally developed in 1969 by a group of American Telephone & Telegraph employees at Bell Labs, including Ken Thompson , Dennis Ritchie, Douglas McIlroy, and Joe Ossanna....
 derivative developed at the University of California, Berkeley
University of California, Berkeley

The University of California, Berkeley is a public university research university located in Berkeley, California, California, United States. The oldest of the ten major campuses affiliated with the University of California, Berkeley offers some 300 undergraduate and graduate degree programs in a wide range of disciplines....
. It was forked
Fork (software development)

In software engineering, a project fork happens when developers take a copy of source code from one Computer software and start independent development on it, creating a distinct piece of software....
 from NetBSD
NetBSD

NetBSD is a freely redistributable, open source version of the Unix-derivative Berkeley Software Distribution computer operating system. It was the second open source BSD descendant to be formally released, after 386BSD, and continues to be actively developed....
 by project leader Theo de Raadt
Theo de Raadt

Theo de Raadt, , born May 19, 1968 in Pretoria, South Africa, is a software engineer who lives in Calgary, Alberta, Canada. He is the founder and leader of the OpenBSD and OpenSSH projects, and was a founding member of the NetBSD project....
 in late 1995. The project is widely known for the developers' insistence on open source code
Source code

In computer science, source code is any collection of statements or declarations written in some human-readable computer programming language....
 and quality documentation
Documentation

Documentation may refer to the process of providing evidence or to the communicable material used to provide such documentation . Documentation may also refer to tools aiming at identifying documents or to the field of study devoted to the study of documents and bibliographies ....
; uncompromising position on software licensing
Software licensing

A software license is a legal instrument governing the usage or redistribution of copyright protected software. All software not in the Public domain is copyright protected....
; and focus on security
Computer insecurity

Many current computer systems have only limited security precautions in place. This computer insecurity article describes the current battlefield of computer security exploit s and defenses....
 and code correctness. The project is coordinated from de Raadt's home in Calgary
Calgary

Calgary is the largest city in the province of Alberta, Canada. It is located in the south of the province, in an area of foothills and High Plains, approximately east of the front ranges of the Canadian Rockies....
, Alberta
Alberta

Alberta is one of Canada Canadian Prairies Provinces and territories of Canada. It became a province on September 1, 1905.Alberta is located in western Canada, bounded by the provinces of British Columbia to the west and Saskatchewan to the east, the Northwest Territories to the north, and the U.S....
, Canada. Its logo and mascot is a pufferfish
Pufferfish

Tetraodontidae is a family of primarily marine and estuarine fish. The family includes many familiar species which are variously called puffers, balloonfish, blowfish, bubblefish, globefish, swellfish, toadfish, and toadies....
 named Puffy
Puffy (mascot)

Puffy is the mascot of the free software operating system OpenBSD. Puffy is a porcupinefish, which is used to signify the intention of the OpenBSD developers to make an impregnably secure operating system....
.

OpenBSD includes a number of security features absent or optional in other operating systems and has a tradition of developers auditing
Code audit

A software code audit is a comprehensive analysis of source code in a programming project with the intent of discovering bugs, security breaches or violations of programming conventions....
 the source code for software bug
Software bug

A software bug is an error, flaw, mistake, failure, or fault in a computer program that prevents it from behaving as intended . Most bugs arise from mistakes and errors made by people in either a program's source code or its software architecture, and a few are caused by compilers producing incorrect code....
s and security problems. The project maintains strict policies on licensing and prefers the open source
Open source

Open source is an approach to design, development, and distribution offering practical accessibility to a product's source . Some consider open source as one of various possible design approaches, while others consider it a critical Strategy element of their business operations....
 BSD licence
BSD licenses

BSD licenses represent a family of permissive free software licence. The original was used for the Berkeley Software Distribution , a Unix-like operating system for which the license is named....
 and its variants—in the past this has led to a comprehensive licence audit and moves to remove or replace code under licences found less acceptable.

As with most other BSD-based operating systems, the OpenBSD kernel and userland programs, such as the shell
Unix shell

A Unix shell is a command-line interpreter and script host that provides a traditional user interface for the Unix operating system and for Unix-like systems....
 and common tools like cat
Cat (Unix)

The cat command is a standard Unix program used to Concatenation and display files. The name is from :wikt:catenate, a synonym of concatenate....
 and ps
Ps (Unix)

In most Unix-like operating systems, the ps program displays the currently-running process . A related Unix utility named Top provides a real-time view of the running processes....
, are developed together in a single source repository.






Discussion
Ask a question about 'OpenBSD'
Start a new discussion about 'OpenBSD'
Answer questions from other users
Full Discussion Forum



Recent Posts









Encyclopedia


OpenBSD is a Unix-like
Unix-like

A Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification....
 computer operating system
Operating system

An operating system is an interface between hardware and applications; it is responsible for the management and coordination of activities and the sharing of the limited resources of the computer....
 descended from Berkeley Software Distribution
Berkeley Software Distribution

Berkeley Software Distribution is the Unix operating system derivative developed and distributed by the Computer Systems Research Group of the University of California, Berkeley, from 1977 to 1995....
 (BSD), a Unix
Unix

Unix is a computer operating system originally developed in 1969 by a group of American Telephone & Telegraph employees at Bell Labs, including Ken Thompson , Dennis Ritchie, Douglas McIlroy, and Joe Ossanna....
 derivative developed at the University of California, Berkeley
University of California, Berkeley

The University of California, Berkeley is a public university research university located in Berkeley, California, California, United States. The oldest of the ten major campuses affiliated with the University of California, Berkeley offers some 300 undergraduate and graduate degree programs in a wide range of disciplines....
. It was forked
Fork (software development)

In software engineering, a project fork happens when developers take a copy of source code from one Computer software and start independent development on it, creating a distinct piece of software....
 from NetBSD
NetBSD

NetBSD is a freely redistributable, open source version of the Unix-derivative Berkeley Software Distribution computer operating system. It was the second open source BSD descendant to be formally released, after 386BSD, and continues to be actively developed....
 by project leader Theo de Raadt
Theo de Raadt

Theo de Raadt, , born May 19, 1968 in Pretoria, South Africa, is a software engineer who lives in Calgary, Alberta, Canada. He is the founder and leader of the OpenBSD and OpenSSH projects, and was a founding member of the NetBSD project....
 in late 1995. The project is widely known for the developers' insistence on open source code
Source code

In computer science, source code is any collection of statements or declarations written in some human-readable computer programming language....
 and quality documentation
Documentation

Documentation may refer to the process of providing evidence or to the communicable material used to provide such documentation . Documentation may also refer to tools aiming at identifying documents or to the field of study devoted to the study of documents and bibliographies ....
; uncompromising position on software licensing
Software licensing

A software license is a legal instrument governing the usage or redistribution of copyright protected software. All software not in the Public domain is copyright protected....
; and focus on security
Computer insecurity

Many current computer systems have only limited security precautions in place. This computer insecurity article describes the current battlefield of computer security exploit s and defenses....
 and code correctness. The project is coordinated from de Raadt's home in Calgary
Calgary

Calgary is the largest city in the province of Alberta, Canada. It is located in the south of the province, in an area of foothills and High Plains, approximately east of the front ranges of the Canadian Rockies....
, Alberta
Alberta

Alberta is one of Canada Canadian Prairies Provinces and territories of Canada. It became a province on September 1, 1905.Alberta is located in western Canada, bounded by the provinces of British Columbia to the west and Saskatchewan to the east, the Northwest Territories to the north, and the U.S....
, Canada. Its logo and mascot is a pufferfish
Pufferfish

Tetraodontidae is a family of primarily marine and estuarine fish. The family includes many familiar species which are variously called puffers, balloonfish, blowfish, bubblefish, globefish, swellfish, toadfish, and toadies....
 named Puffy
Puffy (mascot)

Puffy is the mascot of the free software operating system OpenBSD. Puffy is a porcupinefish, which is used to signify the intention of the OpenBSD developers to make an impregnably secure operating system....
.

OpenBSD includes a number of security features absent or optional in other operating systems and has a tradition of developers auditing
Code audit

A software code audit is a comprehensive analysis of source code in a programming project with the intent of discovering bugs, security breaches or violations of programming conventions....
 the source code for software bug
Software bug

A software bug is an error, flaw, mistake, failure, or fault in a computer program that prevents it from behaving as intended . Most bugs arise from mistakes and errors made by people in either a program's source code or its software architecture, and a few are caused by compilers producing incorrect code....
s and security problems. The project maintains strict policies on licensing and prefers the open source
Open source

Open source is an approach to design, development, and distribution offering practical accessibility to a product's source . Some consider open source as one of various possible design approaches, while others consider it a critical Strategy element of their business operations....
 BSD licence
BSD licenses

BSD licenses represent a family of permissive free software licence. The original was used for the Berkeley Software Distribution , a Unix-like operating system for which the license is named....
 and its variants—in the past this has led to a comprehensive licence audit and moves to remove or replace code under licences found less acceptable.

As with most other BSD-based operating systems, the OpenBSD kernel and userland programs, such as the shell
Unix shell

A Unix shell is a command-line interpreter and script host that provides a traditional user interface for the Unix operating system and for Unix-like systems....
 and common tools like cat
Cat (Unix)

The cat command is a standard Unix program used to Concatenation and display files. The name is from :wikt:catenate, a synonym of concatenate....
 and ps
Ps (Unix)

In most Unix-like operating systems, the ps program displays the currently-running process . A related Unix utility named Top provides a real-time view of the running processes....
, are developed together in a single source repository. Third-party software is available as binary packages or may be built from source using the ports tree
Ports collection

Ports collections are the sets of makefiles and Patch_es provided by the BSD-based operating systems, FreeBSD, NetBSD and OpenBSD, as a simple method of installing software or creating binary packages....
.

The OpenBSD project maintains ports for 17 different hardware
Computer hardware

A personal computer is made up of computer hardware, multiple physical components onto which can be loaded into a multitude of software that perform the functions of the computer....
 platforms
Platform (computing)

In computing, a platform describes some sort of hardware architecture or software framework , that allows Computer software to run. Typical platforms include a computer's Computer architecture, operating system, programming languages and related runtime libraries or graphical user interface....
, including the DEC Alpha
DEC Alpha

Alpha, originally known as Alpha AXP, was a 64-bit reduced instruction set computer instruction set architecture developed by Digital Equipment Corporation , designed to replace the 32-bit VAX complex instruction set computer ISA and its implementations....
, Intel i386
Intel 80386

The Intel 80386, otherwise known as the i386 or just 386, is a microprocessor which has been used as the central processing unit of many personal computers and workstations since 1986....
, Hewlett-Packard
Hewlett-Packard

The Hewlett-Packard Company , commonly referred to as HP, is a technology corporation headquartered in Palo Alto, California, United States....
 PA-RISC, AMD AMD64 and Motorola 68000
Motorola 68000

The Motorola 68000 is a 16/32-bit Complex instruction set computer microprocessor core designed and marketed by Freescale Semiconductor ....
 processors, Apple
Apple Computer

Apple Inc., formerly Apple Computer Inc., is an United States multinational corporation which designs and manufactures consumer electronics and software products....
's PowerPC
PowerPC

PowerPC is a RISC instruction set architecture created by the 1991 Apple Inc.?IBM?Motorola alliance, known as AIM alliance. Originally intended for personal computers, PowerPC CPUs have since become popular embedded system and high-performance processors....
 machines, Sun
Sun Microsystems

Sun Microsystems, Inc. is a multinational corporation vendor of computers, computer components, computer software, and information technology services, founded on February 24, 1982....
 SPARC
SPARC

SPARC is a Reduced Instruction Set Computer microprocessor instruction set Computer architecture originally designed in 1985 by Sun Microsystems....
 and SPARC64-based computers, the VAX
VAX

VAX was an instruction set architecture developed by Digital Equipment Corporation in the mid-1970s. A 32-bit complex instruction set computer ISA, it was designed to extend or replace DEC's various Programmed Data Processor ISAs....
 and the Sharp Zaurus
Sharp Zaurus

The Sharp Zaurus is the name of a series of Personal digital assistant made by Sharp Corporation. The Zaurus was the most popular PDA during the 1990s in Japan and was based on a proprietary operating system....
.

! Computer
Computer

A computer is a machine that manipulates Data according to a list of Code .The first devices that resemble modern computers date to the mid-20th century , although the computer concept and various machines similar to computers existed earlier....
 and operating system
Operating system

An operating system is an interface between hardware and applications; it is responsible for the management and coordination of activities and the sharing of the limited resources of the computer....
|- ! Unix
Unix

Unix is a computer operating system originally developed in 1969 by a group of American Telephone & Telegraph employees at Bell Labs, including Ken Thompson , Dennis Ritchie, Douglas McIlroy, and Joe Ossanna....
 and Unix-like
Unix-like

A Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification....
|- ! Software licensing
Software licensing

A software license is a legal instrument governing the usage or redistribution of copyright protected software. All software not in the Public domain is copyright protected....
|- ! Computer insecurity
Computer insecurity

Many current computer systems have only limited security precautions in place. This computer insecurity article describes the current battlefield of computer security exploit s and defenses....


History and popularity


In December 1994, NetBSD co-founder Theo de Raadt
Theo de Raadt

Theo de Raadt, , born May 19, 1968 in Pretoria, South Africa, is a software engineer who lives in Calgary, Alberta, Canada. He is the founder and leader of the OpenBSD and OpenSSH projects, and was a founding member of the NetBSD project....
 was asked to resign his position as a senior developer and member of the NetBSD core team, and his access to the source code repository was revoked.
Openbsd23cover
The reason for this is not wholly clear, although there are claims that it was due to personality clashes within the NetBSD project and on its mailing lists
Electronic mailing list

An electronic mailing list is a special usage of electronic mail that allows for widespread distribution of information to many Internet users....
. De Raadt has been criticized for having a sometimes abrasive personality: in his book, Free For All, Peter Wayner claims that de Raadt "began to rub some people the wrong way" before the split from NetBSD; Linus Torvalds
Linus Torvalds

Linus Benedict Torvalds is a Finland software engineering best known for having initiated the development of the Linux kernel. He later became the chief architect of the Linux kernel, and now acts as the project's coordinator....
 has described him as "difficult;" and an interviewer admits to being "apprehensive" before meeting him. Many have different feelings: the same interviewer describes de Raadt's "transformation" on founding OpenBSD and his "desire to take care of his team," some find his straightforwardness refreshing, and few deny he is a talented coder
Programmer

A programmer is someone who writes computer software. The term computer programmer can refer to a specialist in one area of computer programming or to a generalist who writes code for many kinds of software....
 and security "guru
Guru

A guru is a person who is regarded as having great knowledge, wisdom and authority in a certain area, and who uses these abilities to guide others....
".

In October 1995, de Raadt founded OpenBSD, a new project forked from NetBSD 1.0. The initial release, OpenBSD 1.2, was made in July 1996, followed in October of the same year by OpenBSD 2.0. Since then, the project has followed a schedule of a release every six months, each of which is maintained and supported for one year. The latest release, OpenBSD 4.4, appeared on November 1, 2008.

On 25 July 2007, OpenBSD developer Bob Beck announced the formation of the OpenBSD Foundation
OpenBSD Foundation

The OpenBSD Foundation is a Canada federal non-profit organization founded by the OpenBSD project "as a single point of contact for persons and organizations requiring a legal entity to deal with when they wish to support OpenBSD." It also serves as a legal safeguard over other projects which are affiliated with OpenBSD, including OpenSSH, Op...
, a Canadian not-for-profit corporation formed to "act as a single point of contact for persons and organizations requiring a legal entity to deal with when they wish to support OpenBSD."

Just how widely OpenBSD is used is hard to ascertain: the developers do not collect and publish usage statistics and there are few other sources of information. In September 2005 the nascent BSD Certification project performed a usage survey which revealed that 32.8% of BSD users (1420 of 4330 respondents) were using OpenBSD, placing it second of the four major BSD variants, behind FreeBSD
FreeBSD

FreeBSD is a Unix-like free software operating system descended from AT&T Unix via the Berkeley Software Distribution branch through the 386BSD and Berkeley Software Distribution#4.4BSD and descendants operating systems....
 with 77.0% and ahead of NetBSD with 16.3%. The DistroWatch
DistroWatch

DistroWatch is a popular website which provides news, popularity rankings, and other general information about various Linux distributions as well as other free software/open-source operating systems such as OpenSolaris and BSD....
 website
Website

A Web site is a collection of related Web pages, images, videos or other digital assets that are hosted on one Web server, usually accessible via the Internet....
, well-known in the Linux
Linux

Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel. Their development is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed by anyone under the terms of the GNU GPL license...
 community and often used as a reference for popularity, publishes page hits for each of the Linux distribution
Linux distribution

A Linux distribution is a member of the family of Unix-like software distributions built on top of the Linux kernel. Such distributions consist of a large collection of software applications such as word processors, spreadsheets, media players and database applications....
s and other operating systems it covers. it places OpenBSD in 54th place, with 126 hits per day. FreeBSD is in 16th place with 473 hits per day and a number of Linux and non-Linux distributions range between them.

Open source and open documentation


When OpenBSD was created, Theo de Raadt decided that the source should be available for anyone to read at any time, so, with the assistance of Chuck Cranor, he set up a public, anonymous CVS
Concurrent Versions System

In the field of software development, the Concurrent Versions System , also known as the Concurrent Versioning System, is a free software revision control system....
 server. This was the first of its kind in the software development world: at the time, the tradition was for only a small team of developers to have access to a project's source repository. This practice had downsides, notably that outside contributors had no way to closely follow a project's development and contributed work would often duplicate already completed efforts. This decision led to the name OpenBSD and signaled the project's insistence on open and public access to both source code and documentation.

A revealing incident regarding open documentation occurred in March 2005, when de Raadt posted a message to the openbsd-misc mailing list. He announced that after four months of discussion, Adaptec
Adaptec

Adaptec is a computer hardware company based in Milpitas, California that primarily produces host adapters for connecting computer storage devices to computers....
 had not disclosed the documentation required to improve the OpenBSD drivers
Device driver

In computing, a device driver or software driver is a computer program allowing higher-level computer programs to interact with a hardware device....
 for its AAC RAID controllers. As in similar circumstances in the past, he encouraged the OpenBSD community to become involved and express their opinion to Adaptec. Shortly after this, FreeBSD committer
Committer

A person who has permission to modify a particular software source code....
, former Adaptec employee and author of the FreeBSD AAC RAID support Scott Long castigated de Raadt on the OSNews
OSNews

OSNews is a computing news site with a focus on operating systems and their related technologies that launched in 1997. The content is managed by a group of editors and the owner....
 website for not contacting him directly regarding the issues with Adaptec. This caused the discussion to spill over onto the freebsd-questions mailing list, where the OpenBSD project leader countered by claiming that he had received no previous offer of help from Scott Long nor been referred to him by Adaptec. The debate was amplified by disagreements between members of the two camps regarding the use of binary blob
Binary blob

In Free software community, binary blob is a pejorative term for an Objective Code Linker into the Kernel of a free software or open-source software operating system without publicly available source code....
 drivers and non-disclosure agreement
Non-disclosure agreement

A non-disclosure agreement , also known as a confidentiality agreement, confidential disclosure agreement , proprietary information agreement , or secrecy agreement, is a law contract between at least two party that outlines confidential materials or knowledge the parties wish to share with one another for certain pur...
s (NDAs): OpenBSD developers do not permit the inclusion of closed source
Closed source

Closed source is a term for software whose software license does not allow for the release or distribution of the software's source code. Generally, it means only the binary file of a computer program are distributed and the license provides no access to the program's source code....
 binary drivers in the source tree and are reluctant to sign NDAs. However, the FreeBSD project has a different policy and much of the Adaptec RAID management code Scott Long proposed as assistance for OpenBSD was closed source or written under an NDA. As no documentation was forthcoming before the deadline for release of OpenBSD 3.7, support for Adaptec AAC RAID controllers was removed from the standard OpenBSD kernel.

The OpenBSD policy on openness extends to hardware documentation: in the slides for a December 2006 presentation, de Raadt explained that without it "developers often make mistakes writing drivers," and pointed out that "the [oh my god, I got it to work] rush is harder to achieve, and some developers just give up." He went on to say that vendor binary drivers are considered unacceptable to OpenBSD—in their view they cannot be trusted and there is "no way to fix [them] ... when they break;" vendor source is "marginally acceptable" and still difficult to fix when problems occur.

Licensing


Openbsd37withjwm
A goal of the OpenBSD project is to "maintain the spirit of the original Berkeley Unix copyright
Copyright

Copyright is a form of intellectual property which gives the creator of an original work exclusive rights for a certain time period in relation to that work, including its publication, distribution and adaptation; after which time the work is said to enter the public domain....
s," which permitted a "relatively un-encumbered Unix source distribution." To this end, the Internet Systems Consortium (ISC) licence
ISC licence

The ISC licence is a permissive free software licence written by the Internet Systems Consortium . It is functionally equivalent to the 2-clause BSD licence, with language "made unnecessary by the Berne convention" removed....
, a simplified version of the BSD licence with wording removed that is unnecessary under the Berne convention
Berne Convention for the Protection of Literary and Artistic Works

The Berne Convention for the Protection of Literary and Artistic Works, usually known as the Berne Convention, is an international agreement governing copyright, which was first accepted in Berne, Switzerland in 1886....
, is preferred for new code, but the MIT
MIT License

The MIT License is a free software license originating at the Massachusetts Institute of Technology , used by the MIT X Consortium.It is a Permissive_free_software_licence license, meaning that it permits reuse within proprietary software on the condition that the license is distributed with that software....
 or BSD licences are accepted. The widely used GNU General Public License
GNU General Public License

The GNU General Public License is a widely used free software license, originally written by Richard Stallman for the GNU project. The GPL is the most popular and well-known example of the type of strong copyleft license that requires derived works to be available under the same copyleft....
 is considered overly restrictive in comparison with these: code licensed under it, and other licences the project sees as undesirable, is no longer accepted for addition to the base system. In addition, existing code under such licences is actively replaced or relicensed when possible, except in some cases, where there is no suitable replacement and creating one would be time-consuming and impractical. In September 2007, the OpenBSD team took the initial steps towards replacing the GNU Compiler Collection
GNU Compiler Collection

The GNU Compiler Collection is a compiler system produced by the GNU Project supporting various programming languages. GCC is a key component of the GNU toolchain....
 (GCC) by importing Anders Magnusson's BSD-licensed Portable C Compiler
Portable C Compiler

The Portable C Compiler was an early compiler for the C programming language written by Stephen C. Johnson of Bell Labs in mid-1970s—based in part on ideas from earlier work by Alan Snyder in 1973....
 (PCC) into CVS. The results of the OpenBSD team's efforts to replace encumbered code have been impressive: of particular note is the development of OpenSSH
OpenSSH

OpenSSH is a set of computer programs providing encryption communication sessions over a computer network using the Secure Shell protocol. It was created as an open source alternative to the proprietary Secure Shell software suite offered by SSH Communications Security....
, based on the original SSH
Secure Shell

Secure Shell or SSH is a network protocol that allows data to be exchanged using a secure channel between two networked devices. Used primarily on Linux and Unix based systems to access shell accounts, SSH was designed as a replacement for TELNET and other Computer security remote Shell s, which send information, notably passwords, in...
 suite and developed further by the OpenBSD team. It first appeared in OpenBSD 2.6 and is now the single most popular SSH implementation, available as standard or as a package on many operating systems. Also worth mentioning is the development, after licence restrictions were imposed on IPFilter
IPFilter

IPFilter is an open source software package that provides firewall services and network address translation for many UNIX-like operating systems....
, of the pf
PF (firewall)

PF is a BSD licensed stateful packet filter, a central piece of software for firewalling. It is comparable to iptables, Ipfirewall and ipfilter....
 packet filter, which first appeared in OpenBSD 3.0 and is now available in DragonFly BSD
DragonFly BSD

DragonFly BSD is a Free software Unix-like operating system created as a fork of FreeBSD 4.8. Matthew Dillon , a FreeBSD and Amiga developer since 1994, began work on DragonFly BSD in June 2003 and announced it on the FreeBSD mailing lists on July 16, 2003....
, NetBSD and FreeBSD; more recently, OpenBSD releases have seen the GPL licensed tools bc
Bc programming language

bc is "an arbitrary precision calculator language" with syntax similar to the C . It is generally used by typing the command bc on a Unix command prompt and entering a mathematical expression, such as * 2, whereupon 8 will be output....
, dc
Dc (Unix)

dc is a cross-platform reverse Polish notation desk calculator which supports Bigint. It is one of the oldest Unix utilities, predating even the invention of the C ; like other utilities of that vintage, it has a powerful set of features but an extremely terse syntax....
, diff
Diff

In computing, diff is a file comparison utility that outputs the differences between two files, or the changes made to a current file by comparing it to a former version of the same file....
, grep
Grep

grep is a command line interface text search utility originally written for Unix. The name is taken from the first letters in global / regular expression / print, a series of instructions for the ed text editor....
, gzip
Gzip

gzip is a software application used for file compression. gzip is short for GNU zip; the program is a free software replacement for the compress program used in early Unix systems, intended for use by the GNU Project....
, nm
Nm (Unix)

The nm command ships with a number of later versions of Unix and similar operating systems. nm is used to examine binary files and to display the contents of those files, or Metadata stored in them, specifically the symbol table....
, pkg-config
Pkg-config

pkg-config is a piece of computer software that provides a unified interface for querying installed library for the purpose of compiling software from its source code....
, RCS
Revision Control System

The Revision Control System is a software implementation of revision control that automates the storing, retrieval, logging, identification, and merging of revisions....
, sendbug (part of GNATS
Gnats

Gnats may be:* the plural of Gnat* GNATS the GNU Software bug Bugtracker*Folland Gnat Aircraft...
) and size
Size (Unix)

size is a command line interface utility originally written for use with the Unix-like operating systems. It processes one or more Executable and Linkable Format files and its output are the dimensions of the Code segment, Data segment and .bss sections, and their total....
 replaced with BSD licensed equivalents. OpenBSD developers are also behind OpenBGPD
OpenBGPD

OpenBGPD allows general purpose computers to be used as routers. It is a Unix system Daemon that provides a free, open-source implementation of the Border Gateway Protocol version 4....
, OpenOSPFD, OpenNTPD
OpenNTPD

OpenNTPD is a Unix system Daemon implementing the Network Time Protocol to synchronize the local clock of a computer system with remote NTP servers....
 and OpenCVS
OpenCVS

OpenCVS is a BSD license implementation of the popular Unix version control software called Concurrent Versions System. OpenCVS is developed as a part of the OpenBSD project by Jean-Francois Brousseau, Joris Vink, Xavier Santolaria, Niall O'Higgins and others....
, BSD licensed alternatives to existing software.

In June 2001, triggered by concerns over Darren Reed's modification of IPFilter's licence wording, a systematic licence audit of the OpenBSD ports and source trees was undertaken. Code in more than a hundred files throughout the system was found to be unlicensed, ambiguously licensed or in use against the terms of the licence. To ensure that all licences were properly adhered to, an attempt was made to contact all the relevant copyright holders: some pieces of code were removed, many were replaced, and others, including the multicast
Multicast

Multicast is a Computer networking addressing method for the delivery of information to a group of destinations simultaneously using the most efficient strategy to deliver the messages over each link of the network only once, creating copies only when the links to the multiple destinations split....
 routing
Routing

Routing is the process of selecting paths in a network along which to send network traffic. Routing is performed for many kinds of networks, including the PSTN, Computer network , and transport network....
 tools, mrinfo and map-mbone, which were licensed by Xerox
Xerox

Xerox Corporation is a global document management company which manufactures and sells a range of color and black-and-white Computer printer, multifunction systems, photo copiers, digital production printing presses, and related consulting services and supplies....
 for research only, were relicensed so that OpenBSD could continue to use them. Also of note during this audit was the removal of all software produced by Daniel J. Bernstein
Daniel J. Bernstein

Daniel Julius Bernstein is a professor at the University of Illinois at Chicago, a mathematician, a cryptologist, and a programmer. Bernstein is the author of the computer software qmail, publicfile and djbdns....
 from the OpenBSD ports tree. At the time, Bernstein requested that all modified versions of his code be approved by him prior to redistribution, a requirement to which OpenBSD developers were unwilling to devote time or effort. The removal led to a clash with Bernstein who felt the removal of his software to be uncalled for and cited the Netscape
Netscape

Netscape Communications is a United States computer services company, best known for its web browser. The browser was once dominant in terms of Usage share of web browsers, but lost most of that share to Internet Explorer during the browser wars....
 web browser
Web browser

A Web browser is a application software which enables a user to display and interact with text, images, videos, music, games and other information typically located on a Web page at a website on the World Wide Web or a local area network....
 as much less free, accusing the OpenBSD developers of hypocrisy for permitting Netscape to remain while removing his software. The OpenBSD project's stance was that Netscape, although not open source, had licence conditions that could be more easily met; they asserted that Bernstein's demand for control of derivatives would lead to a great deal of additional work and that removal was the most appropriate way to comply with his requirements.

Security and code auditing


Shortly after OpenBSD's creation, Theo de Raadt was contacted by a local security software company named Secure Networks, Inc. or SNI. They were developing a "network security auditing tool" called Ballista (later renamed to Cybercop Scanner after SNI was purchased by Network Associates
McAfee

company_name = McAfee, Inc.| company_logo =...
) which was intended to find and attempt to exploit
Exploit (computer security)

An exploit is a piece of software, a chunk of data, or sequence of commands that take advantage of a software bug, glitch or vulnerability in order to cause unintended or unanticipated behavior to occur on computer software, hardware, or something electronic ....
 possible software security flaws. This coincided well with de Raadt's own interest in security, so the two agreed to cooperate, a relationship that was of particular use leading up to the release of OpenBSD 2.3 and helped to form the focal point of the project: OpenBSD developers would attempt to do what was right, proper or secure, even at the cost of ease, speed or functionality. As bugs within OpenBSD became harder to find and exploit, the security company found that it was too difficult, or not cost effective, to handle such obscure problems. After years of cooperation, the two parties decided that their goals together had been met and parted ways.

Until June 2002, the OpenBSD website featured the slogan:

In June 2002, Mark Dowd of Internet Security Systems
Internet Security Systems

IBM Internet Security Systems is a security software provider which was founded in 1994 as Internet Security Systems, and is often known simply as ISS or ISSX ....
 disclosed a bug in the OpenSSH code implementing challenge-response
Challenge-response authentication

In computer security, challenge-response authentication is a family of protocols in which one party presents a question and another party must provide a valid answer to be authentication....
 authentication
Authentication

Authentication is the act of establishing or confirming something as authentic, that is, that claims made by or about the subject are true....
. This vulnerability in the OpenBSD default installation allowed an attacker remote access to the root
Superuser

On many computer operating systems, the superuser, or root, is a special user account used for system administration.Many older operating systems on computers intended for personal and home use, including MS-DOS and Windows 9x, do not have the concept of multiple accounts and thus have no separate administrative account; anyone using...
 account, and was extremely serious, partly due to the widespread use of OpenSSH by that time: the bug affected a considerable number of other operating systems. This problem necessitated the adjustment of the slogan on the OpenBSD website to:

The page was updated as time passed, until on March 13, 2007 when Alfredo Ortega of Core Security Technologies disclosed a network-related remote vulnerability, it was altered to:

This statement has been criticized because little is enabled in a default install of OpenBSD and releases have included software that was later found to have remote holes; however, the project maintains that the slogan is intended to refer to a default install and that it is correct by that measure. One of the fundamental ideas behind OpenBSD is a drive for systems to be simple, clean and secure by default
Secure by default

Secure by default, in Computer software, means that the Default configuration settings are the most Computer security settings possible, which are not necessarily the most Usability settings....
. For example, OpenBSD's minimal defaults fit in with standard computer security practice of enabling as few services as possible on production machines, and the project uses open source and code auditing practices argued to be important elements of a security system.

Openbsd38boot
OpenBSD includes a large number of features specifically designed to improve security, including API
Application programming interface

An application programming interface is a set of subroutine, data structures, class and/or Protocol provided by library and/or operating system Service s in order to support the building of applications....
 and toolchain
Toolchain

In software, a toolchain is the set of computer programs that are used to create a product . The tools may be used in a chain, so that the output of each tool becomes the input for the next, but the term is used widely to refer to any set of linked development tools....
 alterations, such as the arc4random, issetugid, strlcat, strlcpy
Strlcpy

The strlcpy function, developed by Todd C. Miller and Theo de Raadt for use in the C , is intended to replace the function strcpy and provide a simpler and more robust interface than strncpy....
 and strtonum functions
Subroutine

In computer science, a subroutine or subprogram is a portion of computer code within a larger computer program, which performs a specific task and is relatively independent of the remaining code....
 and a static bounds checker
Static code analysis

Static code analysis is the Program analysis that is performed without actually executing programs built from that software . In most cases the analysis is performed on some version of the source code and in the other cases some form of the object code....
; memory protection techniques to guard against invalid accesses, such as ProPolice
Stack-smashing protection

Buffer overflow protection refers to various techniques used during software development to enhance the security of executable programs by detecting buffer overflows on Call_stack-allocated variables as they occur and preventing them from becoming serious computer security vulnerabilities....
, StackGhost
Stack-smashing protection

Buffer overflow protection refers to various techniques used during software development to enhance the security of executable programs by detecting buffer overflows on Call_stack-allocated variables as they occur and preventing them from becoming serious computer security vulnerabilities....
, the W^X
W^X

W^X is the name of a Computer insecurity feature present in the OpenBSD operating system. It is a memory protection policy whereby every paging in a Process ' address space is either writable or executable, but not both simultaneously ....
 (W xor X) page
Paging

In computer operating systems that have their main memory divided into page , paging is a transfer of pages between main memory and an auxiliary store, such as hard disk drive....
 protection features, as well as alterations to malloc
Malloc

In computing, malloc is a subroutine provided in the C and C++'s standard library for performing dynamic memory allocation....
; and cryptography
Cryptography

Cryptography is the practice and study of hiding information. In modern times cryptography is considered a branch of both mathematics and computer science and is affiliated closely with information theory, computer security and engineering....
 and randomization
Randomization

Randomization is the process of making something random; this means:* Generating a random permutation of a sequence .* Selecting a random sample of a population ....
 features, including network stack
Protocol stack

A protocol stack is a particular software implementation of a computer networking protocol suite. The terms are often used interchangeably....
 enhancements and the addition of the Blowfish
Blowfish (cipher)

In cryptography, Blowfish is a key ed, symmetric key algorithm block cipher, designed in 1993 by Bruce Schneier and included in a large number of cipher suites and encryption products....
 cipher
Encryption

In cryptography, encryption is the process of transforming information using an algorithm to make it unreadable to anyone except those possessing special knowledge, usually referred to as a key ....
 for password
Password

A password is a secret word or string of Character that is used for authentication, to prove identity or gain access to a resource . The password must be kept Secrecy from those not allowed access....
 encryption
Encryption

In cryptography, encryption is the process of transforming information using an algorithm to make it unreadable to anyone except those possessing special knowledge, usually referred to as a key ....
. To reduce the risk of a vulnerability or misconfiguration allowing privilege escalation
Privilege escalation

Privilege escalation is the act of exploiting a Computer bug or design flaw in a software application to gain access to resource which normally would have been protected from an application or user ....
, some programs have been written or adapted to make use of privilege separation
Privilege separation

In computer programming and computer security, privilege separation is a technique in which a computer program is divided into parts which are limited to the specific privilege they require in order to perform a specific task....
, privilege revocation
Privilege revocation

Privilege revocation is the act of an entity giving up some, or all of, the privilege they possess, or some authority taking those rights away....
 and chroot
Chroot

A chroot on Unix operating systems is an operation that changes the apparent disk root directory for the current running process and its children....
ing. Privilege separation is a technique, pioneered on OpenBSD and inspired by the principle of least privilege
Principle of least privilege

In information security, computer science, and other fields, the principle of least privilege, also known as the principle of minimal privilege or just least privilege, requires that in a particular abstraction layer of a computing environment, every module must be able to access only such information and Resource that are nec...
, where a program is split into two or more parts, one of which performs privileged operations and the other—almost always the bulk of the code—runs without privilege. Privilege revocation is similar and involves a program performing any necessary operations with the privileges it starts with then dropping them, and chrooting involves restricting an application to one section of the file system
File system

In computing, a file system is a method for store and organize computer files and the data they contain to make it easy to find and access them....
, prohibiting it from accessing areas that contain private or system files. Developers have applied these features to OpenBSD versions of common applications, including tcpdump
Tcpdump

tcpdump is a common packet sniffer that runs under the command line. It allows the user to intercept and display TCP/IP and other packets being transmitted or received over a computer network to which the computer is attached....
 and the Apache web server
Web server

The term web server can mean one of two things:# A computer program that is responsible for accepting Hypertext Transfer Protocol requests from clients , and Server them HTTP responses along with optional data contents, which usually are web pages such as Hypertext Markup Language documents and linked objects ....
, which, due to licensing issues with the later Apache 2 series, is a heavily patched
Patch (computing)

A patch is a small piece of software designed to fix problems with or update a computer program or its supporting data. This includes fixing computer bug, replacing graphics and improving the usability or performance....
 1.3.29 release. The project has a policy of continually auditing code for problems, work developer Marc Espie has described as "never finished ... more a question of process than of a specific bug being hunted." He went on to list several typical steps once a bug is found, including examining the entire source tree for the same and similar issues, "try[ing] to find out whether the documentation ought to be amended," and investigating whether "it's possible to augment the compiler
Compiler

A compiler is a computer program that transforms source code written in a programming language into another computer language . The most common reason for wanting to transform source code is to create an executable program....
 to warn against this specific problem." Along with DragonFly, OpenBSD is one of the two open source operating systems with a policy of seeking out examples of classic, K&R C
C (programming language)

C is a general-purpose computer programming language originally developed in 1972 by Dennis Ritchie at the Bell Telephone Laboratories to implement the Unix operating system....
 code and converting it to the more modern ANSI
ANSI C

ANSI C is the standard published by the American National Standards Institute for the C . Software developers writing in C are encouraged to conform to the requirements in the document, as it encourages easily porting code....
 equivalent—this involves no functional change and is purely for readability and consistency reasons. A standard code style, the Kernel Normal Form
Kernel Normal Form

Kernel normal form, or KNF, is the normal form used in the development of code for the BSD operating systems. Based on the original KNF concept from the Computer Systems Research Group, it dictates a programming style to which contributed code should adhere prior to its inclusion into the codebase....
, which dictates how code must look in order to be easily maintained and understood, must be applied to all code before it is considered for inclusion in the base operating system; existing code is actively updated to meet the style requirements.

Linux kernel
Linux kernel

The Linux kernel is an operating system kernel used by a family of Unix-like operating systems. The term Linux distribution is used to refer to the various operating systems that run on top of the Linux Kernel....
 creator Linus Torvalds
Linus Torvalds

Linus Benedict Torvalds is a Finland software engineering best known for having initiated the development of the Linux kernel. He later became the chief architect of the Linux kernel, and now acts as the project's coordinator....
 has expressed the view that development efforts should be focused on fixing general problems rather than targeting security issues, as non-security bugs are more numerous ("all the boring normal bugs are _way_ more important, just because there's a lot more of them"); on July 15, 2008, he criticised the OpenBSD policy: "[T]hey make such a big deal about concentrating on security that they pretty much admit that nothing else matters to them." OpenBSD developer Marc Espie commented on Torvalds' words with: "It's a totally misinformed opinion ... [Fix normal bugs is] exactly what the OpenBSD project do, all the time;" developer Artur Grabowski also expressed surprise: "That's the funniest part about this ... He [Torvalds] was saying the same things we say."

Uses


OpenBSD's security enhancements, built-in cryptography and the pf firewall
Firewall (networking)

A firewall is an integrated collection of security measures designed to prevent unauthorized electronic access to a networked computer system....
 suit it for use in the security industry, particularly for firewalls, intrusion-detection system
Intrusion-detection system

An Intrusion detection system is software and/or hardware designed to detect unwanted attempts at accessing, manipulating, and/or disabling of computer, mainly through a network, such as the Internet....
s and VPN
Virtual private network

VPN which stands for Virtual Private Networks are used as secure extranets and Internets . It protects its network by using encryption, firewalls and other security strategies....
 gateways. It is also commonly used for servers which must resist cracking
Black hat

A black hat is the villain or bad guy, especially in a Western in which such a character would wear a black hat in contrast to the hero white hat....
 and DoS
Denial-of-service attack

A denial-of-service attack or distributed denial-of-service attack is an attempt to make a computer resource unavailable to its intended users....
 attacks, and due to including the spamd
Spamd

spamd is a BSD license lightweight E-mail spam-deferral Daemon written under the umbrella of the OpenBSD project. spamd works directly with smtp connections, and supports features such as greylisting, minimising false positives compared to a system that does full-body analysis....
 daemon
Daemon (computer software)

In Unix and other computer computer multitasking operating systems, a daemon is a computer program that runs in the background , rather than under the direct control of a user; they are usually initiated as background Computer processes....
, it sometimes is used in mail filtering applications.

Openbsd38defaultwm
Several proprietary
Proprietary software

Proprietary software is a term coined by advocates of the free software movement to describe computer software which is the legal property of one party....
 systems are based on OpenBSD, including Profense from Armorlogic ApS, AccessEnforcer from Calyptix Security, GeNUGate and GeNUBox from GeNUA mbH, RTMX O/S from RTMX Inc, syswall from Syscall Network Solutions AG, HIOBMessenger from topX, and various security appliances made by .vantronix GmbH. Of these, GeNUA, RTMX, and .vantronix have contributed back to OpenBSD: GeNUA funded the development of SMP
Symmetric multiprocessing

In computing, symmetric multiprocessing or SMP involves a multiprocessor computer-architecture where two or more identical processors can connect to a single shared main memory....
 on the i386 platform, RTMX have sent patches to add further POSIX
POSIX

POSIX or "Portable Operating System Interface" is the collective name of a family of related standardizations specified by the Institute of Electrical and Electronics Engineers to define the application programming interface , along with shell and utilities interfaces for software compatible with variants of the Unix operating system, altho...
 compliance to the system, and .vantronix contributed in networking and load balancing
Load balancing (computing)

In computer networking, load balancing is a technique to spread work between two or more computers, network links, CPUs, hard drives, or other resources, in order to get optimal resource utilization, maximize throughput, and minimize response time....
. Several open source operating systems have also been derived from OpenBSD, notably Anonym.OS
Anonym.OS

Anonym.OS was a Live CD operating system based on OpenBSD 3.8 with strong encryption and anonymization tools. The goal of the project was to provide a secure anonymous internet access to everyday users....
 and MirOS BSD
MirOS BSD

MirOS BSD is a free operating system, which started as a fork of OpenBSD 3.1 in August 2002. It is intended to maintain the security of OpenBSD - from which it frequently synchronises code updates - with better support for European localisation....
, as well as the now defunct ekkoBSD
EkkoBSD

ekkoBSD was a Unix-like operating system based on OpenBSD 3.3, also incorporating code from other BSD-like operating systems. Its focus was on security and easy administration....
, MicroBSD
MicroBSD

MicroBSD is a fork of the UNIX-like BSD operating system descendant OpenBSD 3.0, begun in July 2002. The project's objective to produce a free and fully secure, complete system, but with a small footprint....
 and Gentoo/OpenBSD
Gentoo/Alt

Gentoo/Alt is a Gentoo Linux project created to manage porting the Portage framework and other features to other operating systems, such as Mac OS X and the free software BSDs....
. In addition, code from many of the OpenBSD system tools has been used in recent versions of Microsoft
Microsoft

Microsoft Corporation is a multinational corporation computer technology corporation that develops, manufactures, licenses, and supports a wide range of computer software products for computing devices....
's Services for UNIX
Microsoft Windows Services for UNIX

Microsoft Windows Services for UNIX is a software package produced by Microsoft which provides a Unix subsystem and other parts of a full Unix environment on Windows NT and its successors....
, an extension to the Windows
Microsoft Windows

Microsoft Windows is a series of software operating systems and graphical user interfaces produced by Microsoft. Microsoft first introduced an operating environment named Windows in November 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces ....
 operating system which provides some Unix-like functionality, originally based on 4.4BSD-Lite
Berkeley Software Distribution

Berkeley Software Distribution is the Unix operating system derivative developed and distributed by the Computer Systems Research Group of the University of California, Berkeley, from 1977 to 1995....
. Core force
Core force

Core Force is a freeware personal firewall that incorporates modules for the control of Process . The software allows the user to control incoming and outgoing packet s, as well as the behavior of programs: the permissions to read, write, execute, and delete Computer file, and the permissions to read, write, and delete Windows registry keys...
, a security product for Windows, is based on OpenBSD's pf firewall. There have also been projects which use OpenBSD as part of images for embedded system
Embedded system

An embedded system is a special-purpose computer system designed to perform one or a few dedicated functions, often with real-time computing constraints....
s, including OpenSoekris and flashdist; together with tools like nsh, these allow Cisco
Cisco Systems

Cisco Systems, Inc. is a multinational corporation with more than 66,000 employees and annual revenue of United States dollar39 billion as of 2008....
-like embedded devices to be created.

OpenBSD ships with the X window system
X Window System

The X Window System is a computing software system and network protocol that provides a graphical user interface for networked computers. It implements the X Window System protocols and architecture and provides windowing system on raster graphics Visual display units and manages Keyboard and pointing device control functions....
. Following the XFree86
XFree86

XFree86 is an implementation of the X Window System. It was originally written for Unix-like operating systems on IBM PC compatibles and is now available for many other operating systems and platforms....
 licence change
XFree86

XFree86 is an implementation of the X Window System. It was originally written for Unix-like operating systems on IBM PC compatibles and is now available for many other operating systems and platforms....
, it includes a recent X.Org
X.Org Server

The X.Org Server is the X server in the official reference implementation of the X Window System. The current stable release is 1.6.0, which is part of X11R7.5, and was released on 25 February 2009....
 release; an older XFree86 3.3 release is also available for legacy video cards. With these, it is possible to use OpenBSD as a desktop or workstation, making use of a desktop environment
Desktop environment

In graphical computing, a desktop environment commonly refers to a style of graphical user interface that is based on the desktop metaphor which can be seen on most modern personal computers today....
, window manager
X window manager

An X window manager is a window manager which runs on top of the X Window System, a windowing system mainly used on Unix-like systems.Unlike the Mac OS and Microsoft Windows platforms, which have historically provided a vendor-controlled, fixed set of ways to control how windows and paned windows display on a Computer display, and how the...
 or both to give the X desktop a wide range of appearances. The OpenBSD ports tree contains many of the most popular tools for desktop use, including desktop environments GNOME
Gnome

A gnome is a mythical creature characterized by its extremely small size and wiktionary:subterranean lifestyle. The word gnome is derived from the New Latin gnomus....
, KDE
KDE

KDE is a free software project based around its flagship product, a desktop environment for Unix-like systems. The goal of the project is to provide basic desktop functions and applications for daily needs as well as tools and documentation for developers to write stand-alone applications for the system....
, and Xfce
Xfce

Xfce is a free software desktop environment for Unix and other Unix-like platforms, such as Linux, Solaris and BSD. It aims to be fast and lightweight, while still being visually appealing and easy to use....
; web browsers Konqueror
Konqueror

Konqueror is a web browser, file manager and file viewer designed as a core part of the KDE. It is developed by volunteers and can run on most Unix-like operating systems....
, Mozilla Firefox
Mozilla Firefox

Mozilla Firefox is a web browser descended from the Mozilla Application Suite and managed by Mozilla Corporation. Official versions are distributed under the terms of the proprietary EULA....
 and Opera
Opera (web browser)

Opera is a web browser and Internet suite developed by the Opera Software company. Opera handles common Internet-related tasks such as displaying web sites, sending and receiving e-mail messages, managing contacts, IRC online chatting, downloading files via BitTorrent , and reading web feeds....
; and multimedia
Multimedia

Multimedia is media and content that utilizes a combination of different content format. The term can be used as a noun or as an adjective describing a medium as having multiple content forms....
 programs MPlayer
MPlayer

MPlayer is a free software and open source media player . The program is available for all major operating systems, including Linux and other Unix-like systems, Microsoft Windows and Mac OS X....
, VLC media player
VLC media player

VLC media player is an open source, free software media player written by the VideoLAN project.VLC is a portable multimedia player, encoder, and streamer supporting many audio and video codecs and file formats as well as DVDs, Video CD, and various streaming media Communications protocol....
 and xine
Xine

xine is a multimedia playback engine for Unix-like operating systems released under the GNU General Public License. xine is built around a shared library that supports different frontend player applications....
. In addition, graphical software for many uses is available from both the ports tree and by compiling POSIX compliant software. Also available are compatibility layer
Compatibility layer

A compatibility layer is a term that refers to components that allow for non-native support of components.In software engineering, a compatibility layer allows binaries for a foreign system to run on a host system....
s, which allow binary code compiled for other operating systems, including Linux, FreeBSD, SunOS
SunOS

SunOS is a version of the Unix operating system developed by Sun Microsystems for their workstation and server computer systems. The SunOS name is usually only used to refer to versions 1.0 to 4.1.4 of SunOS....
 and HP-UX
HP-UX

HP-UX 11i is Hewlett-Packard's proprietary software implementation of the Unix operating system, based on UNIX System V . It runs on the HP 9000 PA-RISC-based range of central processing unit and HP Integrity Intel's Itanium-based systems, and was also available for later Apollo/Domain systems....
, to be run. However, despite partial support in X.Org, OpenBSD lacks accelerated 3D graphics support; , work on Direct Rendering Manager
Direct Rendering Manager

The Direct Rendering Manager is a component of the Direct Rendering Infrastructure, a system to provide efficient video acceleration on Unix-like operating systems, e.g....
 (DRM) is ongoing and some support is present in -current.

OpenBSD's performance and usability is occasionally criticised. Felix von Leitner's performance and scalability
Scalability

In telecommunications and software engineering, scalability is a desirable property of a system, a network, or a process, which indicates its ability to either handle growing amounts of work in a graceful manner, or to be readily enlarged....
 tests indicated that OpenBSD lagged behind other operating systems. In response, OpenBSD users and developers criticised von Leitner's objectivity and methodology, and asserted that although performance is given consideration, security and correct design are prioritised, with developer Nick Holland commenting: "It all boils down to what you consider important." OpenBSD is also a relatively small project, particularly when compared with FreeBSD and Linux, and developer time is sometimes seen as better spent on security enhancements than performance optimisations. Critics of usability say that OpenBSD has a lack of user-friendly configuration tools, a bare default installation, and a "spartan" and "intimidating" installer. These see much the same rebuttals as performance: a preference for simplicity, reliability and security; as one reviewer puts it, "running an ultra-secure operating system can be a bit of work."

Distribution and marketing


OpenBSD is available freely in various ways: the source can be retrieved by anonymous CVS or CVSup
CVSup

CVSup is a computer program that File synchronization computer file and directory from one location to another while minimizing data transfer using file-type specific delta encoding when appropriate....
, and binary releases and development snapshots can be downloaded either by FTP
File Transfer Protocol

File Transfer Protocol is a network protocol used to transfer data from one computer to another through a network such as the Internet.FTP is a file transfer protocol for exchanging and manipulating files over a Transmission Control Protocol computer network....
 or HTTP
Hypertext Transfer Protocol

Hypertext Transfer Protocol is an application-level protocol for distributed, collaborative, hypermedia information systems. Its use for retrieving inter-linked resources led to the establishment of the World Wide Web....
. Prepackaged CD-ROM
CD-ROM

CD-ROM is a pre-pressed Compact Disc that contains Computer data storage accessible to, but not writable by, a computer. While the Compact Disc format was originally designed for music storage and playback, the 1985 Yellow Book standard developed by Sony and Philips adapted the format to hold any form of Binary file....
 sets can be ordered online for a small fee, complete with an assortment of stickers and a copy of the release's theme song. These, with its artwork and other bonuses, are one of the project's few sources of income, funding hardware, bandwidth
Bandwidth (computing)

In computer networking and computer science, digital bandwidth, network bandwidth or just bandwidth is a measure of available or consumed data communication resources expressed in bit/s or multiples of it ....
 and other expenses. Until OpenBSD 4.2, only a small install ISO image
ISO image

An ISO image is an archive file of an optical disc in a format defined by the International Organization for Standardization . This format is supported by many software vendors....
 was available for download, to encourage sales of the full CD-ROM set. OpenBSD 4.2 provides a complete install ISO.

In common with several other operating systems, OpenBSD uses ports and packaging systems to allow for easy installation and management of programs which are not part of the base operating system. Originally based on the FreeBSD ports tree, the system is now quite distinct. Additionally, major changes have been made since the 3.6 release, including the replacement of the package tools, the tools available to the user to manipulate packages, by more capable versions, written in Perl
Perl

In computer programming, Perl is a high-level programming language, List of programming languages by category, Interpreter , dynamic programming language....
 by Marc Espie. In contrast to FreeBSD, the OpenBSD ports system is intended as a source used to create the end product, the packages: installing a port first creates a package and then installs it using the package tools. Packages are built in bulk by the OpenBSD team and provided for download with each release. OpenBSD is also unique among the BSDs in that the ports and base operating system are developed and released together for each version: this means that the ports or packages released with, for example, 3.7 are not suitable for use with 3.6 and vice versa, a policy which lends a great deal of stability to the development process, but means that the software in ports for the latest OpenBSD release can lag somewhat from the latest version available from the author.

Around the time of the OpenBSD 2.7 release, the original mascot, a BSD daemon
BSD Daemon

The BSD daemon, nicknamed Beastie, is the generic mascot of BSD operating systems....
 with a trident
Trident

A trident , also called a leister or gig, is a three-tine spear. It is used for spear fishing and was formerly also a military weapon....
 and halo
Halo (religious iconography)

A halo is a ring of light that surrounds a person in art. They are often used in religious works to depict holy or sacred figures, and have at various periods also been used in images of rulers or heroes....
, was replaced by Puffy, traditionally said to be a pufferfish
Pufferfish

Tetraodontidae is a family of primarily marine and estuarine fish. The family includes many familiar species which are variously called puffers, balloonfish, blowfish, bubblefish, globefish, swellfish, toadfish, and toadies....
. In fact pufferfish do not possess spikes and images of Puffy are closer to a similar species, the porcupinefish
Porcupinefish

Porcupinefish are fish of the family Diodontidae, , also commonly called blowfish .They are sometimes confused with pufferfish....
. Puffy was selected because of the Blowfish encryption algorithm used in OpenSSH and the strongly defensive image of the porcupinefish with its spikes to deter predators. He quickly became very popular, mainly because of the appealing image of the fish and his distinction from the BSD daemon, also used by FreeBSD, and the horde of daemons then used by NetBSD. Puffy made his first public appearance in OpenBSD 2.6 and, since then, has appeared in a number of guises on tee-shirts
T-shirt

A T-shirt is a shirt which is pulled on over the head to cover most of a person's torso. A T-shirt is usually buttonless, collarless, and pocketless, with a round neck and short sleeves....
 and posters. These have included Puffiana Jones, the famed hackologist and adventurer, seeking out the Lost RAID; Puffathy, a little Alberta girl, who must work with Taiwan
Taiwan

Taiwan is an island in East Asia. "Taiwan" is also commonly used to refer to the country governed by the Republic of China and to the ROC itself, which governs the island of Taiwan, Orchid Island and Green Island, Taiwan in the Pacific Ocean off the Taiwan coast, the Penghu islands in the Taiwan Strait, and Kinmen and the Matsu Islands...
 to save the day; Sir Puffy of Ramsay, a freedom fighter who, with Little Bob of Beckley, took from the rich and gave to all; and Puff Daddy, famed rapper and political icon.

After a number of releases, OpenBSD has become notorious for its catchy songs and interesting and often comical artwork. The promotional material of early OpenBSD releases did not have a cohesive theme or design but, starting with OpenBSD 3.0, the CD-ROMs, release songs, posters and tee-shirts for each release have been produced with a single style and theme, sometimes contributed to by Ty Semaka of the Plaid Tongued Devils
Plaid Tongued Devils

The Plaid Tongued Devils are a Canada musical group. It started as an alternative country duet with singer Ty Semaka and guitarist Alan Kolodziejzyk in 1990 and has been a 5 piece since 1992....
. At first they were done lightly and only intended to add humour but, as the concept has evolved, they have become a part of OpenBSD advocacy
Operating system advocacy

Operating system advocacy is the practice of attempting to increase the awareness and improve the perception of a computer operating system. The motivation behind this may be to increase the number of users of a system, to assert the superiority of one choice over another or out of brand loyalty, pride in an operating system's abilities, or t...
, with each release expanding a moral or political point important to the project, often through parody
Parody

A parody , in contemporary usage, is a work created to mock, comment on, or poke fun at an original work, its subject, or author, or some other target, by means of humorous, satiric or ironic imitation....
. Past themes have included: in OpenBSD 3.8, the Hackers of the Lost RAID, a parody of Indiana Jones
Indiana Jones

Dr. Henry Walton "Indiana" Jones, Jr. is a fictional character adventurer, soldier, professor of archaeology, and the main protagonist of the Indiana Jones franchise....
 linked to the new RAID tools featured as part of the release; The Wizard of OS, making its debut in OpenBSD 3.7, based on the work of Pink Floyd
Pink Floyd

Pink Floyd are an English Rock music band who initially earned recognition for their psychedelic rock and space rock music, and later, as they evolved, for their progressive rock music....
 and a parody of The Wizard of Oz
The Wizard of Oz (1939 film)

The Wizard of Oz is a 1939 in film Cinema of the United States musical film-fantasy film mainly directed by Victor Fleming and based on the 1900 Children's literature novel The Wonderful Wizard of Oz by L....
 related to the project's recent wireless
Wireless

Wireless communication is the transfer of information over a distance without the use of electrical conductors or "wires". The distances involved may be short or long ....
 work; and OpenBSD 3.3's Puff the Barbarian, including an 80s rock-style song and parody of Conan the Barbarian
Conan the Barbarian

Conan the Barbarian is a fictional character often associated with the Fantasy subgenres sword and sorcery . This antiheroic character has been credited with being the most famous fictional barbarian, and one of the most well known iconic figures in American fantasy....
, alluding to open documentation.

In addition to the slogans used on tee-shirts and posters for releases, the project occasionally produces other material: over the years, catchphrases
Catch phrase

A catch phrase is a phrase or expression recognized by its repeated utterance. Such memetic phrases often originate in popular culture and in the arts, and typically spread through a variety of mass media , as well as word of mouth....
 have included "Sending script kiddie
Script kiddie

In hacker culture, a script kiddie, occasionally script bunny, skiddie, script kitty, script-running juvenile , or similar, is a derogatory term used to describe those who use scripts or programs developed by others to attack computer systems and networks....
s to /dev/null
/dev/null

In Unix-like operating systems, /dev/null or the null device is a special file that discards all data written to it , and provides no data to any process that reads from it ....
 since 1995," "Functional, secure, free - choose 3," "Secure by default," and a few insider slogans, only available on tee-shirts made for developer gatherings, such as "World class security for much less than the price of a cruise missile
Cruise missile

A cruise missile is a guided missile missile that carries an explosive payload and uses a lifting wing and a propulsion system, usually a jet engine, to allow sustained flight; it is essentially a flying bomb....
" and a crusty old octopus proclaiming "Shut up and hack!"

Books


A number of books on OpenBSD have been published, including:

  • by Jacek Artymiak. ISBN 83-916651-8-6.
  • by Jacek Artymiak. ISBN 83-916651-1-9.
  • by Yanek Korff, Paco Hope and Bruce Potter. ISBN 0-596-00626-8.
  • Absolute OpenBSD, Unix for the Practical Paranoid
    Absolute OpenBSD

    Absolute OpenBSD, UNIX for the Practical Paranoid is book about the Unix-like OpenBSD operating system, written by Michael W. Lucas, author of Absolute BSD and Cisco Routers for the Desperate....
     by Michael W. Lucas. ISBN 1-886411-99-9.
  • by Brandon Palmer and Jose Nazario. ISBN 0-321-19366-0.
  • published by Reed Media Services. ISBN 0-9790342-0-5.
  • by Wes Sonnenreich and Tom Yates. ISBN 0-471-35366-3.
  • by Jem Matzan. ISBN 0-596-51015-2.
  • by Peter N.M. Hansteen ISBN-13 978-1-59327-165-7.


See also


  • BSD Authentication
    BSD Authentication

    BSD Authentication, otherwise known as BSD Auth, is an authentication framework and software API employed by some Unix-like operating systems, specifically OpenBSD and BSD/OS, and accompanying System software and Application software software such as OpenSSH and Apache HTTP Server....
  • BSD and GPL licensing
  • Comparison of BSD operating systems
    Comparison of BSD operating systems

    There are a number of Unix-like operating systems based on or descended from the Berkeley Software Distribution series of Unix variants....
  • Comparison of operating systems
    Comparison of operating systems

    These tables compare general and technical information for a number of widely used and currently available operating systems.Due to the large number and variety of available Linux distributions, they are all grouped under a single entry; see comparison of Linux distributions for a detailed comparison....
  • Comparison of open source operating systems
    Comparison of open source operating systems

    These tables compare the various free software / open-source software operating systems. Where not all of the non-end-of-life versions support a feature, the first version which support it is listed....
  • Hackathon
    Hackathon

    A hackathon, a Hacker neologism, is an event when programmers meet to do collaborative computer programming. These events are typically between several days and a week in length....
  • KAME project
    KAME project

    The KAME project was a joint effort of six organizations in Japan which aimed to provide a free IPv6 and IPsec protocol stack implementation for variants of the Berkeley Software Distribution Unix computer operating-system....
  • POSSE project
    POSSE project

    The Portable Open Source Security Elements, or POSSE project, was a co-operative venture between the University of Pennsylvania Distributed Systems Laboratory, the OpenBSD project and others....
  • Security focused operating system
    Security focused operating system

    This is an alphabetical list of operating systems with a sharp computer security focus. Their order does not imply rank.In our context, "Security-focused" means that the project is devoted to increasing the security as a major goal....


External links

  • [irc://irc.freenode.net/openbsd #openbsd] on freenode