在 FreeBSD 上使用 ss5 搭建 Socks5 代理服务器
Aug 07, 2025
ss5 作为 Socks5 代理服务器的配置非常简单。 安装 ss5 $ sudo pkg install ss5 ss5 默认是以 nobody 身份运行的,它的 pid 文件路径是硬编码在 /var/run/ss5/ss5.pid ,所以在启动服务之前需要先配置一下 pid 目录的权限 …
在 FreeBSD 上加载自定义的 sshd_conf 配置
Aug 03, 2025
在自动化配置服务器的时候,需要统一配置 sshd_conf 文件,但是又不想使用诸如 sed,awk 之类的工具对原文件进行修改。 有一个简单的方案,就是让 sshd 先加载原配置,然后再加载我们的自定义配置,这样自定义配置就可以覆盖原配置的值,就能做到不改动原配置的情况下进行自定义。 …
OpenSSH 服务器禁止密码登录方式
Dec 09, 2024
编辑 /etc/ssh/sshd_config,关闭以下和密码认证相关的选项: PasswordAuthentication no PermitEmptyPasswords no KbdInteractiveAuthentication no UsePAM no
设置 FIN_WAIT_2 超时值
Nov 28, 2024
Debian 编辑 sysctl.conf,单位是秒(s): net.ipv4.tcp_tw_reuse = 1 net.ipv4.tcp_fin_timeout = 60 net.ipv4.tcp_keepalive_time = 600 FreeBSD 编辑 sysctl.conf,单位是毫秒(ms): net.inet.tcp.fast_finwait2_recycle = 1 net.inet.tcp.finwait2_timeout = 60000 查看当前活跃的 TCP 连接数 $ netstat -an | grep ESTABLISHED | wc -l 使用 wrk 工具测试并发连接 $ wrk -t16 -c1000 -d60s --latency https://apple.com
禁用 TCP Segment Offload 提高网络性能
Sep 30, 2024
虽然网卡的各种 Offload 功能是为了分担 CPU 而设计的,但在实际应用中可能存在各种潜在问题,而且 Redhat 的最佳实践建议就是关闭 Host 上的 TSO/GSO/GRO 。 FreeBSD 编辑 /etc/rc.conf: ifconfig_vtnet0="DHCP -tso -lro" 编辑 /etc/sysctl.conf: net.inet.tcp.tso = 0 net.inet.tcp.functions_default = bbr net.inet.tcp.bbr.resend_use_tso = 0 Debian 编辑 /etc/network/interfaces: …
FreeBSD/Debian 上关闭 CPU 漏洞缓解
Sep 26, 2024
关闭 CPU 缓解后虽然有“幽灵漏洞”的风险,但是提高了 CPU 的速度。 FreeBSD 在 sysctl.conf 里增加: hw.mds_disable = 0 Debian 编辑文件 /etc/default/grub,找到参数 GRUB_CMDLINE_LINUX,在内核启动参数中增加 mitigations=off。 编辑文件完成后,执行命令 update-grub 更新启动配置文件,然后重启系统。 …
FreeBSD 上禁用 Sendmail 进程开机启动
Aug 02, 2024
添加到 /etc/rc.conf: sendmail_enable="NO" sendmail_submit_enable="NO" sendmail_outbound_enable="NO" sendmail_msp_queue_enable="NO" 参考: https://github.com/freebsd/freebsd-src/commit/d87e0e8e230495df3be59a8a5c173aafc83bc450
FreeBSD 配置 IPv4/6 双栈
Jul 09, 2024
Azure 的虚拟机 IPv6 是 DHCPv6 的形式分配的,在 FreeBSD 上需要简单配置一下才能获取到 IPv6 地址。 首先,需要安装 net/dual-dhclient-daemon 程序: $ sudo pkg install net/dual-dhclient-daemon 编辑 rc.conf ,配置网络接口获取 IP 的方式: $ sudo sysrc ifconfig_DEFAULT="SYNCDHCP accept_rtadv" $ sudo sysrc ipv6_activate_all_interfaces="YES" $ sudo sysrc dhclient_program="/usr/local/sbin/dual-dhclient" 如果需要设置网络程序优先使用 IPv6 ,再添加以下配置: …
FreeBSD 创建 Swap 文件
Jul 07, 2024
Azure 的虚拟机没有提供 Swap 分区,只能使用 Swap 文件代替了,相对于分区来说,Swap 文件多了一层文件系统,效率是有一点损失,但相对于内存不足导致 OOM 来说这点损失不算什么。 …
htcp + bbr 榨干 FreeBSD 的带宽
Jul 04, 2024
htcp 和 bbr 配合使用,可以极大的利用带宽。 需要 FreeBSD ≥ 13.0 才有 bbr 模块,htcp 则是在 FreeBSD 9.0 提供的。 编辑 /etc/sysctl.conf: net.inet.tcp.functions_default = bbr net.inet.tcp.bbr.resend_use_tso = 1 net.inet.tcp.bbr.pacing.hw_pacing = 1 net.inet.tcp.cc.algorithm = htcp net.inet.tcp.cc.htcp.adaptive_backoff = 1 net.inet.tcp.cc.htcp.rtt_scaling = 1 htcp 和 bbr 模块默认不自动加载,需要配置一下: …