OpenBSD是一款基于4.4BSD的类Unix开源操作系统,以其卓越的安全性、简洁的设计以及高度的可移植性而著称。这款操作系统由加拿大的一群开发者创建和维护,是BSD操作系统家族的重要成员。开发者们致力于打造一个安全、稳定的操作系统环境,通过严格的代码审计和审查,以及内置的安全功能和工具,如OpenSSH、OpenSSL、LibreSSL和pf防火墙等,来确保系统的质量和安全性。
安装教程
一、打开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密码进入系统
安全配置使用指南
一、为了更加安全,为了更加容易更新升级系统和包,可以使用 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服务器
上一个 : hp 6l打印机驱动
下一个 : fileminimizer suite
iToolab UnlockGo是一款专业的苹果设备解锁软件,专为解决iOS设备(包括iPhone、iPad和iPod Touch)上的各种锁定问题而设计。该软件采用向导式界面,用户只需通过简单的步骤和几次点击,即可快速解决密码遗忘、设备被禁用、Face ID或Touch ID不可用、密码已过期等问题,无需任何专业知识。
wsusscn3.cab提供了丰富的系统优化功能。用户可以通过DISM++的图形化界面,直观地浏览已安装更新的信息,包括安装日期、状态等,并支持对已安装更新进行删除和查找。这些功能,使得用户能够更加方便地管理系统的更新和补丁,保持系统的最新和稳定。
Real Temp是一款功能强大且实用的电脑温度监测软件。能够对电脑的CPU核心温度进行精确的实时监测。无论是在电脑进行高强度的多任务处理,如同时运行大型游戏、视频编辑软件和多个后台程序时,还是在日常的办公使用场景下,都可以准确地显示每个CPU核心的当前温度。
Ashampoo UnInstaller具备实时监控功能,能够自动分析软件的安装过程,并为每个软件建立一个详细的日志。这一功能使得在卸载软件时,工具能够更彻底地清除程序及其相关的残留文件和注册表项,不留任何痕迹。此外,它还采用了新技术,全面提高了卸载速度,为用户提供了更加快捷的卸载体验。
* 游戏上市后,我们会在第一时间内通知您 *
* 游戏上市后,我们会在第一时间内通知您 *
关 闭