OpenBsd 7.5正式版

OpenBsd 7.5正式版

官方

系统:Android

日期:2026-01-31

类别:电脑软件

版本:

  • 详情
  • 相关
  • 评论
    OpenBSD这系统真的挺有意思的,它号称是世界上最安全的操作系统,这点我深信不疑。它跟别的Linux发行版不一样,它源自BSD,对代码品质要求极高,任何修改都要经过严格审查,而且完全集成了密码软件,让人用着特别踏实。它能支持17种硬件,从老古董Alpha到现在的AMD64都能跑,虽然软件包库没FreeBSD那么大,但服务器常用的工具基本都有,新版还加了Apache、OpenSSH这些核心组件,功能越来越强。 安装过程虽然步骤多,但逻辑很清晰。比如选键盘布局、设主机名、配网络,我一般喜欢用静态IP,这样更稳定。分区的时候,我习惯给根目录分10G,交换分区1G,剩下的给/opt,这样结构清晰。安装完记得重启,系统会自动生成密钥对,安全感满满。 安全配置这块才是重头戏。我强烈建议用M:Tier的openup来更新系统,方便又安全。保护裸机方面,默认SSH只开22端口,我习惯用pf防火墙屏蔽其他IP,只允许自己的公网地址访问。SSH登录必须用密钥,禁止root直接登录,端口也得换成非标准的,比如21598,这样能躲过很多扫描。我还喜欢开启VisualHostKey,连接时显示十六进制指纹,更直观。 系统优化上,如果是SSD硬盘,记得在fstab加noatime和softdep选项,能提升性能还能减少写入。DNS安全也不能忽视,我用dnscrypt-proxy配合unbound做加密DNS解析,防止中间人攻击。OpenBSD自带的OpenSSH、IPSec和PF防火墙都是业界标杆,尤其是PF,配置灵活又强大。它的加密库和随机数生成器也做得非常到位,连端口分配都是随机的,让攻击者无从下手。总之,OpenBSD是个值得折腾的系统,安全性和稳定性没得说,适合对安全有高要求的用户。OpenBsd是一款多平台,基于4.4BSD的类UNIX的操作系统,其是BSD衍生出的三种免费操作系统之一,被称为世界上最安全的操作系统。OpenBsds包含一些在其他操作系统缺少或是选择性的安全功能,它极度重视程式码的品质,任何对核心的修改都需要经过严格的程式码审阅,它完全集成了密码安全软件可保证数据安全。OpenBsds可以再17种不同的硬件环境下运行(包含DEC Alpha、Intel i386、Hewlett-Packard PA-RISC和AMD64等),像FreeBSD和NetBSD一样,OpenBSD也有很多应用软件支持,它包含了许多免费软件包的定制版本,它的软件库没有FreeBSD中的那么大,但是包含了大多数你想给Unix服务器或者工作站安装的工具。新版OpenBsds是目前做出最大改动的版本,其中加入了大量改进,包括硬件支持、通用网络堆栈、安装器、路由后台、用户层网络和安全性,此外还有各种核心组件和包,涵盖了Apache Web服务器、OpenSMTPD、OpenSSH、LibreSSL以及Syslogd。

    OpenBsd安装教程

    一、打开OpenBsd安装包,并进入安装第一步,此时会出现三个选项,输入I进入安装过程,输入U进入升级过程,输入S则进入一个shell环境,进入shell环境后可以输入install重新进入安装程序

    二、输入I进行安装
    1.进入Choose your keyboard layout(选择键盘布局)选项,一般都为us,也可以输入L列出键盘布局备选选项查看,然后选择自己的键盘布局
    2.进入Choose your keyboard layout(设置主机名)选项,这里设置为VM1
    3.进入网络配置部分,系统列出了当前全部的网卡,这里有两个vic0和vlan0,其中vic0是我们虚拟机配置里那个采用桥接方式的那个网卡,选择配置那一块网卡,默认为vic0,回车
    4.进入配置ipv4地址选项,默认是dhcp,我们采用静态ip,输入ipv4的地址:192.168.1.123回车,进入设置掩码选项,默认为255.255.255.0,如不对,自己在后面填写正确的掩码,回车,不配置ipv6地址,默认none,回车
    5.再一次进入选择网卡进行配置的选项,如果有多个网卡,这里可以配置下一个,这里选择done完成网卡配置,回车进入配置网关地址选项,填入19.168.1.1回车
    6.进入设置dns域名的选项,如果公司有域名这里可以填写如( openbsd.org或者baidu.com等)这里我填写openbsd.org。那么我的机器将来的唯一标识则是主机名加上域名,即为:VM1.openbsd.org。填写好回车,进入DNS解析服务器的ip地址,多个dns解析服务器的ip用逗号隔开,填写:202.106.195.68。以上操作步骤如下图:

    三、回车,系统询问还要进行其他的网络配置吗,默认NO回车,进入设置用户密码的选项,不回显
    1.连续输入两次。回车,系统询问是否默认启动sshd服务,默认为yes,建议选择yes开启ssh登陆
    2.系统询问是否默认启动ntpd服务,这是个时间同步服务,可以开启也可以不开启,如果系统需要准确的时间,建议开启以便和网络上的时间服务器进行时间同步,默认为no,这里选择不开启
    3.回车系统询问是否期望运行X window系统,默认为yes,这里可以选择yes也可以选择no,我这里选择yes
    4.回车系统询问是否默认运行x window ,默认值为no,这里选择默认值,即不启动x window,回车系统询问change the console to com0默认no即可
    5.下一步系统让新建用户,这里不新建用户选择no即可
    6.下一步,选择时区,可以输入L查看备选选项,这里选择Asia/Shanghai选项
    7.下一步系统列出了当前可用的磁盘,如果有多快磁盘,选择指定的磁盘回车,系统提示是否在/etc/fstab里面使用DUIDS替代默认的设备名称,默认为yes即可
    8.下一步系统提示是使用整个磁盘还是编辑MBR以使用部分磁盘,这里选择Whole全部即可

    四、下一步,系统会默认有一个分区方案,如果同意的话输入A采用自动分区方案,或者输入E编辑自动分区的方案或者输入c采用自定义分区方案,这里我采用自定义分区方案,输入c如图

    五、下一步进入自定义分区,输入?可以查看分区命令,分区编号可以是a到p的任何字母,但要注意,分区的时候,两个分区号代表特殊意义,即 b代表交换分区,c代表整个磁盘,所以添加第一个分区 a a即可,添加交换分区 a b ,不能使用a c,添加第三个分区 a

    六、offset是分区开始的地方,size是分区的大小,fs type默认即可,mount point填入挂载点。这里我给/分区分了10G的空间,交换分区分了1G空间,剩下29G分给了/opt分区

    七、完成后,系统进入选择安装介质的选项,默认cd回车即可,选择cd0,第一个光驱,回车,选择路径,默认即可。系统列出了都有哪些包可以安装

    八、取消选择的包可以使用-包名的方式,如-game51.tgz,选择一个包输入报名回车即可,选择好所要安装的包后回车开始安装openbsd系统

    九、安装完成后进入shell,为了使系统生效,我们需要重新启动系统,输入reboot

    十、重新启动过程中,系统会生成rsa密钥对等等,启动完成后,如输入root密码进入系统

    OpenBsd可运行的硬件

    1、Alpha:基于 Digital Alpha的系统
    2、amd64:基于 AMD64 的系统
    3、Cat:Strongarm 110 评估板 (Evaluation Board)
    4、hp300:Hewlett-Packard HP 9000 系列的 300 和 400 工作站
    5、HP/PA:Hewlett-Packard Precision Architecture (PA-RISC) 系统
    6、i386:基于 Intel® i386 体系结构和兼容处理器的标准计算机
    7、luna88k:Omron LUNA-88K 和 LUNA-88K2 工作站
    8、mac68k:基于 Motorola 680x0 的带 MMU 的 Apple Macintosh
    9、macppc:从 iMac 开始,基于 Apple PowerPC 的计算机
    10、mvme68k:基于 Motorola 680x0 的 VME 系统
    11、mvme88k:基于 Motorola 881x0 的 VME 系统
    12、SGI:基于 SGI MIPS 的工作站
    13、SPARC:Sun sun4-、sun4c- 和 sun4m 级的 SPARC 系统
    14、SPARC64:Sun UltraSPARC 系统
    15、VAX:基于 Digital VAX 的系统
    16、Zaurus:Sharp Zaurus C3x00 PDA

    OpenBsd安全配置使用

    一、为了更加安全,为了更加容易更新升级系统和包,可以使用 M:Tier的openup
    $ ftp https://stable.mtier.org/openup
    $ chmod +x openup
    $ sudo openup
    ===> Checking for openup update
    ===> Installing/updating binpatch(es)
    ===> Updating package(s)
    二、保护裸机
    OpenBSD缺省设置非常安全,没有服务监听端口,除了SSH,SSH监听的是缺省22端口,可以设定服务器只接受来自你的计算机的公共地址,其他IP地址全部屏蔽
    $ sudo vi /etc/pf.conf
    block in quick from ! x.x.x.x # 这里是你的公共IP地址
    pass out quick
    改变完成后,通过下面命令激活:
    $ sudo pfctl -f /etc/pf.conf
    下面是创建SSH key,失效root登录,使得SSH监听另外其他端口。首先是创建key,在Linux/BSD下客户端下可以如下使用-t ed25519,如果是Windows客户端,可以使用-t rsa
    $ ssh-keygen -t ed25519
    客户端产生Key以后,拷贝这个公共key到~/.ssh/authorized_keys:
    $ cp ~/.ssh/id_ed25519.pub ~/.ssh/authorized_keys
    复制你的私有key到远程服务器上,注意赋予600权限,设置正常后,可以通过下面命令连接正常:
    ssh -i your_private_key your_server_ip
    第二步是修改端口,端口号越高越避免扫描。
    $ sudo vi /etc/ssh/sshd_config
    # 修改缺省监听端口
    Port 21598
    # Authentication
    PasswordAuthentication yes # temporary
    PermitRootLogin no
    AllowUsers YOUR_USER
    AuthorizedKeysFile .ssh/authorized_keys
    AllowTcpForwarding no
    UsePrivilegeSeparation sandbox # Default for new installations.
    Subsystem sftp /usr/libexec/sftp-server
    重新启动sshd:
    $ sudo /etc/rc.d/sshd restart
    再从客户端连接服务器:"ssh -i your_private_key your_server_ip",如果一切正常,我们失效密码登录,修改/etc/ssh/sshd_config行:
    PasswordAuthentication no
    再重新启动sshd,测试是否成功。下面我们配置ssh key以十进制hex格式连接,ASCII图形方式:
    $ sudo vi /etc/ssh/ssh_config
    # Display fingerprint in hex and ASCII graphic when connecting
    VisualHostKey yes
    至此,我们已经设置SSH监听在非标端口,root无法直接登录,授权password失效,基于SSH key进行授权
    三、系统和网络
    如果你的服务器是基于SSD固态硬盘,那么在fstab文件中加入mount选项softdep和noatime可以提高磁盘性能,同时可以阻止文件属性 "last access time" 的写入
    $ sudo vi /etc/fstab
    YourDiskDUID.b none swap sw
    YourDiskDUID.a / ffs rw,noatime,softdep 1 1
    YourDiskDUID.k /home ffs rw,nodev,nosuid,noatime,softdep 1 2
    YourDiskDUID.d /tmp ffs rw,nodev,nosuid,noatime,softdep 1 2
    YourDiskDUID.f /usr ffs rw,nodev,noatime,softdep 1 2
    YourDiskDUID.g /usr/X11R6 ffs rw,nodev,noatime,softdep 1 2
    YourDiskDUID.h /usr/local ffs rw,nodev,noatime,softdep 1 2
    YourDiskDUID.j /usr/obj ffs rw,nodev,nosuid,noatime,softdep 1 2
    YourDiskDUID.i /usr/src ffs rw,nodev,nosuid,noatime,softdep 1 2
    YourDiskDUID.e /var ffs rw,nodev,nosuid,noatime,softdep 1 2
    如果你的服务器缺省基于DHCP,我们可以修改为手工DNS,这样减少被控制可能,类似windows下网卡中IP的配置,:
    $ sudo vi /etc/hostname.vio0
    inet 你的服务器公共地址 网络netmask
    加入网关地址
    $ sudo vi /etc/mygate
    服务器网关地址
    激活流量分发forward
    $ sudo sysctl net.inet.ip.forwarding=1
    $ sudo vi /etc/sysctl.conf
    net.inet.ip.forwarding=1
    DNS
    我们可以使用DNSCrypt让我们的DNS请求更加加密安全,不绑定到任何本地DNS缓存:
    $ export PKG_PATH=http://ftp.fr.openbsd.org/pub/OpenBSD/5.6/packages/amd64/
    $ sudo pkg_add dnscrypt-proxy
    $ sudo vi /etc/rc.local
    # DNSCrypt
    /usr/local/sbin/dnscrypt-proxy -a 127.0.0.1:40 -u _dnscrypt-proxy -d -l /dev/null -R dnscrypt.eu-dk
    你能以下面方式选择dnscrypt激活你的DNS服务器:
    $ sudo /usr/local/sbin/dnscrypt-proxy -a 127.0.0.1:40 -u _dnscrypt-proxy -d -l /dev/null -R dnscrypt.eu-dk
    现在我们配置和激活unbound,这已经包含在基本系统中,配置在/var/unbound目录:
    $ sudo vi /var/unbound/etc/unbound.conf
    server:
    username: _unbound
    directory: /var/unbound
    chroot: /var/unbound
    do-not-query-localhost: no
    interface: 127.0.0.1
    access-control: 0.0.0.0/0 refuse
    access-control: 127.0.0.0/8 allow
    access-control: 10.8.0.0/24 allow
    hide-identity: yes
    hide-version: yes
    auto-trust-anchor-file: "/var/unbound/db/root.key"
    forward-zone:
    name: "." # use for ALL queries
    forward-addr: 127.0.0.1@40 # dnscrypt-proxy
    不要忘记修改/etc/resolv.conf:
    $ sudo vi /etc/resolv.conf
    nameserver 127.0.0.1 # unbound 是在监听53端口
    运行Unbound,并且在系统启动时激活:
    $ sudo /etc/rc.d/unbound start
    $ sudo vi /etc/rc.conf.local
    # Unbound
    unbound_flags="-c /var/unbound/etc/unbound.conf"
    测试你的DNS链是否正常工作:
    $ host openbsd.org
    openbsd.org has address 129.128.5.194
    openbsd.org mail is handled by 6 shear.ucar.edu.
    openbsd.org mail is handled by 10 cvs.openbsd.org.
    Unbound监听在端口53,当连接上后分发到dnscrypt监听的端口40,再接触到外部dnscrypt激活的DNS服务器

    OpenBsd功能特色

    一、OpenSSH
    第一个值得关注的包是 OpenSSH,所有的 UNIX 和 Linux® 用户对它都很熟悉。然而,许多人可能并不知道它来自于 OpenBSD 开发人员。OpenSSH 最初用于 OpenBSD,后来成为标准的安全 Shell (SSH) 包,并移植到几乎所有版本的 UNIX、Linux 和 Microsoft® Windows® 操作系统。OpenSSH 包括用于安全登录的 ssh、用于安全复制的 scp 和 sftp,后者是 ftp 的安全替代方法。所有的源代码都符合开放源代码 BSD 许可,必须遵守 OpenBSD 的规程以杜绝在该分发版中出现任何专用代码和限制性许可计划(这是创建新版本的 SSH的原动力)。OpenBSD中所包含的每个软件部分都是完全免费的,并且在使用上没有任何限制
    二、加密
    因为OpenBSD项目是在加拿大进行的,所以其中应用的加密技术不受美国的出口限制,这使得该分发版可以充分利用各种现代的加密算法。几乎可以在该操作系统的任何地方找到加密处理,从文件传输到文件系统,乃至网络。OpenBSD 中还包含伪随机数生成器,它可以确保无法根据系统状态预测随机数。其他的特性还包括加密哈希函数、加密转换库和加密硬件支持
    三、IP安全协议
    OpenBSD中另一个主要的部分是IP安全协议 (IPSec),该操作系统中没有依赖先天不安全的TCP/IP Version 4 (IPV4),而使用了这个协议。(IPV4 选择信任所有的人和所有的事物。)IPSec 对数据包进行加密和验证以保护数据的保密性,并确保在传输过程中不会对数据包进行任何更改。随着TCP/IP Version 6 (IPV6) 的引入,IPSec 成为标准的 Internet协议中不可或缺的部分,这使得未来的 Internet 在缺省情况下更加安全
    四、防火墙
    1.因为OpenBSD很小并且很安全,所以OpenBSD实现的最常见目标之一是用作防火墙。防火墙从底层对大多数安全单元进行操作,并且 OpenBSD 的包过滤实现是非常优秀的。Packet Filter (PF),OpenBSD 开发社区设计的开放源代码解决方案,它是 OpenBSD 所选择的方法。与 OpenBSD 软件的其他许多部分一样,这种方法非常成功,以至于其他的 BSD 变种纷纷将其移植到自己的分发版中
    2.OpenBSD配置为缺省安全,所以在设置坚如磐石的防火墙时,您无需关闭过多的服务。您需要启用第二个 Ethernet 接口,并根据需要配置 PF。有关介绍如何将 OpenBSD 服务器设置为防火墙的文章链接
    四、加密和随机数
    1.大多数操作系统很少在其关键组成部分中包含加密处理,这使得它们先天就缺乏安全性。导致这种缺陷的一个重要原因是,大多数的操作系统来自美国,不允许开发人员出口健壮的加密软件。OpenBSD中的加密哈希库包括 MD5、SHA1 和 RIPEMD160。OpenBSD中的加密转换库包括 Blowfish、数据加密标准 (DES)、3DES和Cast
    2.大部分加密处理都在底层进行,这样一来,用户就不用为了保护系统安全而必须成为加密方面的专家。OpenBSD 开发团队很清楚,大多数管理员并不是安全方面的专家,并且不应该指望他们煞费周折地加强他们的环境。那些认为 OpenBSD 不是用户友好的操作系统的人,大部分是受到了误导。如果大多数管理员愿意花时间使用 OpenBSD 的缺省安全措施来替代任何其他的分发版,那么他们很可能会改变其思维方式
    3.随机数是确保安全性的重要组成部分。OpenBSD 内核使用中断信息创建不断变化的熵池,它可以为加密函数提供种子数据,并为事务 ID 提供数值。例如,伪随机数可用于进程ID和包 ID,这使得那些想要进行攻击的人很难进行欺骗。OpenBSD 甚至在 bind(2) 系统调用中使用了随机端口分配。大多数源于 UNIX 的操作系统要么创建顺序的 ID,要么使用可预测其结果的简单算法
    展开内容

    应用信息

    • 包名:
    • MD5:
    • 需要网络

    评分及评论

    4.5满分5.0分

    点击星星用来评分

    评论需审核后才能显示
    同类排行