Yandex BareMetal engineers have published a detailed account of how they enabled external customers to use KVM over IPMI without exposing the management network to the kinds of attacks that previously compromised an internal cloud of 25,000 hosts.
The service must deliver two critical capabilities: installation of custom operating systems and recovery when network settings are misconfigured. Both require remote console and virtual media access that legacy BMC firmware only provides through proprietary protocols, often Java Web Start applications signed with outdated hashes such as md4.
To unify access, the team created IPMI Proxy. Each user session launches a lightweight Docker container containing only the components required for a given hardware platform: an XWindow system, a VNC server, a legacy Java runtime with relaxed security settings, Firefox for HTML5 KVM, and optional Java applications for ISO mounting. The container converts the vendor-specific protocol into standard VNC, which noVNC then renders inside the Yandex Cloud console.
Because many BMCs speak only IPv4 while Yandex infrastructure uses IPv6, the team deployed IPMI Router servers running the jool kernel module for stateless NAT64 translation. Each IPv4 address is mapped to a predictable IPv6 address by preserving the last three octets, allowing DHCP to remain stateless and eliminating the need to synchronize lease databases during VRRP failover.
Security controls were added at every layer. Switch ACLs forward frames only toward IPMI Router MAC addresses. 802.1X authentication prevents MAC spoofing. An eBPF program on the routers drops any packet whose IPv4 address does not match the expected MAC, blocking ARP poisoning. Inside the proxy containers, network rules enforced by ip6tables restrict outbound connections to the single authorized BMC.
ISO images stored in S3 are mounted from outside the container as volumes rather than granting the container direct S3 access. Permission checks performed every ten seconds through the Yandex Cloud IAM model ensure that only users with current server-management rights can maintain an active KVM session.
The resulting architecture normalizes KVM and virtual media across heterogeneous hardware while keeping the IPMI fabric isolated from both external attackers and compromised neighboring servers.


