DSI: Secure Carrier-Class Linux
The interest in clustering from the telecommunications industry originates with the fact that clusters address carrier-class characteristics, such as guaranteed service availability, reliability and scaled performance, using cost-effective hardware and software. These carrier-class requirements now include advanced levels of security. There are few efforts, however, to build a coherent distributed framework to provide advanced security levels in clustered systems.
At Ericsson Research, our work targets soft real-time distributed applications running on large-scale Linux carrier-class clusters. These clusters must operate nonstop and must allow operators to upgrade hardware and software during operation, without disturbing the applications that run on them. In such clusters, communications between the nodes inside the cluster and to external computers are restricted.
In this article, we present the rationale behind developing a new secure architecture, the DSI (Distributed Security Infrastructure). DSI supports different security mechanisms to address the needs of telecom applications running on carrier-class Linux clusters. DSI provides these telecom applications with distributed mechanisms for access control, authentication, auditing and integrity of communications.
Many security solutions exist for clustered servers, but no solution is dedicated to clusters.
The most commonly used security approach is to package several existing solutions. Nevertheless, the integration and management of these different packages is complex and often results in the absence of interoperability between different security mechanisms. Additional difficulties also are raised when integrating many packages, issues like ease of system maintenance and upgrade, and difficulty keeping up with numerous security patches.
Carrier-class clusters have very tight restrictions on performance and response time, making the design of security solutions difficult. In fact, many security solutions cannot be used due to their high-resource consumption.
Currently implemented security mechanisms are based on user privileges and do not support authentication and authorization checks for interactions between two processes belonging to the same system on different processors. However, for telecom applications, only a few users run the same application for a long period without any interruption.
Applying the above concept will grant the same security privileges to all processes created on different nodes. This would lead to no security checks for many actions through the distributed system.
As part of a carrier-class Linux cluster, DSI must comply with the carrier-class requirements of reliability, scalability and high availability. Furthermore, DSI supports the following requirements: 1) Coherent framework: security must be coherent across different layers of heterogeneous hardware, applications, middleware, operating systems and networking technologies. All mechanisms must fit together to prevent any exploitable security gap in the system. 2) Process-level approach: DSI is based on a fine-grained basic entity, the process. 3) Minimal performance impact: the introduction of security features must not impose high-performance penalties. Performance can be expected to degrade slightly during the initial establishment of a security context; however, the impact on subsequent accesses must be negligible. 4) Preemptive security: changes in the security context will be reflected immediately on the running security services. Whenever the security context of a subject changes, the system will re-evaluate its current use of resources against this new security context. 5) Dynamic security policy: it must be possible to support runtime changes in the distributed security policy. Carrier-class server nodes must provide continuous and long-term availability; thus, it is impossible to interrupt the service to enforce a new security policy. 6) Transparent key management: cryptographic keys are generated in order to secure connections. This results in numerous keys that must be stored and managed securely.
DSI has two types of components: management and service. DSI management components define a thin layer that includes a security server, security managers and a security communication channel (Figure 1). The service components define a flexible layer that can be modified or updated by adding, replacing or removing services according to the needs.
The security server is the central point of management in DSI, the entry point for secure operation and management and intrusion detection systems. It also defines the dynamic security environment of the whole cluster by broadcasting changes in the distributed policy to all security managers.
Security managers enforce security at each node of the cluster. They are responsible for locally enforcing changes in the security environment. Security managers only exchange security information with the security server.
The secure communication channel provides encrypted and authenticated communications between security agents. All communications between the security server and the world outside of the cluster take place through the secure communication channel. Two nodes (to avoid a single point of failure) host the security server and different security service providers, such as the certification authority.
The security mechanisms are based on widely known, proved and tested algorithms. Users must not be able to bypass these mechanisms; therefore, the best place to enforce security is at the kernel level. All security decisions, when necessary, are implemented at the kernel level, the same as for the main security manager component, which has stubs into the kernel. These stubs are implemented through load modules.
The DSI architecture at each node is based on a set of loosely coupled services. Each service, upon its creation, sends a presence announcement to the local security manager, which registers these services and provides their access mechanisms to the internal modules. Two types of services, security services (access control, authentication, integration, auditing) and security service providers (for example, secure key management), run at user level and provide services to security managers.
|Using Salt Stack and Vagrant for Drupal Development||May 20, 2013|
|Making Linux and Android Get Along (It's Not as Hard as It Sounds)||May 16, 2013|
|Drupal Is a Framework: Why Everyone Needs to Understand This||May 15, 2013|
|Home, My Backup Data Center||May 13, 2013|
|Non-Linux FOSS: Seashore||May 10, 2013|
|Trying to Tame the Tablet||May 08, 2013|
- Using Salt Stack and Vagrant for Drupal Development
- Making Linux and Android Get Along (It's Not as Hard as It Sounds)
- New Products
- Drupal Is a Framework: Why Everyone Needs to Understand This
- Validate an E-Mail Address with PHP, the Right Way
- A Topic for Discussion - Open Source Feature-Richness?
- New Products
- New Products
- The Pari Package On Linux
- Home, My Backup Data Center
- This is the easiest tutorial
3 hours 11 min ago
- Ahh, the Koolaid.
8 hours 50 min ago
- git-annex assistant
14 hours 50 min ago
- direct cable connection
15 hours 12 min ago
- Agreed on AirDroid. With my
15 hours 22 min ago
- I just learned this
15 hours 26 min ago
15 hours 57 min ago
- not living upto the mobile revolution
18 hours 48 min ago
- Deceptive Advertising and
19 hours 23 min ago
- Let\'s declare that you have
19 hours 24 min ago
Enter to Win an Adafruit Prototyping Pi Plate Kit for Raspberry Pi
It's Raspberry Pi month at Linux Journal. Each week in May, Adafruit will be giving away a Pi-related prize to a lucky, randomly drawn LJ reader. Winners will be announced weekly.
Fill out the fields below to enter to win this week's prize-- a Prototyping Pi Plate Kit for Raspberry Pi.
Congratulations to our winners so far:
- 5-8-13, Pi Starter Pack: Jack Davis
- 5-15-13, Pi Model B 512MB RAM: Patrick Dunn
- Next winner announced on 5-21-13!
Free Webinar: Linux Backup and Recovery
Most companies incorporate backup procedures for critical data, which can be restored quickly if a loss occurs. However, fewer companies are prepared for catastrophic system failures, in which they lose all data, the entire operating system, applications, settings, patches and more, reducing their system(s) to “bare metal.” After all, before data can be restored to a system, there must be a system to restore it to.
In this one hour webinar, learn how to enhance your existing backup strategies for better disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible bare-metal recovery solution for UNIX and Linux systems.