Secure by default
||This article's tone or style may not reflect the encyclopedic tone used on Wikipedia. (December 2007) (Learn how and when to remove this template message)|
Security by default, in software, means that the default configuration settings are the most secure settings possible, which are not necessarily the most user friendly settings. In many cases, security and user friendliness are evaluated based on both risk analysis and usability tests. This leads to the discussion of what the most secure settings actually are. As a result, the precise meaning of "secure by default" remains undefined.
In a network operating system, this typically means first and foremost that there are no listening INET(6) domain sockets after installation. That is, no open network ports. This can be checked on the local machine with a tool such as netstat, and remotely with a port scanner such as nmap. As a general rule, a secure network, is only as secure as the least secure node in the entire network.
If a program uses secure configuration settings by default, the user will be better protected. However, not all users will care about security and may be obstructed by secure settings. A common example is whether or not blank passwords are allowed for login. Not everyone can, or is willing to, type or memorize a password.
Another way to secure a program or system is through abstraction, where the user is presented an interface in which the user cannot (or is discouraged to) cause accidental data loss. This however, can lead to less functionality or reduced flexibility. Having user control preferences does not typically cause this, but at the cost of having a larger part of the user interface for configuration controls.
Some servers or devices that have an authentication system, have default usernames and passwords. If not properly changed, anyone who knows the default configuration can successfully authenticate. For non-unique defaults, this practice would violate the principle of 'security by default'.
OpenBSD claims to be the only operating system that is fully secure by default. This, however, does not mean it's inherently the most secure operating system, because that depends on the definition of an operating system. There are many operating systems that are not capable of networking with other systems. Thus, considering the amount of network-based security compromises today, one can argue such an operating system is more secure. OpenBSD is a network operating system.
Ubuntu is a GNU/Linux distribution aimed at the desktop user that by default hides the administrative account and only allows the first user to gain administrative privileges for certain system tasks (such as installing system updates, and managing disk drives). Mac OS X does not hide this account, but users with limited rights can still fully utilise the system.
Microsoft Windows and Linspire have been criticised for allowing the user to have administrative privileges without warning—a potential threat to the system. Windows Vista attempts to remedy this situation through its User Account Control system.