Annotation of www/33.html, Revision 1.35
1.27 david 1: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
1.1 miod 2: <html>
3: <head>
4: <title>OpenBSD 3.3 Release</title>
5: <meta name="resource-type" content="document">
6: <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
7: <meta name="description" content="OpenBSD 3.3">
8: <meta name="keywords" content="openbsd,main">
9: <meta name="distribution" content="global">
10: <meta name="copyright" content="This document copyright 2003 by OpenBSD.">
11: </head>
12:
13: <body bgcolor="#ffffff" text="#000000" link="#24248E">
14:
15: <a href="index.html">
16: <img alt="[OpenBSD]" height="30" width="141" hspace="24" src="images/smalltitle.gif" border="0"></a>
17: <hr>
18:
19: <p>
1.5 deraadt 20: <a href="images/Barbarian.gif">
21: <img align="left" width="255" height="343" hspace="24"
22: src="images/Barbarian.gif" alt="OpenBSD 3.3 logo"></a>
1.1 miod 23: <h2><font color="#0000e0">The OpenBSD 3.3 Release:</font></h2>
24: <p>
25:
26: Released May 1, 2003<br>
27: Copyright 1997-2003, Theo de Raadt.<br>
28: <font color="#e00000">ISBN 0-9731791-1-2</font>
1.32 deraadt 29: <br>
30: <a href="lyrics.html#33">3.3 Song: "Puff the Barbarian"</a>
1.1 miod 31: <p>
32:
33: <a href="#new">What's New</a><br>
34: <a href="#install">How to install</a><br>
35: <a href="#ports">How to use the ports tree</a><br>
36: <a href="orders.html">Ordering a CD set</a><br>
37:
38: <p>
39: <h3><font color="#0000e0">
40: To get the files for this release:
41: <ul>
42: <li>Order a CDROM from our <a href="orders.html">ordering system</a>.
43: <li>See the information on <a href="ftp.html">The FTP page</a> for
44: a list of mirror machines.
45: <li>Go to the <font color="#e00000">pub/OpenBSD/3.3/</font> directory on
46: one of the mirror sites.
47: <li>Briefly read the rest of this document.
1.31 david 48: <li>Have a look at <a href="errata33.html">The 3.3 Errata page</a> for a list
1.1 miod 49: of bugs and workarounds.
1.14 deraadt 50: <li>See a <a href="plus33.html">detailed log of changes</a> between the
1.1 miod 51: 3.2 and 3.3 releases.
52: </ul>
53: </font></h3>
54: <br clear=all>
55: <br>
56: <p>
57:
58: <strong>Note:</strong> All applicable copyrights and credits can be found
1.29 pb 59: in the applicable file sources found in the files src.tar.gz, sys.tar.gz,
1.1 miod 60: XF4.tar.gz, or in the files fetched via ports.tar.gz. The distribution
61: files used to build packages from the ports.tar.gz file are not included on
62: the CDROM because of lack of space.
63: <p>
64:
65: <a name="new"></a>
66: <hr>
67: <p>
68: <h3><font color="#0000e0">What's New</font></h3>
69: <p>
70: This is a partial list of new features and systems included in OpenBSD 3.3.
1.18 deraadt 71: For a comprehensive list, see the <a href="plus33.html">changelog</a> leading
1.1 miod 72: to 3.3.
73: <p>
74:
75: <ul>
76: <li>Integration of the
1.30 david 77: <a href="http://www.research.ibm.com/trl/projects/security/ssp/">ProPolice</a>
1.26 deraadt 78: stack protection technology, by Hiroaki Etoh, into the system
79: compiler. This protection is enabled by default. With this change,
80: function prologues are modified to rearrange the stack: a random
81: canary is placed before the return address, and buffer variables are
82: moved closer to the canary so that regular variables are below, and
83: harder to smash. The function epilogue then checks if the canary is
84: still intact. If it is not, the process is terminated. This change
85: makes it very hard for an attacker to modify the return address used
86: when returning from a function.
1.2 deraadt 87: <p>
1.1 miod 88:
1.22 deraadt 89: <li>W^X (pronounced: "W xor X") on architectures capable of
1.10 deraadt 90: pure execute-bit support in the MMU (sparc, sparc64, alpha,
91: hppa). This is a fine-grained memory permissions layout, ensuring that
92: memory which can be written to by application programs can not be
1.22 deraadt 93: executable at the same time and vice versa. This raises the bar on
94: potential buffer overflows and other attacks: as a result, an attacker
95: is unable to write code anywhere in memory where it can be executed.
1.26 deraadt 96: (NOTE: i386 and powerpc do not support W^X in 3.3; however, 3.3-current
97: already supports it on i386, and both these processors are expected to
98: support this change in 3.4).
1.1 miod 99: <p>
100:
1.2 deraadt 101: <li>Still more reduction in setuid and setgid binaries, and more chroot
1.22 deraadt 102: use throughout the system. While some programs are still setuid or
103: setgid, almost all of them grab a resource and then quickly revoke
104: privilege.
1.1 miod 105: <p>
106:
1.22 deraadt 107: <li>The X window server and xconsole now use privilege separation,
108: for better security. Also, xterm has been modified to do privilege
109: revocation. xdm runs as a special user and group, to further constrain
110: what might go wrong.
1.1 miod 111: <p>
112:
113: <li>As usual, improvements to the documentation, notably the man pages and
1.7 jsyn 114: the Web FAQ. An increasingly large part of the website is available in several
1.1 miod 115: languages.
116: <p>
117:
118: <li>More complete collection and better tested set of "ports".
119: setuid/setgid ports have been significantly reduced as well. Many of the
120: ones that remain setuid have been modified to revoke privileges as early
121: as possible.
122: <p>
123:
124: <li>Over 2000 pre-built and tested packages.
125: <p>
126:
127: <li>Significant improvements to the pthread library.
128: <p>
129:
130: <li>An incredible amount of enhancements and stability improvements to
131: our packet filter, <a
132: href="http://www.openbsd.org/cgi-bin/man.cgi?query=pf&sektion=4">pf</a>,
1.8 henning 133: including:
1.1 miod 134: <ul>
1.17 deraadt 135: <li>Queue, a bandwidth management system (uses altq underneath)
136: <li>Anchors, allowing subrulesets which can be loaded and modified independently
137: <li>Tables, a very efficient way for large address lists in rules
138: <li>Address pools, redirect/NAT to multiple addresses and thus load balancing
139: <li>Configuration language has been made much more flexible
140: <li>TCP window scaling support
141: <li>Full CIDR support
142: <li>Early checksum verification return on invalid packets
143: <li>Performance boost: large rulesets load much faster now
1.22 deraadt 144: <li><a href="http://www.openbsd.org/cgi-bin/man.cgi?query=spamd">spamd</a>,
145: a spam deferral daemon, which SMTP connections can be redirected to.
146: This daemon handles connections based on black lists and white lists,
147: tar-pits the connections, and ensures that the spammer knows why their
148: mail has not been accepted.
1.1 miod 149: </ul>
1.11 jason 150:
151: <p>
152:
153: <li>Much improved <a href="sparc64.html">sparc64</a> support: support for
1.13 miod 154: more models and several major bugs eradicated.
1.8 henning 155:
1.1 miod 156: <p>
157:
158: <li>The system includes the following major components from outside suppliers:
159: <ul>
160: <li>XFree86 4.2.1 (and i386 contains 3.3.X servers also, thus providing support for all chipsets)
1.4 miod 161: <li>Gcc 2.95.3 (+ patches)
162: <li>Perl 5.8.0 (+ patches)
1.3 henning 163: <li>Apache 1.3.27, mod_ssl 2.8.12, DSO support (+ patches)
1.1 miod 164: <li>OpenSSL 0.9.7beta3 (+ patches)
1.4 miod 165: <li>Groff 1.15
1.24 miod 166: <li>Sendmail 8.12.9
1.4 miod 167: <li>Bind 9.2.2 (+ patches)
1.23 margarid 168: <li>Lynx 2.8.2rel.1 with HTTPS support added (+ patches)
1.4 miod 169: <li>Sudo 1.6.7
170: <li>Ncurses 5.2
1.1 miod 171: <li>Latest KAME IPv6
1.12 hin 172: <li>KTH Kerberos 1.1.1
1.1 miod 173: <li>Heimdal 0.4e (+ patches)
174: <li>OpenSSH 3.6
175: </ul>
176: <p>
177:
178: <li>Many improvements for security and reliability (look for the red
1.18 deraadt 179: print in the <a href="plus33.html">complete changelog</a>).
1.1 miod 180: <p>
1.11 jason 181: <li> and much more.
182:
1.1 miod 183: </ul>
184:
185: <a name="install"></a>
186: <hr>
187: <p>
188: <h3><font color="#0000e0">How to install</font></h3>
189: <p>
190: Following this are the instructions which you would have on a piece of
191: paper if you had purchased a CDROM set instead of doing an alternate
192: form of install. The instructions for doing an ftp (or other style
193: of) install are very similar; the CDROM instructions are left intact
194: so that you can see how much easier it would have been if you had
195: purchased a CDROM instead.
196: <p>
197:
198: <hr>
1.15 drahn 199: Please refer to the following files on the three CDROMs or ftp mirror for
200: extensive details on how to install OpenBSD 3.3 on your machine:
1.1 miod 201: <p>
202: <ul>
203: <li> CD1:3.3/i386/INSTALL.i386
204: <p>
205: <li> CD2:3.3/macppc/INSTALL.macppc
206: <li> CD2:3.3/vax/INSTALL.vax
207: <p>
208: <li> CD3:3.3/sparc/INSTALL.sparc
209: <li> CD3:3.3/sparc64/INSTALL.sparc64
1.15 drahn 210: <p>
211: <li> FTP:.../OpenBSD/3.3/alpha/INSTALL.alpha
212: <li> FTP:.../OpenBSD/3.3/hp300/INSTALL.hp300
1.20 mickey 213: <li> FTP:.../OpenBSD/3.3/hppa/INSTALL.hppa
1.15 drahn 214: <li> FTP:.../OpenBSD/3.3/mac68k/INSTALL.mac68k
215: <li> FTP:.../OpenBSD/3.3/mvme68k/INSTALL.mvme68k
1.1 miod 216: </ul>
217: <hr>
218:
219: <p>
220: Quick installer information for people familiar with OpenBSD, and the
221: use of the "disklabel -E" command. If you are at all confused when
222: installing OpenBSD, read the relevant INSTALL.* file as listed above!
223: <p>
224:
225: <h3><font color="#e00000">OpenBSD/i386:</font></h3>
226: <ul>
227: Play with your BIOS options to enable booting from a CD. The OpenBSD/i386
228: release is on CD1. If your BIOS does not support booting from CD, you will need
229: to create a boot floppy to install from. To create a boot floppy write
230: <i>CD1:3.3/i386/floppy33.fs</i> to a floppy and boot via the floppy drive.
231:
232: <p>
233: Use <i>CD1:3.3/i386/floppyB33.fs</i> instead for greater scsi controller
234: support, or <i>CD1:3.3/i386/floppyC33.fs</i> for better laptop support.
235:
236: <p>
237: If you are planning on dual booting OpenBSD with another OS, you will need to read the included INSTALL.i386 document.
238:
239: <p>
240: To make a boot floppy under MS-DOS, use the "rawrite" utility located
241: at <i>CD:/3.3/tools/rawrite.exe</i>. To make the boot floppy under a Unix OS, use the <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=dd&sektion=1">dd(1)</a> utility. The following is an example usage of <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=dd&sektion=1">dd(1)</a>, where the device could be "floppy", "rfd0c", or "rfd0a".
242:
243: <ul><pre>
244: # <strong>dd if=<file> of=/dev/<device> bs=32k</strong>
245: </pre></ul>
246:
247: <p>
1.18 deraadt 248: Make sure you use properly formatted perfect floppies with NO BAD BLOCKS or your install will most likely fail. For more information on creating a boot floppy and installing OpenBSD/i386 please refer to <a href="faq/faq4.html#MkFlop">FAQ4.1</a>.
1.1 miod 249: </ul>
250:
251: <p>
252: <h3><font color="#e00000">OpenBSD/macppc:</font></h3>
253: <ul>
254: Put the CD2 in your CDROM drive and poweron your machine while holding down the
255: <i>C</i> key until the display turns on and shows <i>OpenBSD/macppc boot</i>.
256:
257: <p>
258: Alternatively, at the Open Firmware prompt, enter <i>boot cd:,ofwboot
259: /3.3/macppc/bsd.rd</i>
260: </ul>
261:
262: <p>
263: <h3><font color="#e00000">OpenBSD/vax:</font></h3>
264: <ul>
265: Boot over the network via mopbooting as described in INSTALL.vax.
266: </ul>
267:
268: <p>
269: <h3><font color="#e00000">OpenBSD/sparc:</font></h3>
270: <ul>
271: The 3.3 release of OpenBSD/sparc is located on CD3. To boot off of this CD you can use one of the two commands listed below, depending on the version of your ROM.
272:
273: <ul><pre>
274: > <strong>boot cdrom 3.3/sparc/bsd.rd</strong>
275: or
276: > <strong>b sd(0,6,0)3.3/sparc/bsd.rd</strong>
277: </pre></ul>
278:
279: <p>
280: If your sparc does not have a CD drive, you can alternatively boot from floppy.
1.18 deraadt 281: To do so you need to write "CD3:3.3/sparc/floppy33.fs" to a floppy. For more information see <a href="faq/faq4.html#MkFlop">FAQ4.1</a>. To boot from the floppy use one of the two commands listed below, depending on the version of your ROM.
1.1 miod 282:
283: <ul><pre>
284: > <strong>boot floppy</strong>
285: or
286: > <strong>boot fd()</strong>
287: </pre></ul>
288:
289: <p>
290: Make sure you use a properly formatted floppy with NO BAD BLOCKS or your install will most likely fail.
291:
292: <p>
293: If your sparc doesn't have a floppy drive nor a CD drive, you can either
294: setup a bootable tape, or install via network, as told in the
295: INSTALL.sparc file.
296: </ul>
297:
298: <p>
299: <h3><font color="#e00000">OpenBSD/sparc64:</font></h3>
300: <ul>
301: Put the CD3 in your CDROM drive and type <i>boot cdrom</i>.
302:
303: <p>
304: If this doesn't work, or if you don't have a CDROM drive, you can write
305: <i>CD3:3.3/sparc64/floppy33.fs</i> to a floppy and boot it with <i>boot
306: floppy</i>.<br>
307: Make sure you use a properly formatted floppy with NO BAD BLOCKS or your install will most likely fail.
308:
309: <p>
310: You can also write <i>CD3:3.3/sparc64/miniroot33.fs</i> to the swap partition on
311: the disk and boot with <i>boot disk:b</i>.
312:
313: <p>
314: If nothing works, you can boot over the network as described in INSTALL.sparc64
315: </ul>
316:
317: <p>
1.15 drahn 318: <h3><font color="#e00000">OpenBSD/alpha:</font></h3>
319: <ul>
320: <p>Write <i>FTP:3.3/alpha/floppy33.fs</i> or
321: <i>FTP:3.3/alpha/floppyB33.fs</i> (depending on your machine) to a diskette and
322: enter <i>boot dva0</i>. Refer to INSTALL.alpha for more details.
323:
324: <p>
325: Make sure you use a properly formatted floppy with NO BAD BLOCKS or your install will most likely fail.
326:
327: </ul>
328:
329: <p>
330: <h3><font color="#e00000">OpenBSD/hp300:</font></h3>
331: <ul>
332: <p>
333: Boot over the network by following the instructions in INSTALL.hp300.
334: </ul>
335:
336: <p>
1.28 miod 337: <h3><font color="#e00000">OpenBSD/hppa:</font></h3>
338: <ul>
339: <p>
340: Boot over the network by following the instructions in INSTALL.hppa or the
341: <a href="hppa.html#netboot">hppa platform page</a>.
342: </ul>
343:
344: <p>
1.15 drahn 345: <h3><font color="#e00000">OpenBSD/mac68k:</font></h3>
346: <ul>
347: <p>
348: Boot MacOS as normal and partition your disk with the appropriate A/UX
349: configurations. Then, extract the Macside utilities from
1.25 nick 350: <i>FTP:3.3/mac68k/utils</i> onto your hard disk. Run Mkfs to create your
1.15 drahn 351: filesystems on the A/UX partitions you just made. Then, use the
1.25 nick 352: "BSD/Mac68k Installer" to copy all the sets in <i>FTP:3.3/mac68k/</i> onto your
353: partitions. Finally, you will be ready to configure the "BSD/Mac68k
354: Booter" with the location of your kernel and boot the system.
1.15 drahn 355: </ul>
356:
357: <p>
358: <h3><font color="#e00000">OpenBSD/mvme68k:</font></h3>
359: <ul>
360: <p>
361: You can create a bootable installation tape or boot over the network.<br>
362: The network boot requires a MVME68K BUG version that supports the <i>NIOT</i>
363: and <i>NBO</i> debugger commands. Follow the instructions in INSTALL.mvme68k
364: for more details.
365: </ul>
366:
367: <p>
1.1 miod 368: <h3><font color="#e00000">Notes about the source code:</font></h3>
369: <ul>
370: src.tar.gz contains a source archive starting at /usr/src. This file
371: contains everything you need except for the kernel sources, which are
372: in a separate archive. To extract:
373: <p>
374: <ul><pre>
375: # <strong>mkdir -p /usr/src</strong>
376: # <strong>cd /usr/src</strong>
377: # <strong>tar xvfz /tmp/src.tar.gz</strong>
378: </pre></ul>
379: <p>
1.29 pb 380: sys.tar.gz contains a source archive starting at /usr/src/sys.
1.1 miod 381: This file contains all the kernel sources you need to rebuild kernels.
382: To extract:
383: <p>
384: <ul><pre>
385: # <strong>mkdir -p /usr/src/sys</strong>
386: # <strong>cd /usr/src</strong>
1.29 pb 387: # <strong>tar xvfz /tmp/sys.tar.gz</strong>
1.1 miod 388: </pre></ul>
389: <p>
390: Both of these trees are a regular CVS checkout. Using these trees it
391: is possible to get a head-start on using the anoncvs servers as
1.18 deraadt 392: described <a href="anoncvs.html">here</a>.
1.1 miod 393: Using these files
394: results in a much faster initial CVS update than you could expect from
395: a fresh checkout of the full OpenBSD source tree.
396: <p>
397: </ul>
398: <a name="ports"></a>
399: <hr>
400: <p>
401: <h3><font color="#0000e0">Ports Tree</font></h3>
402: <p>
403: A ports tree archive is also provided. To extract:
404: <p>
405: <ul><pre>
406: # <strong>cd /usr</strong>
407: # <strong>tar xvfz /tmp/ports.tar.gz</strong>
408: # <strong>cd ports</strong>
409: </pre></ul>
410: <p>
411: The <i>ports/</i> subdirectory is a checkout of the OpenBSD ports tree. Go
1.34 jasper 412: read the <a href="faq/faq15.html">ports</a> page
1.1 miod 413: if you know nothing about ports
414: at this point. This text is not a manual of how to use ports.
415: Rather, it is a set of notes meant to kickstart the user on the
416: OpenBSD ports system.
417: <p>
418: Certainly, the OpenBSD ports system is not complete. It is doubtful it
419: will ever be. However, it is growing very fast and getting more stable.
420: Almost all ports provided with this release should build without problems
421: on most architectures (over 2000 packages build on i386, for instance).
422: <p>
423: The <i>ports/</i> directory represents a CVS (see the manpage for
424: <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=cvs&apropos=0&sektion=1&manpath=OpenBSD+Current&arch=i386&format=html">
425: cvs(1)</a> if
426: you aren't familiar with CVS) checkout of our ports. As with our complete
427: source tree, our ports tree is available via anoncvs. So, in
428: order to keep current with it, you must make the <i>ports/</i> tree
429: available on a read-write medium and update the tree with a command
430: like:
431: <p>
432: <ul><pre>
1.33 deraadt 433: # <strong>cd [portsdir]/; cvs -d anoncvs@server.openbsd.org:/cvs update -Pd -rOPENBSD_3_3</strong>
1.1 miod 434: </pre></ul>
435: <p>
436: [Of course, you must replace the local directory and server name here
437: with the location of your ports collection and a nearby anoncvs
438: server.]
439: <p>
440: Note that most ports are available as packages through ftp. Updated
441: packages for the 3.3 release will be made available if problems arise.
442: <p>
443: If you're interested in seeing a port added, would like to help out, or just
444: would like to know more, the mailing list ports@openbsd.org is a good
445: place to know.
446: <p>
447:
448: </body>
449: </html>