-
Notifications
You must be signed in to change notification settings - Fork 42
/
53.html
835 lines (744 loc) · 41.4 KB
/
53.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
<!doctype html>
<html lang=en id=release>
<meta charset=utf-8>
<title>OpenBSD 5.3</title>
<meta name="description" content="OpenBSD 5.3">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" href="openbsd.css">
<link rel="canonical" href="https://www.openbsd.org/53.html">
<h2 id=OpenBSD>
<a href="index.html">
<i>Open</i><b>BSD</b></a>
5.3
</h2>
<table>
<tr>
<td>
<a href="images/RoyPuffy.jpg">
<img width="227" height="343" src="images/RoyPuffy.jpg" alt="Roy Puffy"></a>
<td>
Released May 1, 2013<br>
Copyright 1997-2013, Theo de Raadt.<br>
<cite class=isbn>ISBN 978-0-9881561-1-1</cite>
<br>
5.3 Song: <a href="lyrics.html#53">"Blade Swimmer"</a>
<br>
<br>
<ul>
<li>See the information on <a href="ftp.html">the FTP page</a> for
a list of mirror machines.
<li>Go to the <code class=reldir>pub/OpenBSD/5.3/</code> directory on
one of the mirror sites.
<li>Have a look at <a href="errata53.html">The 5.3 Errata page</a> for a list
of bugs and workarounds.
<li>See a <a href="plus53.html">detailed log of changes</a> between the
5.2 and 5.3 releases.
</ul>
<p>
All applicable copyrights and credits are in the src.tar.gz,
sys.tar.gz, xenocara.tar.gz, ports.tar.gz files, or in the
files fetched via <code>ports.tar.gz</code>.
</table>
<hr>
<section id=new>
<h3>What's New</h3>
<p>
This is a partial list of new features and systems included in OpenBSD 5.3.
For a comprehensive list, see the <a href="plus53.html">changelog</a> leading
to 5.3.
<p>
<ul>
<li>Improved hardware support, including:
<ul>
<li>New driver <a href="https://man.openbsd.org/oce.4">oce(4)</a> for Emulex OneConnect 10Gb Ethernet adapters.
<li>New driver <a href="https://man.openbsd.org/rtsx.4">rtsx(4)</a> for the Realtek RTS5209 card reader.
<li>New driver <a href="https://man.openbsd.org/mfii.4">mfii(4)</a> for the LSI Logic MegaRAID SAS Fusion controllers.
<li>New driver <a href="https://man.openbsd.org/smsc.4">smsc(4)</a> for SMSC LAN95xx 10/100 USB Ethernet adapters.
<li>New drivers for Toradex OAK USB sensors: <a href="https://man.openbsd.org/uoaklux.4">uoaklux(4)</a> (illuminance), <a href="https://man.openbsd.org/uoakrh.4">uoakrh(4)</a> (temperature and relative humidity) and <a href="https://man.openbsd.org/uoakv.4">uoakv(4)</a> (+/- 10V 8channel ADC).
<li>New drivers for <a href="https://man.openbsd.org/virtio.4">virtio(4)</a> devices: <a href="https://man.openbsd.org/vio.4">vio(4)</a> (network), <a href="https://man.openbsd.org/vioblk.4">vioblk(4)</a> (block devices, attaching as SCSI disks) and <a href="https://man.openbsd.org/viomb.4">viomb(4)</a> (memory ballooning).
<li>Support for Adaptec 39320LPE added to <a href="https://man.openbsd.org/ahd.4">ahd(4)</a>.
<li>Broadcom 5718/5719/5720 Gigabit Ethernet devices supported in <a href="https://man.openbsd.org/bge.4">bge(4)</a>.
<li>Intel X540-based 10Gb Ethernet devices supported in <a href="https://man.openbsd.org/ix.4">ix(4)</a>.
<li>Support for SFP+ hot-plug (82599) and various other improvements in <a href="https://man.openbsd.org/ix.4">ix(4)</a>.
<li>TX interrupt mitigation, hardware VLAN tagging and checksum offload reduce CPU use in <a href="https://man.openbsd.org/vr.4">vr(4)</a>.
<li>Baby jumbo frames supported in <a href="https://man.openbsd.org/vr.4">vr(4)</a> and <a href="https://man.openbsd.org/sis.4">sis(4)</a> useful for e.g. MPLS, <a href="https://man.openbsd.org/vlan.4">vlan(4)</a> tag stacking (QinQ) and RFC4638 <a href="https://man.openbsd.org/pppoe.4">pppoe(4)</a>.
<li>TCP RX Checksum offload in <a href="https://man.openbsd.org/gem.4">gem(4)</a>.
<li>Improvements for NICs using 82579/pch2 in <a href="https://man.openbsd.org/em.4">em(4)</a>.
<li>Flow control is now supported on <a href="https://man.openbsd.org/bnx.4">bnx(4)</a> 5708S/5709S adapters, <a href="https://man.openbsd.org/gem.4">gem(4)</a> and <a href="https://man.openbsd.org/jme.4">jme(4)</a>.
<li>Power-saving clients supported in hostap mode with <a href="https://man.openbsd.org/acx.4">acx(4)</a> and <a href="https://man.openbsd.org/athn.4">athn(4)</a>.
<li>A cause of RT2661 <a href="https://man.openbsd.org/ral.4">ral(4)</a> wedging in hostap mode was fixed.
<li><a href="https://man.openbsd.org/iwn.4">iwn(4)</a> supports additional devices (Centrino Advanced-N 6235 and initial support for Centrino Wireless-N 1030).
<li>Improvements to <a href="https://man.openbsd.org/ahci.4">ahci(4)</a>.
<li>Support for the fixed-function performance counter on newer x86 chips with constant time stamp counters.
<li>Elantech touchpads supported in <a href="https://man.openbsd.org/pms.4">pms(4)</a> and <a href="https://man.openbsd.org/synaptics.4">synaptics(4)</a>.
<li>Support for "physical devices" on skinny <a href="https://man.openbsd.org/mfi.4">mfi(4)</a> controllers.
<li>VMware emulated SAS adapters supported by <a href="https://man.openbsd.org/mpi.4">mpi(4)</a>.
<li>Support for Intel's Supervisor Mode Execution Protection (SMEP) and Supervisor Mode Access Prevention (SMAP) features on i386 and amd64.
<li>Support for the RDRAND instruction to read the hardware random number generator on recent Intel processors.
<li>amd64 PCI memory extent changed to cover the whole 64-bit memory space; fixes erroneous extent allocation panic on IBM x3100.
<li><a href="https://man.openbsd.org/ulpt.4">ulpt(4)</a> can now upload firmware to certain HP LaserJet printers.
<li>Added stat clock to Loongson machines, improving accuracy of CPU usage statistics.
<li>CPU throttling supported on Loongson 2F.
<li>Support for Apple UniNorth and U3 AGP added to <a href="https://man.openbsd.org/agp.4">agp(4)</a>.
<li>DRM support for macppc.
</ul>
<p>
<li>Generic network stack improvements:
<ul>
<li>Restriction on writing to <a href="https://man.openbsd.org/trunk.4">trunk(4)</a> member interfaces relaxed; BPF can now write to interfaces directly (useful for LLDP).
<li>UDP support added to <a href="https://man.openbsd.org/sosplice.9">sosplice(9)</a> (zero-copy socket splicing).
<li>IPv6 autoconfprivacy is enabled by default (can be disabled per-interface with an <a href="https://man.openbsd.org/ifconfig.8">ifconfig(8)</a> flag).
<li><a href="https://man.openbsd.org/ifconfig.8">ifconfig(8)</a> <code>hwfeatures</code> displays the maximum MTU supported by the driver (indicating support for jumbo/baby-jumbo frames).
<li>Vastly improved IPsec v3 compatibility, including support for Extended Sequence Numbers in the AES-NI driver for AES-GCM and other modes.
</ul>
<p>
<li>Routing daemons and other userland network improvements:
<ul>
<li>OpenBSD now includes <a href="https://man.openbsd.org/npppd.8">npppd(8)</a>, a server-side daemon for L2TP, L2TP/IPsec, PPTP and PPPoE.
<li>New standalone <a href="https://man.openbsd.org/tftp-proxy.8">tftp-proxy(8)</a> to replace the old <a href="https://man.openbsd.org/inetd.8">inetd(8)</a>-based implementation.
<li>SNMPv3 supported in <a href="https://man.openbsd.org/snmpd.8">snmpd(8)</a>.
<li><a href="https://man.openbsd.org/bgpd.8">bgpd(8)</a> is more tolerant of unknown capabilities when bringing up a session (logs a warning rather than fails).
<li><a href="https://man.openbsd.org/bgpd.8">bgpd(8)</a> now handles client side of "graceful restart".
<li><a href="https://man.openbsd.org/bgpd.8">bgpd(8)</a> can now filter based on the NEXTHOP attribute.
<li>A stratum can now be assigned to hardware sensors in <a href="https://man.openbsd.org/ntpd.8">ntpd(8)</a>.
<li><a href="https://man.openbsd.org/authpf.8">authpf(8)</a> now supports the use of per-group rules files.
<li><a href="https://man.openbsd.org/ftp.1">ftp(1)</a> client now supports basic HTTP authentication as per RFC 2617 and 3986 like "ftp http[s]://user:pass@host/file".
<li><a href="https://man.openbsd.org/ftp.1">ftp(1)</a> client's mput command allows to upload a directory tree recursively using the -r switch.
<li><a href="https://man.openbsd.org/relayd.8">relayd(8)</a> has various improvements including additional scheduling algorithms (least-states, for redirections, and random/source-hash, for relays).
<li>The <a href="https://man.openbsd.org/iked.8">iked(8)</a> IKEv2 daemon supports NAT-T. (The isakmpd daemon for IKEv1 has supported this for a long time).
<li><a href="https://man.openbsd.org/iked.8">iked(8)</a> blocks IPv6 traffic unless there are v6 VPN flows; this is to prevent leakages as described in <a href="http://tools.ietf.org/html/draft-gont-opsec-vpn-leakages">draft-gont-opsec-vpn-leakages</a>.
</ul>
<p>
<li><a href="https://man.openbsd.org/dhclient.8">dhclient(8)</a> improvements:
<ul>
<li>dhclient-script eliminated, all configuration is done with ioctl's and routing sockets.
<li>interface configuration is much faster.
<li>HUP signals cause dhclient to restart; making it re-read the <a href="https://man.openbsd.org/dhclient.conf.5">dhclient.conf(5)</a> and <a href="https://man.openbsd.org/resolv.conf.tail.5">resolv.conf.tail(5)</a> files, and obtain a new lease.
<li>INIT, USR1, USR2 signals cause dhclient to exit after attempting to remove routes and addresses it configured.
<li><a href="https://man.openbsd.org/resolv.conf.5">resolv.conf(5)</a> is written only when the in-use default route was inserted by dhclient. Possible changes to the default route are detected and cause dhclient to write out resolv.conf when appropriate.
<li>interface hardware address changes are detected and cause dhclient to restart.
<li>dhclient.conf directive 'ignore' and command line option '-i' added, allowing the suppression of specific options offered by server.
<li>'-L' command line option added, allowing the creation of a complete record of the most recent offer and what we modified it to when binding the lease.
<li>rejected offers no longer prevent dhclient from trying recorded leases and going daemon.
<li>cleanup of routing tables when starting and exiting is more complete.
<li>log messages cleaned up and reduced.
<li>dhclient is automatically placed in the routing domain of the interface.
<li>incoming and outgoing packet buffers are separate, eliminating possible transmission of inappropriate packets when re-trying DISCOVER and REQUEST.
<li>resolv.conf.tail read only once, at startup.
<li>both OFFER and ACK packets that lack required options are rejected.
<li>file names passed to '-L' and '-l' are constrained to be regular files.
<li>bind success reported after binding complete, not when it is started.
<li>privileged process daemonizes, eliminating its controlling terminal.
<li>STDIN/STDOUT/STDERR no longer redirected to /dev/null when '-d' specified.
<li>all existing addresses on the interface are deleted when binding a new lease.
<li>leases which would cause routing problems because another interface is already configured with the same subnet are rejected.
<li>premature and repeated DISCOVER and/or REQUEST messages at startup are avoided.
<li>permanent ARP cache entries are no longer deleted during binding.
<li>allow empty lists of option names for 'ignore', 'request', and 'require' dhclient.conf directives, so lists can be reset in interface declarations.
<li><a href="https://man.openbsd.org/dhcpd.8">dhcpd(8)</a> and dhclient recognize the same list of dhcp options.
<li>hand-rolled IMSG implementation replaced with <a href="https://man.openbsd.org/imsg_init.3">imsg_init(3)</a> and related functions..
<li>hand-rolled date string construction replaced with <a href="https://man.openbsd.org/strftime.3">strftime(3)</a> invocations.
<li>hand-rolled '%m' option replaced with <a href="https://man.openbsd.org/strerror.3">strerror(3)</a> invocations.
<li>many other internal code improvements.
</ul>
<p>
<li><a href="https://man.openbsd.org/pf.4">pf(4)</a> improvements:
<ul>
<li> The <a href="https://man.openbsd.org/divert.4">divert(4)</a>
socket now supports the new IP_DIVERTFL socket option to control whether both inbound and outbound packets are diverted (the default) or only packets travelling in one direction.
<li>Sloppy state tracking (a special mode occasionally needed with asymmetric routing) now works correctly with ICMP.
<li>PF now restricts the fragment limit to protect against a misconfiguration running the kernel out of mbuf clusters.
</ul>
<p>
<li>OpenSMTPD 5.3:
<ul>
<li>New features:
<ul>
<li>code is now considered stable and suitable for use in production.
<li><a href="https://man.openbsd.org/smtpctl.8">smtpctl(8)</a> <i>trace</i> supports runtime tracing of various components, including imsg exchanges, incoming and outgoing sessions, aliases expansion and much more.
<li><a href="https://man.openbsd.org/smtpctl.8">smtpctl(8)</a> <i>monitor</i> can now be used to monitor in real-time an instance of <a href="https://man.openbsd.org/smtpd.8">smtpd(8)</a>.
<li><a href="https://man.openbsd.org/smtpctl.8">smtpctl(8)</a> <i>show queue</i> now supports an "online" mode where the scheduler is queried instead of the disk-based queue to provide more accurate information.
<li>virtual domain support has been reworked to simplify and bring support for new features like global catch-alls and shared user mappings.
<li>new table API replaces the map API: better handling of transient errors, improved performances and a much better interface.
<li>the transfer process may now select the source IP address to use as well as the HELO hostname to advertise from a table.
<li>each listener may advertise a different banner hostname.
<li>an alternate user database may be provided instead of relying on <a href="https://man.openbsd.org/getpwnam.3">getpwnam(3)</a>.
<li>users may now be authenticated using credentials from a table.
<li>incoming sessions can be tagged, allowing for rules to only match envelopes that have been reinjected in the daemon after being passed to a proxy tool.
<li>intermediate bounces are now sent at configurable rates.
<li>rules can now check for a sender email address or domain.
<li>experimental (yet functional) support for aldap and sqlite as table backends.
</ul>
<li>Improvements:
<ul>
<li>improved logging format to make it both easier to read and parse.
<li>improved memory use by scheduler, smtp, queue and transfer processes.
<li>more reliable and efficient disk-based queue.
<li>improved scheduler, dns and relaying logic that optimizes transfers.
<li>simplified grammar for <a href="https://man.openbsd.org/smtpd.conf.5">smtpd.conf(5)</a>.
<li>initial support for client and server SSL peer certificates validation.
<li>SSL certificate tree is now isolated and network-facing processes request SSL information on-demand by imsg.
<li>improved and simplified SMTP and MTA engines.
<li>much improved performances on both incoming and outgoing code paths.
<li>tons of cleanup and assorted minor bug fixes.
</ul>
</ul>
<p>
<li>Security improvements:
<ul>
<li>Position-independent executables (PIE) are now used <b>by default</b> on alpha, amd64, hppa, landisk, loongson, sgi and sparc64.
<li><a href="https://man.openbsd.org/gcc.1">gcc(1)</a> stack smashing protector added for Alpha and MIPS (enabled by default).
<li>Shared libraries on GCC 4 platforms now each get their own stack protector cookies instead of sharing a single global cookie.
</ul>
<p>
<li>Performance improvements:
<ul>
<li>Switch default disk I/O sort algorithm to NSCAN for improved fairness and response times.
<li>Softdep speedup improvements by the revert of a previously necessary workaround to prevent kva starvation.
<li>Large performance and reliability improvements in
<a href="https://man.openbsd.org/make.1">make(1)</a>,
especially in parallel mode. make no longer does any busy waiting, it handles
concurrent targets correctly, and displays more accurate error messages.
<li>Increased stack alignment in constructor functions and new threads on i386 to meet requirements for SSE.
<li>Coredumping no longer hogs CPU or I/O and can be aborted by sending the process a SIGKILL signal.
</ul>
<p>
<li>Threading improvements:
<ul>
<li>Threaded programs and libraries can now be linked with the POSIX-standard -lpthread flag instead of the OpenBSD-specific -pthread flag
<li><a href="https://man.openbsd.org/abort.3">abort(3)</a> and <a href="https://man.openbsd.org/raise.3">raise(3)</a> now direct the signal to the calling thread, as specified by POSIX.
<li>Whether a thread is currently executing on an alternate signal stack (c.f. <a href="https://man.openbsd.org/sigaltstack.2">sigaltstack(2)</a>) is now determined dynamically, so the stack can be reused if <a href="https://man.openbsd.org/siglongjmp.3">siglongjmp(3)</a> is used to exit the signal handler.
<li>libpthread now caches automatically allocated, default size thread stacks.
<li>Improvements in the handling of profiling, tracing, and %cpu calculation of threaded processes.
</ul>
<p>
<li>Assorted improvements:
<ul>
<li><a href="https://man.openbsd.org/sparc64/ldomctl.8">ldomctl(8)</a>
was added to manage logical domains on sun4v systems through
<a href="https://man.openbsd.org/sparc64/ldomd.8">ldomd(8)</a>.
<li>Support for WPA Enterprise was added to the wpa_supplicant package.
<li>OpenBSD/luna88k and OpenBSD/mvme88k have switched to GCC 3, <a href="https://man.openbsd.org/elf.5">elf(5)</a> and gained shared library support.
<li>OpenBSD/hp300 and OpenBSD/mvme68k have switched to GCC 3 and <a href="https://man.openbsd.org/elf.5">elf(5)</a>.
<li><a href="https://man.openbsd.org/softraid.4">softraid(4)</a> RAID1 and crypto volumes are now bootable on i386 and amd64 (full disk encryption).
<li>The <a href="https://man.openbsd.org/mg.1">mg(1)</a>
emacs-like editor now supports <code>diff-buffer-with-file</code>, <code>make-directory</code> and <code>revert-buffer</code>.
Column numbers have been made configurable and locale is respected for ctype purposes, like displaying ISO Latin 1 characters.
<li>Improved our own <a href="https://man.openbsd.org/pkg-config.1">pkg-config(1)</a>
implementation to make it compatible with freedesktop.org's 0.27.1 release.
<li>A number of improvements to the buffer cache and page daemon interactions to avoid issues in low memory/low kva situations.
<li>Various bug fixes in uvm to avoid potential races and deadlock issues.
<li>Memory filesystem (mfs) switched to bufq, giving us queue limits and FIFO queueing (rather than the current LIFO queueing).
<li>Many improvements to the <a href="https://man.openbsd.org/cwm.1">cwm(1)</a> window manager,
including tab completion and Xft support for menus, improved Xinerama support, and per-group vertical/horizontal manual tiling support.
<li>Added <a href="https://man.openbsd.org/dprintf.3">dprintf(3)</a>, <a href="https://man.openbsd.org/grantpt.3">grantpt(3)</a>, <a href="https://man.openbsd.org/posix_openpt.3">posix_openpt(3)</a>, <a href="https://man.openbsd.org/ptsname.3">ptsname(3)</a>, <a href="https://man.openbsd.org/unlockpt.3">unlockpt(3)</a>, and <a href="https://man.openbsd.org/vdprintf.3">vdprintf(3)</a>.
<li>Corrected the order of invocation of constructor and destruction functions.
<li>Improved compliance and/or cleanliness of header files, particularly
<dlfcn.h>, <netdb.h>, <net/if.h>,
<netinet/in.h>, <sys/socket.h>, <sys/uio.h>,
and <sys/un.h>.
</ul>
<p>
<li>OpenSSH 6.2:
<ul>
<li>New features:
<ul>
<li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>
and
<a href="https://man.openbsd.org/sshd.8">sshd(8)</a>:
Added support for AES-GCM authenticated encryption in SSH protocol 2.
The new cipher is available as "[email protected]" and
"[email protected]". It uses an identical packet format to the
AES-GCM mode specified in RFC 5647, but uses simpler and different
selection rules during key exchange.
<li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>
and
<a href="https://man.openbsd.org/sshd.8">sshd(8)</a>:
Added support for encrypt-then-mac (EtM) MAC modes for SSH protocol 2.
These modes alter the packet format and compute the MAC over the
packet length and encrypted packet rather than over the plaintext
data. These modes are considered more secure and are used by default
when available.
<li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>
and
<a href="https://man.openbsd.org/sshd.8">sshd(8)</a>:
Added support for the UMAC-128 MAC as "[email protected]" and
"[email protected]". The latter being an encrypt-then-mac mode.
<li><a href="https://man.openbsd.org/sshd.8">sshd(8)</a>:
Added support for multiple required authentication in SSH protocol 2
via an <code>AuthenticationMethods</code> option. This option lists one
or more comma-separated lists of authentication method names.
Successful completion of all the methods in any list is required for
authentication to complete. This allows, for example, requiring a
user having to authenticate via public key or GSSAPI before they are
offered password authentication.
<li><a href="https://man.openbsd.org/sshd.8">sshd(8)</a>
and
<a href="https://man.openbsd.org/ssh-keygen.1">ssh-keygen(1)</a>:
Added support for Key Revocation Lists (KRLs), a compact binary
format to represent lists of revoked keys and certificates that take
as little as one bit per certificate when revoking by serial number.
KRLs may be generated using
<a href="https://man.openbsd.org/ssh-keygen.1">ssh-keygen(1)</a>
and are loaded into
<a href="https://man.openbsd.org/sshd.8">sshd(8)</a>
via the existing <code>RevokedKeys</code>
<a href="https://man.openbsd.org/sshd_config.5">sshd_config(5)</a>
option.
<li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>:
<code>IdentitiesOnly</code> now applies to keys obtained from a
PKCS11Provider. This allows control of which keys are offered from
tokens using <code>IdentityFile</code>.
<li><a href="https://man.openbsd.org/sshd.8">sshd(8)</a>:
<a href="https://man.openbsd.org/sshd_config.5">sshd_config(5)</a>'s
AllowTcpForwarding now accepts "<code>local</code>" and "<code>remote</code>"
in addition to its previous "<code>yes</code>"/"<code>no</code>" keywords to
allow the server to specify whether just local or remote TCP
forwarding is enabled.
<li><a href="https://man.openbsd.org/sshd.8">sshd(8)</a>:
Added a
<a href="https://man.openbsd.org/sshd_config.5">sshd_config(5)</a>
option <code>AuthorizedKeysCommand</code> to support fetching
authorized_keys from a command in addition to (or instead of) from
the filesystem. The command is run under an account specified by an
<code>AuthorizedKeysCommandUser</code>
<a href="https://man.openbsd.org/sshd_config.5">sshd_config(5)</a>
option.
<li><a href="https://man.openbsd.org/sftp-server.8">sftp-server(8)</a>:
Now supports a <code>-d</code> option to allow the starting directory to
be something other than the user's home directory.
<li><a href="https://man.openbsd.org/ssh-keygen.1">ssh-keygen(1)</a>:
Now allows fingerprinting of keys hosted in PKCS#11 tokens using
"ssh-keygen -lD pkcs11_provider".
<li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>:
When SSH protocol 2 only is selected (the default),
<a href="https://man.openbsd.org/ssh.1">ssh(1)</a>
now immediately sends its SSH protocol banner to the server without
waiting to receive the server's banner, saving time when connecting.
<li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>
Added <code>~v</code> and <code>~V</code> escape sequences to raise and lower
the logging level respectively.
<li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>
Made the escape command help (<code>~?</code>) context sensitive so that
only commands that will work in the current session are shown.
<li><a href="https://man.openbsd.org/ssh-keygen.1">ssh-keygen(1)</a>:
When deleting host lines from known_hosts using "ssh-keygen -R host",
<a href="https://man.openbsd.org/ssh-keygen.1">ssh-keygen(1)</a>
now prints details of which lines were removed.
</ul>
<li>The following significant bugs have been fixed in this release:
<ul>
<li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>:
Force a clean shutdown of ControlMaster client sessions when the
<code>~.</code> escape sequence is used. This means that <code>~.</code>
should now work in mux clients even if the server is no longer
responding.
<li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>:
Correctly detect errors during local TCP forward setup in multiplexed
clients. (bz#2055)
<li><a href="https://man.openbsd.org/ssh-add.1">ssh-add(1)</a>:
Made deleting explicit keys "ssh-add -d" symmetric with adding keys
with respect to certificates. It now tries to delete the
corresponding certificate and respects the <code>-k</code> option to
allow deleting of the key only.
<li><a href="https://man.openbsd.org/sftp.1">sftp(1)</a>:
Fix a number of parsing and command-editing bugs, including bz#1956.
<li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>:
When muxmaster is run with <code>-N</code>, ensure that it shuts down
gracefully when a client sends it "-O stop" rather than hanging
around. (bz#1985)
<li><a href="https://man.openbsd.org/ssh-keygen.1">ssh-keygen(1)</a>:
When screening moduli candidates, append to the file rather than
overwriting to allow resumption. (bz#1957)
<li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>:
Record "Received disconnect" messages at ERROR rather than INFO
priority. (bz#2057)
<li><a href="https://man.openbsd.org/ssh.1">ssh(1)</a>:
Loudly warn if explicitly-provided private key is unreadable.
(bz#1981)
</ul>
</ul>
<p>
<li>Over 7,800 ports, major performance and stability improvements in
the package build process
<ul>
<li>The parallel ports builder is more efficient. The main improvement is
that dpb consumes much less cpu on busy boxes, but there are lots of small
optimizations that amount to a large performance increase:
dpb can now build selected large ports using parallel make, and it
has a notion of affinity, so that ports failing on a cluster will be
preferentially restarted on the same machine.
</ul>
<p>
<li>Many pre-built packages for each architecture:
<ul style="column-count: 4">
<li>i386: 7670
<li>sparc64: 6756
<li>alpha: 6151
<li>sh: 1111
<li>amd64: 7632
<li>powerpc: 7215
<li>sparc: 4635
<li>arm: 4944
<li>hppa: 6401
<li>vax: 2081
<li>mips64: 6519
<li>mips64el: 6539
</ul>
<p>
<li>Some highlights:
<ul>
<li>GNOME 3.6.2 <li>KDE 3.5.10
<li>Xfce 4.10 <li>MySQL 5.1.68
<li>PostgreSQL 9.2.3 <li>Postfix 2.9.6
<li>OpenLDAP 2.3.43 and 2.4.33 <li>Mozilla Firefox 3.6.28 and 18.0.2
<li>Mozilla Thunderbird 17.0.2 <li>GHC 7.4.2
<li>LibreOffice 3.6.5.2 <li>Emacs 21.4 and 24.2
<li>Vim 7.3.154 <li>PHP 5.2.17 and 5.3.21
<li>Python 2.5.4, 2.7.3 and 3.2.3 <li>Ruby 1.8.7.370 and 1.9.3.392
<li>Tcl/Tk 8.5.13 and 8.6.0 <li>Jdk 1.6.0.32 and 1.7.0.11
<li>Mono 2.10.9 <li>Chromium 24.0.1312.68
<li>Groff 1.21 <li>Go 1.0.3
<li>GCC 4.6.3 and 4.7.2 <li>LLVM/Clang 3.2
</ul>
<p>
<li>As usual, steady improvements in manual pages and other documentation.
<p>
<li>The system includes the following major components from outside suppliers:
<ul>
<li>Xenocara (based on X.Org 7.7 with xserver 1.12.3 + patches,
freetype 2.4.11, fontconfig 2.8.0, Mesa 7.11.2, xterm 287,
xkeyboard-config 2.7 and more)
<li>Gcc 4.2.1 (+patches), 3.3.6 (+ patches) and 2.95.3 (+ patches)
<li>Perl 5.12.2 (+ patches)
<li>Our improved and secured version of Apache 1.3, with
SSL/TLS and DSO support
<li>Nginx 1.2.6 (+ patches)
<li>OpenSSL 1.0.1c (+ patches)
<li>SQLite 3.7.14.1 (+ patches)
<li>Sendmail 8.14.6, with libmilter
<li>Bind 9.4.2-P2 (+ patches)
<li>NSD 3.2.15
<li>Lynx 2.8.7rel.2 with HTTPS and IPv6 support (+ patches)
<li>Sudo 1.7.2p8
<li>Ncurses 5.7
<li>Heimdal 0.7.2 (+ patches)
<li>Binutils 2.15 (+ patches)
<li>Gdb 6.3 (+ patches)
<li>Less 444 (+ patches)
<li>Awk Aug 10, 2011 version
</ul>
</ul>
</section>
<hr>
<section id=install>
<h3>How to install</h3>
<p>
Following this are the instructions which you would have on a piece of
paper if you had purchased a CDROM set instead of doing an alternate
form of install. The instructions for doing an FTP (or other style
of) install are very similar; the CDROM instructions are left intact
so that you can see how much easier it would have been if you had
purchased a CDROM instead.
<p>
<hr>
Please refer to the following files on the three CDROMs or FTP mirror for
extensive details on how to install OpenBSD 5.3 on your machine:
<p>
<ul>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/i386/INSTALL.i386">
.../OpenBSD/5.3/i386/INSTALL.i386 (on CD1)</a>
<p>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/amd64/INSTALL.amd64">
.../OpenBSD/5.3/amd64/INSTALL.amd64 (on CD2)</a>
<p>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/sparc64/INSTALL.sparc64">
.../OpenBSD/5.3/sparc64/INSTALL.sparc64 (on CD3)</a>
<p>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/alpha/INSTALL.alpha">
.../OpenBSD/5.3/alpha/INSTALL.alpha</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/armish/INSTALL.armish">
.../OpenBSD/5.3/armish/INSTALL.armish</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/hp300/INSTALL.hp300">
.../OpenBSD/5.3/hp300/INSTALL.hp300</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/hppa/INSTALL.hppa">
.../OpenBSD/5.3/hppa/INSTALL.hppa</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/landisk/INSTALL.landisk">
.../OpenBSD/5.3/landisk/INSTALL.landisk</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/loongson/INSTALL.loongson">
.../OpenBSD/5.3/loongson/INSTALL.loongson</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/luna88k/INSTALL.luna88k">
.../OpenBSD/5.3/luna88k/INSTALL.luna88k</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/macppc/INSTALL.macppc">
.../OpenBSD/5.3/macppc/INSTALL.macppc</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/mvme68k/INSTALL.mvme68k">
.../OpenBSD/5.3/mvme68k/INSTALL.mvme68k</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/mvme88k/INSTALL.mvme88k">
.../OpenBSD/5.3/mvme88k/INSTALL.mvme88k</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/sgi/INSTALL.sgi">
.../OpenBSD/5.3/sgi/INSTALL.sgi</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/socppc/INSTALL.socppc">
.../OpenBSD/5.3/socppc/INSTALL.socppc</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/sparc/INSTALL.sparc">
.../OpenBSD/5.3/sparc/INSTALL.sparc</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/vax/INSTALL.vax">
.../OpenBSD/5.3/vax/INSTALL.vax</a>
<li><a href="https://ftp.openbsd.org/pub/OpenBSD/5.3/zaurus/INSTALL.zaurus">
.../OpenBSD/5.3/zaurus/INSTALL.zaurus</a>
</ul>
</section>
<hr>
<section id=quickinstall>
<p>
Quick installer information for people familiar with OpenBSD, and the
use of the "disklabel -E" command. If you are at all confused when
installing OpenBSD, read the relevant INSTALL.* file as listed above!
<h3>OpenBSD/i386:</h3>
<p>
Play with your BIOS options to enable booting from a CD. The OpenBSD/i386
release is on CD1. If your BIOS does not support booting from CD, you will need
to create a boot floppy to install from. To create a boot floppy write
<i>CD1:5.3/i386/floppy53.fs</i> to a floppy and boot via the floppy drive.
<p>
Use <i>CD1:5.3/i386/floppyB53.fs</i> instead for greater SCSI controller
support, or <i>CD1:5.3/i386/floppyC53.fs</i> for better laptop support.
<p>
If you can't boot from a CD or a floppy disk,
you can install across the network using PXE as described in
the included INSTALL.i386 document.
<p>
If you are planning on dual booting OpenBSD with another OS, you will need to
read INSTALL.i386.
<p>
To make a boot floppy under MS-DOS, use the "rawrite" utility located
at <i>CD1:5.3/tools/rawrite.exe</i>. To make the boot floppy under a Unix OS,
use the
<a href="https://man.openbsd.org/dd.1">dd(1)</a>
utility. The following is an example usage of
<a href="https://man.openbsd.org/dd.1">dd(1)</a>,
where the device could be "floppy", "rfd0c", or
"rfd0a".
<blockquote><pre>
# <kbd>dd if=<file> of=/dev/<device> bs=32k</kbd>
</pre></blockquote>
<p>
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">this page</a>.
<h3>OpenBSD/amd64:</h3>
<p>
The 5.3 release of OpenBSD/amd64 is located on CD2.
Boot from the CD to begin the install - you may need to adjust
your BIOS options first.
If you can't boot from the CD, you can create a boot floppy to install from.
To do this, write <i>CD2:5.3/amd64/floppy53.fs</i> to a floppy, then
boot from the floppy drive.
<p>
If you can't boot from a CD or a floppy disk,
you can install across the network using PXE as described in the included
INSTALL.amd64 document.
<p>
If you are planning to dual boot OpenBSD with another OS, you will need to
read INSTALL.amd64.
<h3>OpenBSD/macppc:</h3>
<p>
Burn the image from the FTP site to a CDROM, and poweron your machine
while holding down the <i>C</i> key until the display turns on and
shows <i>OpenBSD/macppc boot</i>.
<p>
Alternatively, at the Open Firmware prompt, enter <i>boot cd:,ofwboot
/5.3/macppc/bsd.rd</i>
<h3>OpenBSD/sparc64:</h3>
<p>
Put CD3 in your CDROM drive and type <i>boot cdrom</i>.
<p>
If this doesn't work, or if you don't have a CDROM drive, you can write
<i>CD3:5.3/sparc64/floppy53.fs</i> or <i>CD3:5.3/sparc64/floppyB53.fs</i>
(depending on your machine) to a floppy and boot it with <i>boot
floppy</i>. Refer to INSTALL.sparc64 for details.
<p>
Make sure you use a properly formatted floppy with NO BAD BLOCKS or your install
will most likely fail.
<p>
You can also write <i>CD3:5.3/sparc64/miniroot53.fs</i> to the swap partition on
the disk and boot with <i>boot disk:b</i>.
<p>
If nothing works, you can boot over the network as described in INSTALL.sparc64.
<h3>OpenBSD/alpha:</h3>
<p>
Write <i>5.3/alpha/floppy53.fs</i> or
<i>5.3/alpha/floppyB53.fs</i> (depending on your machine) to a diskette and
enter <i>boot dva0</i>. Refer to INSTALL.alpha for more details.
<p>
Make sure you use a properly formatted floppy with NO BAD BLOCKS or your install
will most likely fail.
<h3>OpenBSD/armish:</h3>
<p>
After connecting a serial port, Thecus can boot directly from the network
either tftp or http. Configure the network using fconfig, reset,
then load bsd.rd, see INSTALL.armish for specific details.
IOData HDL-G can only boot from an EXT-2 partition. Boot into linux
and copy 'boot' and bsd.rd into the first partition on wd0 (hda1)
then load and run bsd.rd, preserving the wd0i (hda1) ext2fs partition.
More details are available in INSTALL.armish.
<h3>OpenBSD/hp300:</h3>
<p>
Boot over the network by following the instructions in INSTALL.hp300.
<h3>OpenBSD/hppa:</h3>
<p>
Boot over the network by following the instructions in INSTALL.hppa or the
<a href="hppa.html#install">hppa platform page</a>.
<h3>OpenBSD/landisk:</h3>
<p>
Write <i>miniroot53.fs</i> to the start of the CF
or disk, and boot normally.
<h3>OpenBSD/loongson:</h3>
<p>
Write <i>miniroot53.fs</i> to a USB stick and boot bsd.rd from it
or boot bsd.rd via tftp.
Refer to the instructions in INSTALL.loongson for more details.
<h3>OpenBSD/luna88k:</h3>
<p>
Copy bsd.rd to a Mach or UniOS partition, and boot it from the PROM.
Alternatively, you can create a bootable tape and boot from it. Refer to
the instructions in INSTALL.luna88k for more details.
<h3>OpenBSD/mvme68k:</h3>
<p>
You can create a bootable installation tape or boot over the network.<br>
The network boot requires a MVME68K BUG version that supports the <i>NIOT</i>
and <i>NBO</i> debugger commands. Follow the instructions in INSTALL.mvme68k
for more details.
<h3>OpenBSD/mvme88k:</h3>
<p>
You can create a bootable installation tape or boot over the network.<br>
The network boot requires a MVME88K BUG version that supports the <i>NIOT</i>
and <i>NBO</i> debugger commands. Follow the instructions in INSTALL.mvme88k
for more details.
<h3>OpenBSD/sgi:</h3>
<p>
To install on an O2, burn cd53.iso on a CD-R, put it in the CD drive of your
machine and select <i>Install System Software</i> from the System Maintenance
menu.
<p>
On other systems, or if your machine doesn't have a CD drive, you can
setup a DHCP/tftp network server, and boot using "bootp()/bsd.rd.IP##" using
the kernel matching your system type.
Refer to the instructions in INSTALL.sgi for more details.
<h3>OpenBSD/socppc:</h3>
<p>
After connecting a serial port, boot over the network via DHCP/tftp.
Refer to the instructions in INSTALL.socppc for more details.
<h3>OpenBSD/sparc:</h3>
<p>
Boot from one of the provided install ISO images, using one of the two
commands listed below, depending on the version of your ROM.
<blockquote><pre>
ok <kbd>boot cdrom 5.3/sparc/bsd.rd</kbd>
or
> <kbd>b sd(0,6,0)5.3/sparc/bsd.rd</kbd>
</pre></blockquote>
<p>
If your SPARC system does not have a CD drive, you can alternatively boot from floppy.
To do so you need to write <i>floppy53.fs</i> to a floppy.
For more information see <a href="faq/faq4.html#MkFlop">this page</a>.
To boot from the floppy use one of the two commands listed below,
depending on the version of your ROM.
<blockquote><pre>
ok <kbd>boot floppy</kbd>
or
> <kbd>b fd()</kbd>
</pre></blockquote>
<p>
Make sure you use a properly formatted floppy with NO BAD BLOCKS or your install
will most likely fail.
<p>
If your SPARC system doesn't have a floppy drive nor a CD drive, you can either
setup a bootable tape, or install via network, as told in the
INSTALL.sparc file.
<h3>OpenBSD/vax:</h3>
<p>
Boot over the network via mopbooting as described in INSTALL.vax.
<h3>OpenBSD/zaurus:</h3>
<p>
Using the Linux built-in graphical ipkg installer, install the
openbsd53_arm.ipk package. Reboot, then run it. Read INSTALL.zaurus
for a few important details.
</section>
<hr>
<section id=sourcecode>
<h3>Notes about the source code</h3>
<p>
<code>src.tar.gz</code> contains a source archive starting at <code>/usr/src</code>.
This file contains everything you need except for the kernel sources, which are
in a separate archive. To extract:
<blockquote><pre>
# <kbd>mkdir -p /usr/src</kbd>
# <kbd>cd /usr/src</kbd>
# <kbd>tar xvfz /tmp/src.tar.gz</kbd>
</pre></blockquote>
<p>
<code>sys.tar.gz</code> contains a source archive starting at <code>/usr/src/sys</code>.
This file contains all the kernel sources you need to rebuild kernels.
To extract:
<blockquote><pre>
# <kbd>mkdir -p /usr/src/sys</kbd>
# <kbd>cd /usr/src</kbd>
# <kbd>tar xvfz /tmp/sys.tar.gz</kbd>
</pre></blockquote>
<p>
Both of these trees are a regular CVS checkout. Using these trees it
is possible to get a head-start on using the anoncvs servers as
described <a href="anoncvs.html">here</a>.
Using these files
results in a much faster initial CVS update than you could expect from
a fresh checkout of the full OpenBSD source tree.
</section>
<hr>
<section id=upgrade>
<h3>How to upgrade</h3>
<p>
If you already have an OpenBSD 5.2 system, and do not want to reinstall,
upgrade instructions and advice can be found in the
<a href="faq/upgrade53.html">Upgrade Guide</a>.
</section>
<hr>
<section id=ports>
<h3>Ports Tree</h3>
<p>
A ports tree archive is also provided. To extract:
<blockquote><pre>
# <kbd>cd /usr</kbd>
# <kbd>tar xvfz /tmp/ports.tar.gz</kbd>
</pre></blockquote>
<p>
The <i>ports/</i> subdirectory is a checkout of the OpenBSD ports tree. Go
read the <a href="faq/ports/index.html">ports</a> page
if you know nothing about ports
at this point. This text is not a manual of how to use ports.
Rather, it is a set of notes meant to kickstart the user on the
OpenBSD ports system.
<p>
The <i>ports/</i> directory represents a CVS (see the manpage for
<a href="https://man.openbsd.org/cvs.1">cvs(1)</a> if
you aren't familiar with CVS) checkout of our ports. As with our complete
source tree, our ports tree is available via
<a href="anoncvs.html">AnonCVS</a>.
So, in order to keep current with it, you must make the <i>ports/</i> tree
available on a read-write medium and update the tree with a command
like:
<blockquote><pre>
# <kbd>cd /usr/ports</kbd>
</pre></blockquote>
<p>
[Of course, you must replace the server name here with a nearby anoncvs
server.]
<p>
Note that most ports are available as packages on our mirrors. Updated
packages for the 5.3 release will be made available if problems arise.
<p>
If you're interested in seeing a port added, would like to help out, or just
would like to know more, the mailing list
</section>