EdgeOS
EdgeOS 是基于 Vyatta 的。Vyatta 是基于 Debian 的。
Vyatta
Vyatta 是一家成立于 2005-2006 年的公司,目标是构建一个开源的软件路由器平台,用以替代昂贵的思科硬件设备。它基于 Debian Linux,并实现了类似 Cisco IOS 的命令行配置方式。
提供防火墙、路由(OSPF/BGP)、VPN(IPSec/OpenVPN)、QoS 等功能。最早的版本对社区免费,名为 Vyatta Community Edition(CE)。
2012 年,Brocade(博科通讯)收购了 Vyatta。收购后,Brocade 停止维护社区版(Vyatta CE 6.6 是最后一个社区版本)。开源社区因此面临断层。
VyOS
2013 年 VyOS 正式发布第一个版本。VyOS 是 Vyatta 的继任者。
VyOS 和 EdgeOS 同属 Vyatta 血统系统,但走出了不同的发展路径。
- VyOS 提供 ISO 镜像、虚拟机镜像,适用于任意 x86/ARM 硬件或云平台。
- EdgeOS 只能安装在 Ubiquiti 的 EdgeRouter 系列产品上。
配置 sshd
登录到 ER-X 服务器,执行下面的命令。
configure
set system login user adoyle authentication public-keys adoyle type ssh-ed25519
set system login user adoyle authentication public-keys adoyle key AAAAC3NzaC1lZDI1NTE5AAAAIJM/MdzWyA2ixgQnhMe+XIygiDqXUM3M9tsVKm/v/QbQ
commit;save
exit执行 cat ~/.ssh/authorized_keys 检查是否正确。
然后禁止密码登录:
configure
set service ssh disable-password-authentication
commit;save
exit参考文章
设置 bash completion
在使用 root 用户时,bash 补全是正常的。但使用其他用户名时,bash 补全就有问题。
解决方法是 sudo vi /etc/bash.bashrc 找到 # enable bash completion in interactive shells 这行,把下面的注释取消。
或者 vi ~/.bashrc 添加下面这段:
if ! shopt -oq posix; then
if [ -f /usr/share/bash-completion/bash_completion ]; then
. /usr/share/bash-completion/bash_completion
elif [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
fi
然后重新登录用户即可。
设置 shell PATH
默认 PATH 缺少 /sbin 和 /usr/sbin 目录。会导致很多程序无法直接在终端使用,比如 tcpdump。
重新设置:PATH=$PATH:/sbin:/usr/sbin
APT
写在前面
ER-X 剩余硬盘空间就只有 70MB 以内。apt update 获取源列表后就只剩 7MB。使用 APT 几乎装不了什么包。
apt list 和包缓存占用了很大空间。
记得清理缓存sudo apt clean。清理 /root.dev/w/var/cache/apt 和 /root.dev/w/var/lib/apt/lists 目录。
ER-X 默认自带 apt。但是它没有设置源。
EdgeOS 是基于 Debian 的。cat /etc/debian_version 发现是 9.13 版本,即代号 Stretch。
configure
set system package repository stretch components 'main contrib non-free'
set system package repository stretch distribution stretch
set system package repository stretch url http://archive.debian.org/debian
commit ; save
exitsudo apt-get update 更新源。
禁用 apt-get upgrade!它会破坏 EdgeOS 的一些已安装的包
参考的是这篇文章。
另外,可以加入 ubnt 官方源。参考这篇文章。
echo 'deb [ arch=amd64,arm64 ] https://www.ui.com/downloads/unifi/debian stable ubiquiti' | sudo tee /etc/apt/sources.list.d/100-ubnt-unifi.list
# 我的 ER-X 没有 wget 命令,可以在自己电脑上下载后,scp 到服务器上。
sudo wget -O /etc/apt/trusted.gpg.d/unifi-repo.gpg https://dl.ui.com/unifi/unifi-repo.gpg
# 或者执行
# sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 06E85760C0A52C50
sudo apt-get update