BSD Now

BSD Now

Download on the App Store

BSD Now episodes

  • 334: Distrowatch Running FreeBSD

    Upgrading FreeBSD from 11.3 to 12.1, Distrowatch switching to FreeBSD, Torvalds says don’t run ZFS, iked(8) removed automatic IPv6 blocking, working towards LLDB on i386, and memory-hard Argon2 hashing scheme in NetBSD.

    Headlines
    Upgrading FreeBSD from 11.3 to 12.1

    Now here’s something more like what I was originally expecting the content on this blog to look like. I’m in the process of moving all of our FreeBSD servers (about 30 in total) from 11.3 to 12.1. We have our own local build of the OS, and until “packaged base” gets to a state where it’s reliably usable, we’re stuck doing upgrades the old-fashioned way. I created a set of notes for myself while cranking through these upgrades and I wanted to share them since they are not really work-specific and this process isn’t very well documented for people who haven’t been doing this sort of upgrade process for 25 years.

    Our source and object trees are read-only exported from the build server over NFS, which causes things to be slow. /etc/make.conf and /etc/src.conf are symbolic links on all of our servers to the master copies in /usr/src so that make installworld can find the configuration parameters the system was built with.

    Switching Distrowatch over to BSD

    This may be a little off-topic for this board (forgive me if it is, please). However, I wanted to say that I'm one of the people who works on DistroWatch (distrowatch.com) and this past week we had to deal with a server facing hardware failure. We had a discussion about whether to continue running Debian or switch to something else.

    The primary "something else" option turned out to be FreeBSD and it is what we eventually went with. It took a while to convert everything over from working with Debian GNU/Linux to FreeBSD 12 (some script incompatibilities, different paths, some changes to web server configuration, networking IPv6 troubles). But in the end we ended up with a good, FreeBSD-based experience.

    Since the transition was successful, though certainly not seamless, I thought people might want to do a Q&A on the migration process. Especially for those thinking of making the same switch.

    News Roundup
    iked(8) automatic IPv6 blocking removed

    iked(8) no longer automatically blocks unencrypted outbound IPv6 packets. This feature was intended to avoid accidental leakage, but in practice was found to mostly be a cause of misconfiguration.

    If you previously used iked(8)'s -6 flag to disable this feature, it is no longer needed and should be removed from /etc/rc.conf.local if used.

    Linus says dont run ZFS

    “Don’t use ZFS. It’s that simple. It was always more of a buzzword than anything else, I feel, and the licensing issues just make it a non-starter for me.”

    This is what Linus Torvalds said in a mailing list to once again express his disliking for ZFS filesystem specially over its licensing.

    To avoid unnecessary confusion, this is more intended for Linux distributions, kernel developers and maintainers rather than individual Linux users.

    GSoC 2019 Final Report: Incorporating the memory-hard Argon2 hashing scheme into NetBSD

    We successfully incorporated the Argon2 reference implementation into NetBSD/amd64 for our 2019 Google Summer of Coding project. We introduced our project here and provided some hints on how to select parameters here. For our final report, we will provide an overview of what changes were made to complete the project.

    The Argon2 reference implementation, available here, is available under both the Creative Commons CC0 1.0 and the Apache Public License 2.0. To import the reference implementation into src/external, we chose to use the Apache 2.0 license for this project.

    Working towards LLDB on i386 NetBSD

    Upstream describes LLDB as a next generation, high-performance debugger. It is built on top of LLVM/Clang toolchain, and features great integration with it. At the moment, it primarily supports debugging C, C++ and ObjC code, and there is interest in extending it to more languages.

    In February 2019, I have started working on LLDB, as contracted by the NetBSD Foundation. So far I've been working on reenabling continuous integration, squashing bugs, improving NetBSD core file support, extending NetBSD's ptrace interface to cover more register types and fix compat32 issues, fixing watchpoint and threading support.

    Throughout December I've continued working on our build bot maintenance, in particular enabling compiler-rt tests. I've revived and finished my old patch for extended register state (XState) in core dumps. I've started working on bringing proper i386 support to LLDB.

    Beastie Bits
    • An open source Civilization V
    • BSD Groups in Italy
    • Why is Wednesday, November 17, 1858 the base time for OpenVMS?
    • Benchmarking shell pipelines and the Unix “tools” philosophy
    • LPI and BSD working together
    • Feedback/Questions
      • Pat - March Meeting
      • Madhukar - Overheating Laptop
      • Warren - R vs S
        • Send questions, comments, show ideas/topics, or stories you want mentioned on the show to [email protected]
        • Your browser does not support the HTML5 video tag.
          49 min
        • 333: Unix Keyboard Joy

          Your Impact on FreeBSD in 2019, Wireguard on OpenBSD Router, Amazon now has FreeBSD/ARM 12, pkgsrc-2019Q4, The Joys of UNIX Keyboards, OpenBSD on Digital Ocean, and more.

          Headlines
          Your Impact on FreeBSD in 2019

          It’s hard to believe that 2019 is nearly over. It has been an amazing year for supporting the FreeBSD Project and community! Why do I say that? Because as I reflect over the past 12 months, I realize how many events we’ve attended all over the world, and how many lives we’ve touched in so many ways. From advocating for FreeBSD to implementing FreeBSD features, my team has been there to help make FreeBSD the best open source project and operating system out there.

          In 2019, we focused on supporting a few key areas where the Project needed the most help. The first area was software development. Whether it was contracting FreeBSD developers to work on projects like wifi support, to providing internal staff to quickly implement hardware workarounds, we’ve stepped in to help keep FreeBSD innovative, secure, and reliable. Software development includes supporting the tools and infrastructure that make the development process go smoothly, and we’re on it with team members heading up the Continuous Integration efforts, and actively involved in the clusteradmin and security teams.

          Our advocacy efforts focused on recruiting new users and contributors to the Project. We attended and participated in 38 conferences and events in 21 countries. From giving FreeBSD presentations and workshops to staffing tables, we were able to have 1:1 conversations with thousands of attendees.

          Our travels also provided opportunities to talk directly with FreeBSD commercial and individual users, contributors, and future FreeBSD user/contributors. We’ve seen an increase in use and interest in FreeBSD from all of these organizations and individuals. These meetings give us a chance to learn more about what organizations need and what they and other individuals are working on. The information helps inform the work we should fund.

          Wireguard on OpenBSD Router

          wireguard (wg) is a modern vpn protocol, using the latest class of encryption algorithms while at the same time promising speed and a small code base.

          modern crypto and lean code are also tenants of openbsd, thus it was a no brainer to migrate my router from openvpn over to wireguard.

          my setup : a collection of devices, both wired and wireless, that are nat’d through my router (openbsd 6.6) out via my vpn provider azire* and out to the internet using wg-quick to start wg.

          running : doubtless this could be improved on, but currently i start wg manually when my router boots. this, and the nat'ing on the vpn interface mean its impossible for clients to connect to the internet without the vpn being up. as my router is on a ups and only reboots when a kernel patch requires it, it’s a compromise i can live with. run wg-quick (please replace vpn with whatever you named your wg .conf file.) and reload pf rules.

          News Roundup
          Amazon now has FreeBSD/ARM 12

          AWS, the cloud division of Amazon, announced in December the next generation of its ARM processors, the Graviton2. This is a custom chip design with a 7nm architecture. It is based on 64-bit ARM Neoverse cores.

          Compared to first-generation Graviton processors (A1), today’s new chips should deliver up to 7x the performance of A1 instances in some cases. Floating point performance is now twice as fast. There are additional memory channels and cache speed memory access should be much faster.

          The company is working on three types of Graviton2 EC2 instances that should be available soon. Instances with a “g” suffix are powered by Graviton2 chips. If they have a “d” suffix, it also means that they have NVMe local storage.

          • General-purpose instances (M6g and M6gd)

          • Compute-optimized instances (C6g and C6gd)

          • Memory-optimized instances (R6g and R6gd)

          • You can choose instances with up to 64 vCPUs, 512 GiB of memory and 25 Gbps networking.

            And you can see that ARM-powered servers are not just a fad. AWS already promises a 40% better price/performance ratio with ARM-based instances when you compare them with x86-based instances.

            AWS has been working with operating system vendors and independent software vendors to help them release software that runs on ARM. ARM-based EC2 instances support Amazon Linux 2, Ubuntu, Red Hat, SUSE, Fedora, Debian and FreeBSD. It also works with multiple container services (Docker, Amazon ECS, and Amazon Elastic Kubernetes Service).

            • Coverage of AWS Announcement
            • Announcing the pkgsrc-2019Q4 release

              The pkgsrc developers are proud to announce the 65th quarterly release of pkgsrc, the cross-platform packaging system. pkgsrc is available with more than 20,000 packages, running on 23 separate platforms; more information on pkgsrc itself is available at https://www.pkgsrc.org/

              In total, 190 packages were added, 96 packages were removed, and 1,868 package updates (to 1388 unique packages) were processed since the pkgsrc-2019Q3 release. As usual, a large number of updates and additions were processed for packages for go (14), guile (11), perl (170), php (10), python (426), and ruby (110). This continues pkgsrc's tradition of adding useful packages, updating many packages to more current versions, and pruning unmaintained packages that are believed to have essentially no users.

              The Joys of UNIX Keyboards

              I fell in love with a dead keyboard layout.

              A decade or so ago while helping a friends father clean out an old building, we came across an ancient Sun Microsystems server. We found it curious. Everything about it was different from what we were used to. The command line was black on white, the connectors strange and foreign, and the keyboard layout was bizarre.

              We never did much with it; turning it on made all the lights in his home dim, and our joint knowledge of UNIX was nonexistent. It sat in his bedroom for years supporting his television at the foot of his bed.

              I never forgot that keyboard though. The thought that there was this alternative layout out there seemed intriguing to me.

              OpenBSD on Digital Ocean

              Last night I had a need to put together a new OpenBSD machine. Since I already use DigitalOcean for one of my public DNS servers I wanted to use them for this need but sadly like all too many of the cloud providers they don't support OpenBSD. Now they do support FreeBSD and I found a couple writeups that show how to use FreeBSD as a shim to install OpenBSD.

              They are both sort of old at this point and with OpenBSD 6.6 out I ran into a bit of a snag. The default these days is to use a GPT partition table to enable EFI booting. This is generally pretty sane but it looks to me like the FreeBSD droplet doesn't support this. After the installer rebooted the VM failed to boot, being unable to find the bootloader.

              Thankfully DigitalOcean has a recovery ISO that you can boot by simply switching to it and powering off and then on your Droplet.

              Beastie Bits
              • FreeBSD defaults to LLVM on PPC
              • Theo De Raadt Interview between Ottawa 2019 Hackathon and BSDCAN 2019
              • Bastille Poll about what people would like to see in 2020
              • Notes on the classic book : The Design of the UNIX Operating System
              • Multics History
              • First meeting of the Hamilton BSD user group, February 11, 2020 18:30 - 21:00, Boston Pizza on Upper James St
              • Feedback/Questions
                • Bill - 1.1 CDROM
                • Greg - More 50 Year anniversary information
                • Dave - Question time for Allan
                  • Send questions, comments, show ideas/topics, or stories you want mentioned on the show to [email protected]
                  • Your browser does not support the HTML5 video tag.
                    41 min
                  • 332: The BSD Hyperbole

                    Announcing HyperbolaBSD, IPFW In-Kernel NAT setup on FreeBSD, Wayland and WebRTC enabled for NetBSD 9/Linux, LLDB Threading support ready for mainline, OpenSSH U2F/FIDO support in base, Dragonfly drm/i915: Update, and more.

                    Headlines
                    HyperbolaBSD Announcement

                    Due to the Linux kernel rapidly proceeding down an unstable path, we are planning on implementing a completely new OS derived from several BSD implementations.

                    This was not an easy decision to make, but we wish to use our time and resources to create a viable alternative to the current operating system trends which are actively seeking to undermine user choice and freedom.

                    This will not be a "distro", but a hard fork of the OpenBSD kernel and userspace including new code written under GPLv3 and LGPLv3 to replace GPL-incompatible parts and non-free ones.

                    • Reasons for this include:
                      • Linux kernel forcing adaption of DRM, including HDCP.
                      • Linux kernel proposed usage of Rust (which contains freedom flaws and a centralized code repository that is more prone to cyber attack and generally requires internet access to use.)
                      • Linux kernel being written without security and in mind. (KSPP is basically a dead project and Grsec is no longer free software)
                      • Many GNU userspace and core utils are all forcing adaption of features without build time options to disable them. E.g. (PulseAudio / SystemD / Rust / Java as forced dependencies)
                      • As such, we will continue to support the Milky Way branch until 2022 when our legacy Linux-libre kernel reaches End of Life.
                      • Future versions of Hyperbola will be using HyperbolaBSD which will have the new kernel, userspace and not be ABI compatible with previous versions.

                        HyperbolaBSD is intended to be modular and minimalist so other projects will be able to re-use the code under free license.

                        • Forum Post
                        • A simple IPFW In-Kernel NAT setup on FreeBSD

                          After graduating college, I am moving from Brooklyn, NY to Redmond, WA (guess where I got a job). I always wanted to re-do my OPNsense firewall (currently a HP T730) with stock FreeBSD and IPFW’s in-kernel NAT.

                          Why IPFW? Benchmarks have shown IPFW to be faster which is especially good for my Tor relay, and because I can! However, one downside of IPFW is less documentation vs PF, even less without natd (which we’re not using), and this took me time to figure this out.

                          But since my T730 is already packed, I am testing this on a old PC with two NICs, and my laptop [1] as a client with an USB-to-Ethernet adapter.

                          News Roundup
                          HEADS UP: Wayland and WebRTC enabled for NetBSD 9/Linux

                          This is just a heads up that the Wayland option is now turned on by

                          default for NetBSD 9 and Linux in cases where it peacefully coexists

                          with X11.

                          • Right now, this effects the following packages:
                            • graphics/MesaLib
                            • devel/SDL2
                            • www/webkit-gtk
                            • x11/gtk3
                            • The WebRTC option has also been enabled by default on NetBSD 9 for two Firefox versions: www/firefox, www/firefox68

                              Please keep me informed of any fallout. Hopefully, there will be none.

                              If you want to try out Wayland-related things on NetBSD 9, wm/velox/MESSAGE may be interesting for you.

                              LLDB Threading support now ready for mainline

                              Upstream describes LLDB as a next generation, high-performance debugger. It is built on top of LLVM/Clang toolchain, and features great integration with it. At the moment, it primarily supports debugging C, C++ and ObjC code, and there is interest in extending it to more languages.

                              In February, I have started working on LLDB, as contracted by the NetBSD Foundation. So far I've been working on reenabling continuous integration, squashing bugs, improving NetBSD core file support, extending NetBSD's ptrace interface to cover more register types and fix compat32 issues and fixing watchpoint support. Then, I've started working on improving thread support which is taking longer than expected. You can read more about that in my September 2019 report.

                              So far the number of issues uncovered while enabling proper threading support has stopped me from merging the work-in-progress patches. However, I've finally reached the point where I believe that the current work can be merged and the remaining problems can be resolved afterwards. More on that and other LLVM-related events happening during the last month in this report.

                              OpenSSH U2F/FIDO support in base

                              Hardware backed keys can be generated using "ssh-keygen -t ecdsa-sk" (or "ed25519-sk" if your token supports it). Many tokens require to be touched/tapped to confirm this step.

                              You'll get a public/private keypair back as usual, except in this case, the private key file does not contain a highly-sensitive private key but instead holds a "key handle" that is used by the security key to derive the real private key at signing time.

                              So, stealing a copy of the private key file without also stealing your security key (or access to it) should not give the attacker anything.

                              drm/i915: Update to Linux 4.8.17
                              • drm/i915: Update to Linux 4.8.17
                                • Broxton, Valleyview and Cherryview support improvements
                                • Broadwell and Gen9/Skylake support improvements
                                • Broadwell brightness fixes from OpenBSD
                                • Atomic modesetting improvements
                                • Various bug fixes and performance enhancements
                                • Beastie Bits
                                  • Visual Studio Code port for FreeBSD
                                  • OpenBSD syscall call-from verification
                                  • Peertube on OpenBSD
                                  • Fuzzing Filesystems on NetBSD via AFL+KCOV by Maciej Grochowski
                                  • Twitter Bot for Prop65
                                  • Interactive vim tutorial
                                  • First BSD user group meeting in Hamilton, February 11, 2020 18:30 - 21:00, Boston Pizza on Upper James St
                                  • ***
                                    Feedback/Questions
                                    • Samir - cgit
                                    • Russell - R
                                    • Wolfgang - Question
                                      • Send questions, comments, show ideas/topics, or stories you want mentioned on the show to [email protected]
                                      • Your browser does not support the HTML5 video tag.
                                        46 min
                                      • 331: Why Computers Suck

                                        How learning OpenBSD makes computers suck a little less, How Unix works, FreeBSD 12.1 Runs Well on Ryzen Threadripper 3970X, BSDCan CFP, HardenedBSD Infrastructure Goals, and more.

                                        Headlines
                                        Why computers suck and how learning from OpenBSD can make them marginally less horrible

                                        How much better could things actually be if we abandoned the enterprise development model?

                                        Next I will compare this enterprise development approach with non-enterprise development - projects such as OpenBSD, which do not hesitate to introduce ABI breaking changes to improve the codebase.

                                        One of the most commonly referred to pillars of the project's philosophy has long been its emphasis on clean functional code. Any code which makes it into OpenBSD is subject to ongoing aggressive audits for deprecated, or otherwise unmaintained code in order to reduce cruft and attack surface. Additionally the project creator, Theo de Raadt, and his team of core developers engage in ongoing development for proactive mitigations for various attack classes many of which are directly adopted by various multi-platform userland applications as well as the operating systems themselves (Windows, Linux, and the other BSDs). Frequently it is the case that introducing new features (not just deprecating old ones) introduces new incompatibilities against previously functional binaries compiled for OpenBSD.

                                        To prevent the sort of kernel memory bloat that has plagued so many other operating systems for years, the project enforces a hard ceiling on the number of lines of code that can ever be in ring 0 at a given time. Current estimates guess the number of bugs per line of code in the Linux kernel are around 1 bug per every 10,000 lines of code. Think of this in the context of the scope creep seen in the Linux kernel (which if I recall correctly is currently at around 100,000,000 lines of code), as well as the Windows NT kernel (500,000,000 lines of code) and you quickly begin to understand how adding more and more functionality into the most privileged components of the operating system without first removing old components begins to add up in terms of the drastic difference seen between these systems in the number of zero day exploits caught in the wild respectively.

                                        How Unix Works: Become a Better Software Engineer

                                        Unix is beautiful. Allow me to paint some happy little trees for you. I’m not going to explain a bunch of commands – that’s boring, and there’s a million tutorials on the web doing that already. I’m going to leave you with the ability to reason about the system.

                                        Every fancy thing you want done is one google search away.

                                        But understanding why the solution does what you want is not the same.

                                        That’s what gives you real power, the power to not be afraid.

                                        And since it rhymes, it must be true.

                                        News Roundup
                                        FreeBSD 12.1 Runs Refreshingly Well With AMD Ryzen Threadripper 3970X

                                        For those of you interested in AMD's new Ryzen Threadripper 3960X/3970X processors with TRX40 motherboards for running FreeBSD, the experience in our initial testing has been surprisingly pleasant. In fact, it works out-of-the-box which one could argue is better than the current Linux support that needs the MCE workaround for booting. Here are some benchmarks of FreeBSD 12.1 on the Threadripper 3970X compared to Linux and Windows for this new HEDT platform.

                                        It was refreshing to see FreeBSD 12.1 booting and running just fine with the Ryzen Threadripper 3970X 32-core/64-thread processor from the ASUS ROG ZENITH II EXTREME motherboard and all core functionality working including the PCIe 4.0 NVMe SSD storage, onboard networking, etc. The system was running with 4 x 16GB DDR4-3600 memory, 1TB Corsair Force MP600 NVMe SSD, and Radeon RX 580 graphics. It was refreshing to see FreeBSD 12.1 running well with this high-end AMD Threadripper system considering Linux even needed a boot workaround.

                                        While the FreeBSD 12.1 experience was trouble-free with the ASUS TRX40 motherboard (ROG Zenith II Extreme) and AMD Ryzen Threadripper 3970X, DragonFlyBSD unfortunately was not. Both DragonFlyBSD 5.6.2 stable and the DragonFlyBSD daily development snapshot from last week were yielding a panic on boot. So with that, DragonFlyBSD wasn't tested for this Threadripper 3970X comparison but just FreeBSD 12.1.

                                        FreeBSD 12.1 on the Threadripper 3970X was benchmarked both with its default LLVM Clang 8.0.1 compiler and again with GCC 9.2 from ports for ruling out compiler differences. The FreeBSD 12.1 performance was compared to last week's Windows 10 vs. Linux benchmarks with the same system.

                                        BSDCan 2020 CFP

                                        BSDCan 2020 will be held 5-6 (Fri-Sat) June, 2020 in Ottawa, at the University of Ottawa. It will be preceded by two days of tutorials on 3-4 June (Wed-Thu).

                                        NOTE the change of month in 2020 back to June Also: do not miss out on the Goat BOF on Tuesday 2 June.

                                        We are now accepting proposals for talks. The talks should be designed with a very strong technical content bias. Proposals of a business development or marketing nature are not appropriate for this venue.

                                        • See http://www.bsdcan.org/2020/
                                        • If you are doing something interesting with a BSD operating system, please submit a proposal. Whether you are developing a very complex system using BSD as the foundation, or helping others and have a story to tell about how BSD played a role, we want to hear about your experience. People using BSD as a platform for research are also encouraged to submit a proposal. Possible topics include:

                                          • How we manage a giant installation with respect to handling spam.
                                          • and/or sysadmin.
                                          • and/or networking.
                                          • Cool new stuff in BSD
                                          • Tell us about your project which runs on BSD
                                          • other topics (see next paragraph)
                                          • From the BSDCan website, the Archives section will allow you to review the wide variety of past BSDCan presentations as further examples.

                                            Both users and developers are encouraged to share their experiences.

                                            HardenedBSD Infrastructure Goals

                                            2019 has been an extremely productive year with regards to HardenedBSD's infrastructure. Several opportunities aligned themselves in such a way as to open a door for a near-complete rebuild with a vast expansion.

                                            The last few months especially have seen a major expansion of our infrastructure. We obtained a number of to-be-retired Dell R410 servers. The crash of our nightly build server provided the opportunity to deploy these R410 servers, doubling our build capacity.

                                            My available time to spend on HardenedBSD has decreased compared to this time last year. As part of rebuilding our infrastructure, I wanted to enable the community to be able to contribute. I'm structuring the work such that help is just a pull request away. Those in the HardenedBSD community who want to contribute to the infrastructure work can simply open a pull request. I'll review the code, and deploy it after a successful review. Users/contributors don't need access to our servers in order to improve them.

                                            My primary goal for the rest of 2019 and into 2020 is to become fully self-hosted, with the sole exception of email. I want to transition the source-of-truth git repos to our own infrastructure. We will still provide a read-only mirror on GitHub.

                                            As I develop this infrastructure, I'm doing so with human rights in mind. HardenedBSD is in a very unique position. In 2020, I plan to provide production Tor Onion Services for the various bits of our infrastructure. HardenedBSD will provide access to its various internal services to its developers and contributors. The entire development lifecycle, going from dev to prod, will be able to happen over Tor.

                                            Transparency will be key moving forward. Logs for the auto-sync script are now published directly to GitHub. Build logs will be, soon, too. Logs of all automated processes, and the code for those processes, will be tracked publicly via git. This will be especially crucial for development over Tor.

                                            Integrating Tor into our infrastructure so deeply increases risk and maintenance burden. However, I believe that through added transparency, we will be able to mitigate risk. Periodic audits will need to be performed and published.

                                            I hope to migrate HardenedBSD's site away from Drupal to a static site generator. We don't really need the dynamic capabilities Drupal gives us. The many security issues Drupal and PHP both bring also leave much to be desired.

                                            So, that's about it. I spent the last few months of 2019 laying the foundation for a successful 2020. I'm excited to see how the project grows.

                                            Beastie Bits
                                            • FuryBSD - KDE plasma flavor now available
                                            • DragonFly - git: virtio - Fix LUN scan issue w/ Google Cloud
                                            • LPI is looking for BSD Specialist learning material writers
                                            • ZFS sync/async + ZIL/SLOG, explained
                                            • BSD-Licensed Combinatorics library/utility
                                            • SSL client vs server certificates and bacula-fd
                                            • MaxxDesktop planning to come to FreeBSD Project Page
                                            • Feedback/Questions
                                              • Tom - ZFS Mirror with different speeds
                                              • Jeff - Knowledge is power
                                              • Johnny - Episode 324 response to Jacob
                                              • Pat - NYC*BUG meeting Jan Meeting Location
                                                • Send questions, comments, show ideas/topics, or stories you want mentioned on the show to [email protected]
                                                • Your browser does not support the HTML5 video tag.
                                                  1 hr 10 min
                                                • 330: Happy Holidays, All(an)

                                                  Authentication Vulnerabilities in OpenBSD, NetBSD 9.0 RC1 is available, Running FreeNAS on a DigitalOcean droplet, NomadBSD 1.3 is here, at e2k19 nobody can hear you scream, and more.

                                                  Headlines
                                                  Authentication vulnerabilities in OpenBSD
                                                  • We discovered an authentication-bypass vulnerability in OpenBSD's authentication system: this vulnerability is remotely exploitable in smtpd, ldapd, and radiusd, but its real-world impact should be studied on a case-by-case basis. For example, sshd is not exploitable thanks to its defense-in-depth mechanisms.
                                                  • From the manual page of login.conf:
                                                  • OpenBSD uses BSD Authentication, which is made up of a variety of authentication styles. The authentication styles currently provided are:

                                                    passwd Request a password and check it against the password in the master.passwd file. See login_passwd(8).
                                                    skey Send a challenge and request a response, checking it with S/Key (tm) authentication. See login_skey(8).
                                                    yubikey Authenticate using a Yubico YubiKey token. See login_yubikey(8).
                                                    For any given style, the program /usr/libexec/auth/login_style is used to
                                                    perform the authentication. The synopsis of this program is:
                                                    /usr/libexec/auth/login_style [-v name=value] [-s service] username class

                                                    • This is the first piece of the puzzle: if an attacker specifies a username of the form "-option", they can influence the behavior of the authentication program in unexpected ways.
                                                    • login_passwd [-s service] [-v wheel=yes|no] [-v lastchance=yes|no] user [class] The service argument specifies which protocol to use with the invoking program. The allowed protocols are login, challenge, and response. (The challenge protocol is silently ignored but will report success as passwd-style authentication is not challenge-response based).
                                                      • This is the second piece of the puzzle: if an attacker specifies the username "-schallenge" (or "-schallenge:passwd" to force a passwd-style authentication), then the authentication is automatically successful and therefore bypassed.
                                                      • Case study: smtpd
                                                      • Case study: ldapd
                                                      • Case study: radiusd
                                                      • Case study: sshd
                                                      • Acknowledgments: We thank Theo de Raadt and the OpenBSD developers for their incredibly quick response: they published patches for these vulnerabilities less than 40 hours after our initial contact. We also thank MITRE's CVE Assignment Team.
                                                      • First release candidate for NetBSD 9.0 available!
                                                        • Since the start of the release process four months ago a lot of improvements went into the branch - more than 500 pullups were processed!
                                                        • This includes usbnet (a common framework for usb ethernet drivers), aarch64 stability enhancements and lots of new hardware support, installer/sysinst fixes and changes to the NVMM (hardware virtualization) interface.
                                                        • We hope this will lead to the best NetBSD release ever (only to be topped by NetBSD 10 next year).
                                                        • Here are a few highlights of the new release:

                                                        • Support for Arm AArch64 (64-bit Armv8-A) machines, including "Arm ServerReady"

                                                          compliant machines (SBBR+SBSA)
                                                          Enhanced hardware support for Armv7-A
                                                          Updated GPU drivers (e.g. support for Intel Kabylake)
                                                          Enhanced virtualization support
                                                          Support for hardware-accelerated virtualization (NVMM)
                                                          Support for Performance Monitoring Counters
                                                          Support for Kernel ASLR
                                                          Support several kernel sanitizers (KLEAK, KASAN, KUBSAN)
                                                          Support for userland sanitizers
                                                          Audit of the network stack
                                                          Many improvements in NPF
                                                          Updated ZFS
                                                          Reworked error handling and NCQ support in the SATA subsystem
                                                          Support a common framework for USB Ethernet drivers (usbnet)

                                                        • More information on the RC can be found on the NetBSD 9 release page

                                                        • News Roundup
                                                          Running FreeNAS on a Digitalocean droplet
                                                          • ZFS is awesome. FreeBSD even more so. FreeNAS is the battle-tested, enterprise-ready-yet-home-user-friendly software defined storage solution which is cooler then deep space, based on FreeBSD and makes heavy use of ZFS. This is what I (and soooooo many others) use for just about any storage-related task. I can go on and on and on about what makes it great, but if you're here, reading this, you probably know all that already and we can skip ahead.
                                                          • I've needed an offsite FreeNAS setup to replicate things to, to run some things, to do some stuff, basically, my privately-owned, tightly-controlled NAS appliance in the cloud, one I control from top to bottom and with support for whatever crazy thing I'm trying to do. Since I'm using DigitalOcean as my main VPS provider, it seemed logical to run FreeNAS there, however, you can't. While DO supports many many distos and pre-setup applications (e.g OpenVPN), FreeNAS isn't a supported feature, at least not in the traditional way :)
                                                          • Before we begin, here's the gist of what we're going to do:
                                                          • Base of a FreeBSD droplet, we'll re-image our boot block device with FreeNAS iso. We'll then install FreeNAS on the second block device. Once done we're going to do the ol' switcheroo: we're going to re-image our original boot block device using the now FreeNAS-installed second block device.

                                                            • Part 1: re-image our boot block device to boot FreeNAS install media.
                                                            • Part 2: Install FreeNAS on the second block-device
                                                            • Part 3: Re-image the boot block device using the FreeNAS-installed block device
                                                            • NomadBSD 1.3 is now available
                                                              • From the release notes:
                                                              • The base system has been changed to FreeBSD 12.1-RELEASE-p1

                                                                Due to a deadlock problem, FreeBSD's unionfs has been replaced by unionfs-fuse
                                                                The GPT layout has been changed to MBR. This prevents problems with Lenovo
                                                                systems that refuse to boot from GPT if "lenovofix" is not set, and systems that
                                                                hang on boot if "lenovofix" is set.
                                                                Support for ZFS installations has been added to the NomadBSD installer.
                                                                The rc-script for setting up the network interfaces has been fixed and improved.
                                                                Support for setting the country code for the wlan device has been added.
                                                                Auto configuration for running in VirtualBox has been added.
                                                                A check for the default display has been added to the graphics configuration scripts. This fixes problems where users with Optimus have their NVIDIA card disabled, and use the integrated graphics chip instead.
                                                                NVIDIA driver version 440 has been added.
                                                                nomadbsd-dmconfig, a Qt tool for selecting the display manager theme, setting the
                                                                default user and autologin has been added.
                                                                nomadbsd-adduser, a Qt tool for added preconfigured user accounts to the system has been added.
                                                                Martin Orszulik added Czech translations to the setup and installation wizard.
                                                                The NomadBSD logo, designed by Ian Grindley, has been changed.
                                                                Support for localized error messages has been added.
                                                                Support for localizing the password prompts has been added.
                                                                Some templates for starting other DEs have been added to ~/.xinitrc.
                                                                The interfaces of nomadbsd-setup-gui and nomadbsd-install-gui have been improved.
                                                                A script that helps users to configure a multihead systems has been added.
                                                                The Xorg driver for newer Intel GPUs has been changed from "intel" to "modesetting".
                                                                /proc has been added to /etc/fstab
                                                                A D-Bus session issue has been fixed which prevented thunar from accessing samba shares.
                                                                DSBBg which allows users to change and manage wallpapers has been added.
                                                                The latest version of update_obmenu now supports auto-updating the Openbox menu. Manually updating the Openbox menu after packet (de)installation is therefore no longer needed.

                                                                Support for multiple keyboard layouts has been added.

                                                                www/palemoon has been removed.
                                                                mail/thunderbird has been removed.
                                                                audio/audacity has been added.
                                                                deskutils/orage has been added.
                                                                the password manager fpm2 has been replaced by KeePassXC
                                                                mail/sylpheed has been replaced by mail/claws-mail
                                                                multimedia/simplescreenrecorder has been added.
                                                                DSBMC has been changed to DSBMC-Qt
                                                                Many small improvements and bug fixes.

                                                                At e2k19 nobody can hear you scream
                                                                • After 2 years it was once again time to pack skis and snowshoes, put a satellite dish onto a sledge and hike through the snowy rockies to the Elk Lakes hut.
                                                                • I did not really have much of a plan what I wanted to work on but there were a few things I wanted to look into. One of them was rpki-client and the fact that it was so incredibly slow. Since Bob beck@ was around I started to ask him innocent X509 questions ... as if there are innocent X509 questions! Mainly about the abuse of the X509_STORE in rpki-client. Pretty soon it was clear that rpki-client did it all wrong and most of the X509 verification had to be rewritten. Instead of only storing the root certificates in the store and passing the intermediate certs as a chain to the verification function rpki-client threw everything into it. The X509_STORE is just not built for such an abuse and so it was no wonder that this was slow.
                                                                • Lucky me I pulled benno@ with me into this dark hole of libcrypto code. He managed to build up an initial diff to pass the chains as a STACK_OF(X509) and together we managed to get it working. A big thanks goes to ingo@ who documented most of the functions we had to use. Have a look at STACK_OF(3) and sk_pop_free(3) to understand why benno@ and I slowly turned crazy.
                                                                • Our next challenge was to only load the necessary certificate revocation list into the X509_STORE_CTX. While doing those changes it became obvious that some of the data structures needed better lookup functions. Looking up certificates was done using a linear lookup and so we replaced the internal certificate and CRL tables with RB trees for fast lookups. deraadt@ also joined the rpki-client commit fest and changed the output code to use rename(2) so that files are replaced in an atomic operation. Thanks to this rpki-client can now be safely run from cron (there is an example in the default crontab).
                                                                • I did not plan to spend most of my week hacking on rpki-client but in the end I'm happy that I did and the result is fairly impressive. Working with libcrypto code and especially X509 was less than pleasant. Our screams of agony died away in the snowy rocky mountains and made Bob deep dive into UVM with a smile since he knew that benno@ and I had it worse.
                                                                • In case you wonder thanks to all changes at e2k19 rpki-client improved from over 20min run time to validate all VRPS to roughly 1min to do the same job. A factor 20 improvement!
                                                                • Thanks to Theo, Bob and Howie to make this possible. To all the cooks for the great food and to Xplornet for providing us with Internet at the hut.
                                                                • Beastie Bits
                                                                  • FOSDEM 2020 BSD Devroom schedule
                                                                  • Easy Minecraft Server on FreeBSD Howto
                                                                  • stats(3) framework in the TCP stack
                                                                  • 4017 days of uptime
                                                                  • sysget - A front-end for every package manager
                                                                  • PlayOnBSD’s Cross-BSD Shopping Guide
                                                                  • Feedback/Questions
                                                                    • Pat asks about the proper disk drive type for ZFS
                                                                    • Brad asks about a ZFS rosetta stone
                                                                      • Send questions, comments, show ideas/topics, or stories you want mentioned on the show to [email protected]
                                                                      • Your browser does not support the HTML5 video tag.

                                                                        Special Guest: Mariusz Zaborski.

                                                                        1 hr 16 min
                                                                      • 329: Lucas’ Arts

                                                                        In this episode, we interview Michael W. Lucas about his latest book projects, including the upcoming SNMP Mastery book.

                                                                        Interview - Michael Lucas
                                                                        • Send questions, comments, show ideas/topics, or stories you want mentioned on the show to [email protected]
                                                                        • Your browser does not support the HTML5 video tag.

                                                                          Special Guest: Michael W Lucas.

                                                                          52 min
                                                                        • 328: EPYC Netflix Stack

                                                                          LLDB Threading support now ready, Multiple IPSec VPN tunnels with FreeBSD, Netflix Optimized FreeBSD's Network Stack More Than Doubled AMD EPYC Performance, happy eyeballs with unwind(8), AWS got FreeBSD ARM 12, OpenSSH U2F/FIDO support, and more.

                                                                          Headlines
                                                                          LLDB Threading support now ready for mainline

                                                                          Upstream describes LLDB as a next generation, high-performance debugger. It is built on top of LLVM/Clang toolchain, and features great integration with it. At the moment, it primarily supports debugging C, C++ and ObjC code, and there is interest in extending it to more languages.

                                                                          In February, I have started working on LLDB, as contracted by the NetBSD Foundation. So far I've been working on reenabling continuous integration, squashing bugs, improving NetBSD core file support, extending NetBSD's ptrace interface to cover more register types and fix compat32 issues and fixing watchpoint support. Then, I've started working on improving thread support which is taking longer than expected. You can read more about that in my September 2019 report.

                                                                          So far the number of issues uncovered while enabling proper threading support has stopped me from merging the work-in-progress patches. However, I've finally reached the point where I believe that the current work can be merged and the remaining problems can be resolved afterwards. More on that and other LLVM-related events happening during the last month in this report.

                                                                          Multiple IPSec VPN tunnels with FreeBSD

                                                                          The FreeBSD handbook describes an IPSec VPN tunnel between 2 FreeBSD hosts (see https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/ipsec.html)

                                                                          But it is also possible to have multiple, 2 or more, IPSec VPN tunnels created and running on a FreeBSD host. How to implement and configure this is described below.

                                                                          The requirements is to have 3 locations (A, B and C) connected with IPSec VPN tunnels using FreeBSD (11.3-RELEASE).

                                                                          Each location has 1 IPSec VPN host running FreeBSD (VPN host A, B and C).

                                                                          VPN host A has 2 IPSec VPN tunnels: 1 to location B (VPN host B) and 1 to location C (VPN host C).

                                                                          News Roundup
                                                                          Netflix Optimized FreeBSD's Network Stack More Than Doubled AMD EPYC Performance

                                                                          Drew Gallatin of Netflix presented at the recent EuroBSDcon 2019 conference in Norway on the company's network stack optimizations to FreeBSD. Netflix was working on being able to deliver 200Gb/s network performance for video streaming out of Intel Xeon and AMD EPYC servers, to which they are now at 190Gb/s+ and in the process that doubled the potential of EPYC Naples/Rome servers and also very hefty upgrades too for Intel.

                                                                          Netflix has long been known to be using FreeBSD in their data centers particularly where network performance is concerned. But in wanting to deliver 200Gb/s throughput from individual servers led them to making NUMA optimizations to the FreeBSD network stack. Allocating NUMA local memory for kernel TLS crypto buffers and for backing files sent via sentfile were among their optimizations. Changes to network connection handling and dealing with incoming connections to Nginx were also made.

                                                                          For those just wanting the end result, Netflix's NUMA optimizations to FreeBSD resulted in their Intel Xeon servers going from 105Gb/s to 191Gb/s while the NUMA fabric utilization dropped from 40% to 13%.

                                                                          unwind(8); "happy eyeballs"

                                                                          In case you are wondering why happy eyeballs: It's a variation on this:

                                                                          https://en.wikipedia.org/wiki/Happy_Eyeballs

                                                                          unwind has a concept of a best nameserver type. It considers a configured DoT nameserver to be better than doing it's own recursive resolving. Recursive resolving is considered to be better than asking the dhcp provided nameservers.

                                                                          This diff sorts the nameserver types by quality, as above (validation, resolving, dead...), and as a tie breaker it adds the median of the round trip time of previous queries into the mix.

                                                                          One other interesting thing about this is that it gets us past captive portals without a check URL, that's why this diff is so huge, it rips out all the captive portal stuff (please apply with patch -E):

                                                                          17 files changed, 385 insertions(+), 1683 deletions(-)

                                                                          Please test this. I'm particularly interested in reports from people who move between networks and need to get past captive portals.

                                                                          Amazon now has FreeBSD ARM 12

                                                                          Product Overview

                                                                          FreeBSD is an operating system used to power servers, desktops, and embedded systems. Derived from BSD, the version of UNIX developed at the University of California, Berkeley, FreeBSD has been continually developed by a large community for more than 30 years.

                                                                          FreeBSD's networking, security, storage, and monitoring features, including the pf firewall, the Capsicum and CloudABI capability frameworks, the ZFS filesystem, and the DTrace dynamic tracing framework, make FreeBSD the platform of choice for many of the busiest web sites and most pervasive embedded networking and storage systems.

                                                                          OpenSSH U2F/FIDO support in base

                                                                          I just committed all the dependencies for OpenSSH security key (U2F) support to base and tweaked OpenSSH to use them directly. This means there will be no additional configuration hoops to jump through to use U2F/FIDO2 security keys.

                                                                          Hardware backed keys can be generated using "ssh-keygen -t ecdsa-sk" (or "ed25519-sk" if your token supports it). Many tokens require to be touched/tapped to confirm this step.

                                                                          You'll get a public/private keypair back as usual, except in this case, the private key file does not contain a highly-sensitive private key but instead holds a "key handle" that is used by the security key to derive the real private key at signing time.

                                                                          So, stealing a copy of the private key file without also stealing your security key (or access to it) should not give the attacker anything.

                                                                          Once you have generated a key, you can use it normally - i.e. add it to an agent, copy it to your destination's authorized_keys files (assuming they are running -current too), etc. At authentication time, you will be prompted to tap your security key to confirm the signature operation - this makes theft-of-access attacks against security keys more difficult too.

                                                                          Please test this thoroughly - it's a big change that we want to have stable before the next release.

                                                                          Beastie Bits
                                                                          • DragonFly - git: virtio - Fix LUN scan issue w/ Google Cloud
                                                                          • Really fast Markov chains in ~20 lines of sh, grep, cut and awk
                                                                          • FreeBSD Journal Sept/Oct 2019
                                                                          • Michael Dexter is raising money for Bhyve development
                                                                          • syscall call-from verification
                                                                          • FreeBSD Forums Howto Section
                                                                          • Feedback/Questions
                                                                            • Jeroen - Feedback
                                                                            • Savo - pfsense ports
                                                                            • Tin - I want to learn C
                                                                              • Send questions, comments, show ideas/topics, or stories you want mentioned on the show to [email protected]
                                                                              • Your browser does not support the HTML5 video tag.
                                                                                58 min
                                                                              • 327: ZFS Rename Repo

                                                                                We read FreeBSD’s third quarterly status report, OpenBSD on Sparc64, ZoL repo move to OpenZFS, GEOM NOP, keeping NetBSD up-to-date, and more.

                                                                                Headlines
                                                                                FreeBSD third quarterly status report for 2019

                                                                                This quarter the reports team has been more active than usual thanks to a better organization: calls for reports and reminders have been sent regularly, reports have been reviewed and merged quickly (I would like to thank debdrup@ in particular for his reviewing work).

                                                                                Efficiency could still be improved with the help of our community. In particular, the quarterly team has found that many reports have arrived in the last days before the deadline or even after. I would like to invite the community to follow the guidelines below that can help us sending out the reports sooner.

                                                                                Starting from next quarter, all quarterly status reports will be prepared the last month of the quarter itself, instead of the first month after the quarter's end. This means that deadlines for submitting reports will be the 1st of January, April, July and October.

                                                                                Next quarter will then be a short one, covering the months of November and December only and the report will probably be out in mid January.

                                                                                OpenBSD on Sparc64

                                                                                OpenBSD, huh? Yes, I usually write about FreeBSD and that’s in fact what I tried installing on the machine first. But I ran into problems with it very early on (never even reached single user mode) and put it aside for later. Since I powered up the SunFire again last month, I needed an OS now and chose OpenBSD for the simple reason that I have it available.

                                                                                First I wanted to call this article simply “OpenBSD on SPARC” – but that would have been misleading since OpenBSD used to support 32-bit SPARC processors, too. The platform was just put to rest after the 5.9 release.

                                                                                Version 6.0 was the last release of OpenBSD that came on CD-ROM. When I bought it, I thought that I’d never use the SPARC CD. But here was the chance! While it is an obsolete release, it comes with the cryptographic signatures to verify the next release. So the plan is to start at 6.0 as I can trust the original CDs and then update to the latest release. This will also be an opportunity to recap on some of the things that changed over the various versions.

                                                                                News Roundup
                                                                                ZoL repo move to OpenZFS

                                                                                Because it will contain the ZFS source code for both Linux and FreeBSD, we will rename the "ZFSonLinux" code repository to "OpenZFS". Specifically, the repo at http://github.com/ZFSonLinux/zfs will be moved to the OpenZFS organization, at http://github.com/OpenZFS/zfs.

                                                                                The next major release of ZFS for Linux and FreeBSD will be "OpenZFS 2.0", and is expected to ship in 2020.

                                                                                Mcclure111 Sun Thread

                                                                                A long time ago— like 15 years ago— I worked at Sun Microsystems. The company was nearly dead at the time (it died a couple years later) because they didn't make anything that anyone wanted to buy anymore. So they had a lot of strange ideas about how they'd make their comeback.

                                                                                GEOM NOP

                                                                                Sometimes while testing file systems or applications you want to simulate some errors on the disk level. The first time I heard about this need was from Baptiste Daroussin during his presentation at AsiaBSDCon 2016. He mentioned how they had built a test lab with it. The same need was recently discussed during the PGCon 2019, to test a PostgreSQL instance. If you are FreeBSD user, I have great news for you: there is a GEOM provider which allows you to simulate a failing device.

                                                                                GNOP allows us to configure transparent providers from existing ones. The first interesting option of it is that we can slice the device into smaller pieces, thanks to the ‘offset option’ and ‘stripsesize’. This allows us to observe how the data on the disk is changing. Let’s assume that we want to observe the changes in the GPT table when the GPT flags are added or removed (for example the bootme flags which are described here). We can use dd every time and analyze it using absolute values from the disks.

                                                                                Keeping NetBSD up-to-date with pkg_comp 2.0

                                                                                This is a tutorial to guide you through the shiny new pkg_comp 2.0 on NetBSD.

                                                                                Goals: to use pkg_comp 2.0 to build a binary repository of all the packages you are interested in; to keep the repository fresh on a daily basis; and to use that repository with pkgin to maintain your NetBSD system up-to-date and secure.

                                                                                This tutorial is specifically targeted at NetBSD but should work on other platforms with some small changes. Expect, at the very least, a macOS-specific tutorial as soon as I create a pkg_comp standalone installer for that platform.

                                                                                Beastie Bits
                                                                                • DragonFly - Radeon Improvements
                                                                                • NomadBSD review
                                                                                • Spongebob OpenBSD Security Comic
                                                                                • Forth : The Early Years
                                                                                • LCM+L PDP-7 booting and running UNIX Version 0
                                                                                • Feedback/Questions
                                                                                  • Chris - Ctrl-T
                                                                                    • Improved Ctrl+t that shows kernel backtrace
                                                                                    • Brian - Migrating NexentaStore to FreeBSD/FreeNAS
                                                                                    • Avery - How to get involved
                                                                                      • Send questions, comments, show ideas/topics, or stories you want mentioned on the show to [email protected]
                                                                                      • Your browser does not support the HTML5 video tag.
                                                                                        1 hr 24 min
                                                                                      • 326: Certified BSD

                                                                                        LPI releases BSD Certification, openzfs trip report, Using FreeBSD with ports, LLDB threading support ready, Linux versus Open Source Unix, and more.

                                                                                        Headlines
                                                                                        Linux Professional Institute Releases BSD Specialist Certification - re BSD Certification Group

                                                                                        Linux Professional Institute extends its Open Technology certification track with the BSD Specialist Certification. Starting October 30, 2019, BSD Specialist exams will be globally available. The certification was developed in collaboration with the BSD Certification Group which merged with Linux Professional Institute in 2018.

                                                                                        G. Matthew Rice, the Executive Director of Linux Professional Institute says that "the release of the BSD Specialist certification marks a major milestone for Linux Professional Institute. With this new credential, we are reaffirming our belief in the value of, and support for, all open source technologies. As much as possible, future credentials and educational programs will include coverage of BSD.”

                                                                                        OpenZFS Trip Report

                                                                                        The seventh annual OpenZFS Developer Summit took place on November 4th and 5th in San Francisco and brought together a healthy mix of familiar faces and new community participants. Several folks from iXsystems took part in the talks, hacking, and socializing at this amazing annual event. The messages of the event can be summed up as Unification, Refinement, and Ecosystem Tooling.

                                                                                        News Roundup
                                                                                        Using FreeBSD with Ports (2/2): Tool-assisted updating
                                                                                        • Part 1 here: https://eerielinux.wordpress.com/2019/08/18/using-freebsd-with-ports-1-2-classic-way-with-tools/
                                                                                        • In the previous post I explained why sometimes building your software from ports may make sense on FreeBSD. I also introduced the reader to the old-fashioned way of using tools to make working with ports a bit more convenient.

                                                                                          In this follow-up post we’re going to take a closer look at portmaster and see how it especially makes updating from ports much, much easier. For people coming here without having read the previous article: What I describe here is not what every FreeBSD admin today should consider good practice (any more)! It can still be useful in special cases, but my main intention is to discuss this for building up the foundation for what you actually should do today.

                                                                                          LLDB Threading support now ready for mainline

                                                                                          Upstream describes LLDB as a next generation, high-performance debugger. It is built on top of LLVM/Clang toolchain, and features great integration with it. At the moment, it primarily supports debugging C, C++ and ObjC code, and there is interest in extending it to more languages.

                                                                                          In February, I have started working on LLDB, as contracted by the NetBSD Foundation. So far I've been working on reenabling continuous integration, squashing bugs, improving NetBSD core file support, extending NetBSD's ptrace interface to cover more register types and fix compat32 issues and fixing watchpoint support. Then, I've started working on improving thread support which is taking longer than expected. You can read more about that in my September 2019 report.

                                                                                          So far the number of issues uncovered while enabling proper threading support has stopped me from merging the work-in-progress patches. However, I've finally reached the point where I believe that the current work can be merged and the remaining problems can be resolved afterwards. More on that and other LLVM-related events happening during the last month in this report.

                                                                                          Linux VS open source UNIX
                                                                                          Beastie Bits
                                                                                          • Support for Realtek RTL8125 2.5Gb Ethernet controller
                                                                                          • Computer Files Are Going Extinct
                                                                                          • FreeBSD kernel hacking
                                                                                          • Modern BSD Computing for Fun on a VAX! Trying to use a VAX in today's world by Jeff Armstrong
                                                                                          • MidnightBSD 1.2 Released
                                                                                          • Feedback/Questions
                                                                                            • Paulo - Zfs snapshots
                                                                                            • Phillip - GCP
                                                                                            • A Listener - Old episodes?
                                                                                              • Send questions, comments, show ideas/topics, or stories you want mentioned on the show to [email protected]
                                                                                              • Your browser does not support the HTML5 video tag.
                                                                                                1 hr 1 min
                                                                                              • 325: Cracking Rainbows

                                                                                                FreeBSD 12.1 is here, A history of Unix before Berkeley, FreeBSD development setup, HardenedBSD 2019 Status Report, DNSSEC, compiling RainbowCrack on OpenBSD, and more.

                                                                                                Headlines
                                                                                                FreeBSD 12.1
                                                                                                • Some of the highlights:

                                                                                                  • BearSSL has been imported to the base system.
                                                                                                  • The clang, llvm, lld, lldb, compiler-rt utilities and libc++ have been updated to version 8.0.1.
                                                                                                  • OpenSSL has been updated to version 1.1.1d.
                                                                                                  • Several userland utility updates.
                                                                                                  • For a complete list of new features and known problems, please see the online release notes and errata list, available at: https://www.FreeBSD.org/releases/12.1R/relnotes.html

                                                                                                  • A History of UNIX before Berkeley: UNIX Evolution: 1975-1984.

                                                                                                    Nobody needs to be told that UNIX is popular today. In this article we will show you a little of where it was yesterday and over the past decade. And, without meaning in the least to minimise the incredible contributions of Ken Thompson and Dennis Ritchie, we will bring to light many of the others who worked on early versions, and try to show where some of the key ideas came from, and how they got into the UNIX of today.

                                                                                                    Our title says we are talking about UNIX evolution. Evolution means different things to different people. We use the term loosely, to describe the change over time among the many different UNIX variants in use both inside and outside Bell Labs. Ideas, code, and useful programs seem to have made their way back and forth - like mutant genes - among all the many UNIXes living in the phone company over the decade in question.

                                                                                                    Part One looks at some of the major components of the current UNIX system - the text formatting tools, the compilers and program development tools, and so on. Most of the work described in Part One took place at Research'', a part of Bell Laboratories (now AT&T Bell Laboratories, then as nowthe Labs''), and the ancestral home of UNIX. In planned (but not written) later parts, we would have looked at some of the myriad versions of UNIX - there are far more than one might suspect. This includes a look at Columbus and USG and at Berkeley Unix. You'll begin to get a glimpse inside the history of the major streams of development of the system during that time.

                                                                                                    News Roundup
                                                                                                    My FreeBSD Development Setup

                                                                                                    I do my FreeBSD development using git, tmux, vim and cscope.

                                                                                                    I keep a FreeBSD fork on my github, I have forked https://github.com/freebsd/freebsd to https://github.com/adventureloop/freebsd

                                                                                                    OPNsense 19.7.6 released

                                                                                                    As we are experiencing the Suricata community first hand in Amsterdam we thought to release this version a bit earlier than planned. Included is the latest Suricata 5.0.0 release in the development version. That means later this November we will releasing version 5 to the production version as we finish up tweaking the integration and maybe pick up 5.0.1 as it becomes available.

                                                                                                    LDAP TLS connectivity is now integrated into the system trust store, which ensures that all required root and intermediate certificates will be seen by the connection setup when they have been added to the authorities section. The same is true for trusting self-signed certificates. On top of this, IPsec now supports public key authentication as contributed by Pascal Mathis.

                                                                                                    HardenedBSD November 2019 Status Report.

                                                                                                    We at HardenedBSD have a lot of news to share. On 05 Nov 2019, Oliver Pinter resigned amicably from the project. All of us at HardenedBSD owe Oliver our gratitude and appreciation. This humble project, named by Oliver, was born out of his thesis work and the collaboration with Shawn Webb. Oliver created the HardenedBSD repo on GitHub in April 2013. The HardenedBSD Foundation was formed five years later to carry on this great work.

                                                                                                    DNSSEC enabled in default unbound(8) configuration.

                                                                                                    DNSSEC validation has been enabled in the default unbound.conf(5) in -current. The relevant commits were from Job Snijders (job@)

                                                                                                    How to Install Shopware with NGINX and Let's Encrypt on FreeBSD 12

                                                                                                    Shopware is the next generation of open source e-commerce software. Based on bleeding edge technologies like Symfony 3, Doctrine2 and Zend Framework Shopware comes as the perfect platform for your next e-commerce project. This tutorial will walk you through the Shopware Community Edition (CE) installation on FreeBSD 12 system by using NGINX as a web server.

                                                                                                    • Requirements
                                                                                                    • Make sure your system meets the following minimum requirements:

                                                                                                      • Linux-based operating system with NGINX or Apache 2.x (with mod_rewrite) web server installed.
                                                                                                      • PHP 5.6.4 or higher with ctype, gd, curl, dom, hash, iconv, zip, json, mbstring, openssl, session, simplexml, xml, zlib, fileinfo, and pdo/mysql extensions. PHP 7.1 or above is strongly recommended.
                                                                                                      • MySQL 5.5.0 or higher.
                                                                                                      • Possibility to set up cron jobs.
                                                                                                      • Minimum 4 GB available hard disk space.
                                                                                                      • IonCube Loader version 5.0.0 or higher (optional).
                                                                                                      • How to Compile RainbowCrack on OpenBSD

                                                                                                        Project RainbowCrack was originally Zhu Shuanglei's implementation, it's not clear to me if the project is still just his or if it's even been maintained for a while. His page seems to have been last updated in August 2007.

                                                                                                        The Project RainbowCrack web page now has just binaries for Windows XP and Linux, both 32-bit and 64-bit versions.

                                                                                                        Earlier versions were available as source code. The version 1.2 source code does not compile on OpenBSD, and in my experience it doesn't compile on Linux, either. It seems to date from 2004 at the earliest, and I think it makes some version-2.4 assumptions about Linux kernel headers.

                                                                                                        • You might also look at ophcrack, a more modern tool, although it seems to be focused on cracking Windows XP/Vista/7/8/10 password hashes
                                                                                                        • Feedback/Questions
                                                                                                          • Reese - Amature radio info
                                                                                                          • Chris - VPN
                                                                                                          • Malcolm - NAT
                                                                                                            • Send questions, comments, show ideas/topics, or stories you want mentioned on the show to [email protected]
                                                                                                            • Your browser does not support the HTML5 video tag.
                                                                                                              58 min

                                                                                                            About BSD Now

                                                                                                            From the publisher's feed

                                                                                                            Created by three guys who love BSD, we cover the latest news and have an extensive series of tutorials, as well as interviews with various people from all areas of the BSD community. It also serves as…

                                                                                                            More shows like BSD Now

                                                                                                            The Changelog: Software Development, Open Source by Changelog Media

                                                                                                            The Changelog: Software Development, Open Source

                                                                                                            286 Listeners

                                                                                                            Security Now (Audio) by TWiT

                                                                                                            Security Now (Audio)

                                                                                                            2,011 Listeners

                                                                                                            MacBreak Weekly (Audio) by TWiT

                                                                                                            MacBreak Weekly (Audio)

                                                                                                            2,018 Listeners

                                                                                                            Accidental Tech Podcast by Marco Arment, Casey Liss, John Siracusa

                                                                                                            Accidental Tech Podcast

                                                                                                            2,144 Listeners

                                                                                                            LINUX Unplugged by Jupiter Broadcasting

                                                                                                            LINUX Unplugged

                                                                                                            272 Listeners

                                                                                                            Risky Business by Risky Business Media

                                                                                                            Risky Business

                                                                                                            374 Listeners

                                                                                                            Late Night Linux by The Late Night Linux Family

                                                                                                            Late Night Linux

                                                                                                            169 Listeners

                                                                                                            Darknet Diaries by Jack Rhysider

                                                                                                            Darknet Diaries

                                                                                                            8,063 Listeners

                                                                                                            Behind the Bastards by Cool Zone Media and iHeartPodcasts

                                                                                                            Behind the Bastards

                                                                                                            15,564 Listeners

                                                                                                            Linux Dev Time by The Late Night Linux Family

                                                                                                            Linux Dev Time

                                                                                                            22 Listeners

                                                                                                            2.5 Admins by The Late Night Linux Family

                                                                                                            2.5 Admins

                                                                                                            98 Listeners

                                                                                                            Linux After Dark by The Late Night Linux Family

                                                                                                            Linux After Dark

                                                                                                            29 Listeners

                                                                                                            This Day in AI Podcast by Michael Sharkey, Chris Sharkey

                                                                                                            This Day in AI Podcast

                                                                                                            221 Listeners

                                                                                                            Linux Matters by Linux Matters

                                                                                                            Linux Matters

                                                                                                            22 Listeners

                                                                                                            Better Offline by Cool Zone Media and iHeartPodcasts

                                                                                                            Better Offline

                                                                                                            608 Listeners