ASD ISM 0385 Maintain effective functional separation between servers
What it says
Servers maintain effective functional separation from each other.
Quoted as published. Everything else on this page is written by Control Stack.
What it means
In plain EnglishEach server should perform its own distinct function and not share a machine or operating environment with unrelated server roles. Keeping server functions separate means that if one server is compromised, overloaded or fails, the problem stays contained and does not automatically spread to other services. This control is about the design choice to host different roles (for example a web server, a database server and an email server) on separate servers rather than bundling them together.
Think of each server as a separate room with its own locked door, rather than running everything in one big open space. When the email service, the website and the customer database each live on their own server, a break-in or breakdown in one is much less likely to knock over the others. If everything runs together on a single server, one weakness gives an attacker access to all of it at once, and one crash can take down everything. "Functional separation" simply means giving each major job its own server, so an issue in one place does not become an issue everywhere.
Free. Save your status, tasks and notes.
Why it matters
Without functional separation, compromising or crashing one server can spread to every service it shares with, turning a single fault into a widespread outage or breach.
How to implement
The IT or infrastructure team should list every server and the exact role it performs, then identify any server that is hosting more than one unrelated function so those roles can be split onto separate servers.
System architects should design new systems so that high-risk, internet-facing roles (such as web servers) never share a server with sensitive internal roles (such as databases or authentication services).
System administrators should disable or remove any service or software on a server that is not needed for that server's intended function, so each server does only its one job.
The team should use separate virtual machines or containers for each function when running on shared hardware, rather than installing multiple roles into the same operating system instance.
Whoever manages change control should require that any request to add a new service to an existing server is reviewed, so unrelated functions are not quietly combined onto one server over time.
Keep it running
Review server roles whenever services are added or systems are consolidated, so unrelated functions do not gradually end up sharing one server.
Evidence and audit
- Check 1 of 5What an auditor asks for
Ask for
the IT team to walk through which function each server performs and whether any single server hosts multiple unrelated roles.
Look at
a current server inventory or role-assignment document.
Good evidence
shows each major function running on its own dedicated server or isolated instance.
- Check 2 of 5What an auditor asks for
Ask for
how internet-facing servers are kept apart from internal and sensitive servers.
Look at
network and hosting diagrams showing where each role sits.
Good evidence
shows web-facing roles are not on the same server as databases or authentication services.
- Check 3 of 5What an auditor asks for
Ask for
how the team prevents extra, unrelated services being added to a server.
Look at
change-control records for server builds.
Good evidence
shows new services are reviewed before being placed on an existing server.
- Check 4 of 5What an auditor asks for
Ask for
how unnecessary services are removed from each server.
Look at
a sample server's installed services or build standard.
Good evidence
shows only the services needed for that server's one function are running.
- Check 5 of 5What an auditor asks for
Ask for
whether shared hardware uses separate virtual machines or containers per function.
Look at
the virtualisation or container configuration.
Good evidence
shows each role is isolated rather than several roles sharing one operating system instance.
Mappings
Closest match in ISO/IEC 27001: A.8.22, Network segregation for security, which partially overlaps with this control.
ISO/IEC 27001: 2 mappings
This control partially overlaps A.8.22.
ISM-0385 requires servers to be functionally separated so each server can operate independently without interference from others. Annex A 8.22 mandates network segregation of groups of services, users and systems, which is a primary technical mechanism used to achieve and enforce that server separation. ISM-0385 focuses on the outcome (independent operation), while Annex A 8.22 focuses on network design controls to help deliver that outcome.
This control partially overlaps A.8.31.
ISM-0385 requires servers to maintain effective functional separation from other servers so they can operate independently. Annex A 8.31 requires separation and security of development, test and production environments, which is a common way organisations implement functional separation to prevent cross-environment interference. The ISO control is specifically about environment lifecycle separation, while ISM-0385 is broader about server-to-server independence regardless of lifecycle stage.
Mappings show how controls relate across frameworks. They do not imply full equivalence or certification.




