Wednesday Dec 02, 2009

NEW: OpenSolaris VPC Gateway Tool v0.1

On August 26th, 2009, Amazon Web Services launched their new Virtual Private Cloud (VPC) service. According to Amazon, this service:
[...] is a secure and seamless bridge between a company’s existing IT infrastructure and the AWS cloud. Amazon VPC enables enterprises to connect their existing infrastructure to a set of isolated AWS compute resources via a Virtual Private Network (VPN) connection, and to extend their existing management capabilities such as security services, firewalls, and intrusion detection systems to include their AWS resources. Amazon VPC integrates today with Amazon EC2, and will integrate with other AWS services in the future.

Sounds pretty cool, right? Well, I thought so. Back then, this announcement peaked by interest and I wanted to dive in and give it a try. Unfortunately, the VPC documentation leans more heavily toward configurations where a Cisco or Juniper device acts as my Customer Gateway to the VPC. That is certainly a problem as I do not have access to either of those kinds of devices. That got me to thinking...

Wouldn't be cool if we could just use OpenSolaris as a VPC Customer Gateway?

Even more interesting would be if I could create and access a VPC from OpenSolaris running inside of VirtualBox on my MacBook Pro! That way, I could have an on-demand virtual data center in the Cloud that I could access from anywhere!

It was from this concept, that I reached out to Dan McDonald and Dileep Kumar. Forming this virtual team, we applied our respective skills to this challenge. As things started to heat up, we pulled in Sebastien Roy and Sowmini Varadhan who provided invaluable support and architectural guidance without which we would still be in troubleshooting hell. (Thank you guys!)

So, where do things stand? (Drum roll, please!)

As it turns out... Yes, we were able to configure OpenSolaris (without any new development required!) to act as a Customer Gateway as part of an AWS VPC configuration. Our initial configuration used a dedicated system with an Internet routable, static IP address per the AWS VPC guidelines. So, question #1 is answered - yes, you can use OpenSolaris as a VPC Customer Gateway! W00t!

With this completed, I was still left wondering about by second question - getting this all to work from OpenSolaris running in VirtualBox on my laptop (or other non-dedicated system). As it turns out, it can be made to work as well - which is pretty cool, but since it is not supported by AWS at this time, it is not a configuration that I would recommend or support. That said, it is pretty cool to see this working (if even only in a "playground" sense).

Would you like to give this a try? Do you have VPC access but do not have a Cisco or Juniper device at your disposal? Well, fear not! Use OpenSolaris FTW!

Today, we are happy to announce the availability of the OpenSolaris VPC Gateway tool (version 0.1). As we stepped through getting everything to work, it was clear that nearly every aspect of the VPC configuration and creation process could be automated - so we automated it! The OpenSolaris VPC Gateway tool requires just a small bit of configuration after which you can quickly and easily establish a basic VPC configuration (with one subnet and one instance). You can customize the tool to make things more complex, but this is left as an exercise to the reader.

The OpenSolaris VPC Gateway tool is publicly available from the Kenai repository complete with installation, configuration and usage documentation.

Note that this is still preview-quality software with all of the necessary caveats that go along with it, but I would encourage those interested in OpenSolaris, VPCs, and especially in both to give it a try and send us your feedback! Thanks in advance and take care!

P.S. Looking for a good default instance to create? Try an OpenSolaris 2009.06 Immutable Service Container!

Technorati Tag:

Monday Nov 30, 2009

UPDATE: OpenSolaris ISC Construction Kit v1.3

I have been writing about the Immutable Service Container project for quite some time. Since this project was publicly launched earlier this year, we have produced a number of updates, several presentations and podcasts, as well as images that people could use on Amazon EC2 or with VirtualBox. All of these updates had a singular goal - to highlight what is possible when we refactor our existing strategies and processes to pre-integrate greater security capabilities by default into our operating system configurations. While our original goal was to focus on Cloud Computing and virtual machine image security, these concepts really apply more universally. Whether used in a traditional data center or the Cloud, there are significant benefits that can be realized when we begin to put all of the pieces into place. Certainly, I mean more than just patching or hardening, but looking at virtual machine security more comprehensively.

With this as a backdrop, I am very happy to announce the availability of version 1.3 of the OpenSolaris Immutable Service Container Construction Kit! Prior to this update, the Kit was able to automate the creation of a configuration that included:

  • built upon the OpenSolaris 2009.06 release
  • (optional) loose minimization support to help those building and sharing images
  • security hardening of the operating system - based upon the OpenSolaris Security Hardening project
  • non-executable stack functionality enabled (on systems supporting this functionality)
  • encrypted swap enabled
  • encrypted scratch space enabled - default size is 100 Mbytes (customize as needed)
  • kernel-level auditing enabled - default policy audits login/logouts, administrative events, and all commands executed on the system, audit syslog plugin configured (/var/log/auditlog)
  • stateful packet filtering enabled - packet filtering syslog plugin configured (/var/log/ipflog), in-bound network access denied by default (except SSH), out-bound network access permitted by default (customize as needed)
  • a single non-global zone installed (although others can be installed as needed):
    • gzip compressed non-global zone root file system
    • building upon default non-global zone security capabilities
    • unique VNIC limiting visibility of unintended network traffic
    • encrypted scratch space
    • stateful packet filtering and NAT to restrict network-access
    • in-bound network access denied by default (customize for your service)
    • out-bound network access permitted by default (customize as needed)
    • DNS and auditing configurations inherited from the global zone

The v1.3 update goes beyond this foundation to incorporate new capabilities including:

  • configurable virtual network architecture. Non-global zones can be installed into the same or different virtual networks. This capability is required in order to begin constructing ISC configurations that implement more advanced network compartmentalization configurations. Administrators can define to which network a non-global zone should be attached using the -N option to the iscadm.ksh tool.
  • anti-spoofing protection. Each of the non-global zones are configured to leverage the MAC and IP address anti-spoofing protections enabled by Crossbow 1.3 (builds 126 and newer).
  • default resource controls. Non-global zones are configured to have a maximum lightweight process resource control installed (default: 300). This setting helps to mitigate against the effects of certain denial of service attacks. The actual limit can be adjusted using the ISC_MAX_LWPS parameter.
  • default file system quotas. Non-global zone root file systems are configured to have a specific ZFS quota (default: 1G) and reservation (default: 512M). Since ISC nodes (non-global zones) share a common ZFS data set, it is important to have this restriction to prevent one node from exhausting capacity being used by other nodes. The default values can be changed using the ISC_QUOTA and ISC_RESERVATION parameters.
  • site variable override. A new file (isc/etc/site.conf) is used to store any variables that are specific to a site or implementation. This file is not delivered by default and therefore will not be overwritten upon update (preserving any site-specific parameters). This file is intended to be used to store local (site specific) variables such as those listed above.
In addition to these new features and capabilities, several bugs were squashed and the code was generally cleaned up to make it easier to read and extend in future updates. This update was tested using OpenSolaris 2009.06 as well as OpenSolaris 2010.03 (build 127).

It is worth noting that the OpenSolaris ISC Construction Kit uses a modular architecture. Let's say you did not want all of the functionality described above - you just want to harden an OpenSolaris global zone. Well, that can be easily done using the following steps:

$ env ISC_SVCS_DOCK="lockdown" pfexec isc/bin/iscadm.ksh -d

Similarly, if you just wanted just to try out encrypted scratch space and encrypted swap, you could use the command:

$ env ISC_SVCS_DOCK="encrypted_scratch encrypted_swap" pfexec isc/bin/iscadm.ksh -d

The goal of the Kit is to provide a fast, automated, and easy way to implement strong security protections for your systems and virtual machines, but we also recognize that requirements do differ so customization must be a core part of the software architecture.

As always, we would love to hear from you! Let's us know what works and what doesn't! What would you like to see in a future update? Is there anything that you would like to see changed? Here is your chance - speak up!

Take care!

Technorati Tag:

Wednesday Nov 04, 2009

Update: Recent Cloud Security Happenings

I have to say that it has been a very busy couple of weeks. That said, I am happy to say that there is a lot to show for everyone's effort however. We have been able to publish quite a lot of new and updated content, and I figured that it might be a good time to shine a spotlight on some of the more interesting items. Without further ado...

Going forward, we are going to try and bring together all of the Cloud Computing security content on our brand new Sun.COM Cloud Security home page. Be sure to check it out regularly!

More is coming, don't miss it!

Technorati Tag:

NEW: Solaris 10 Security Deep Dive Presentation

Today, I am very happy to announce the availability of a new Solaris 10 Security Deep Dive training. This version has been updated for Solaris 10 10/2009 (also known as Update 8). From a security perspective, there have only been a few updates since my last posted version, but it is always good to be current. Items added in this new version include: ZFS user and group quotas, ZFS pre-defined ACL sets, NTPv4, and nss_ldap shadowAccount support. In addition, there was a bit of cleanup throughout and a new example was added for Trusted Extensions.

As usual, I have made this content available in both OpenDocument Format (ODF) and PDF. If you are using Microsoft Office, you can use the Sun MS Office ODF Plugin to read the source document.

For those of you who have downloaded one of the previous versions, thank you! There have been nearly 8,000 downloads of this presentation so far! If you have not had a chance, I would encourage you to download and check out a copy today. It is really amazing how many new and updated security features and capabilities there are in Solaris 10. If you have been away from Solaris (even Solaris 10) for a while, I am sure you will be shocked with what you can do today! As always, feedback is greatly appreciated!

Take care!

Glenn

Technorati Tag:

Monday Nov 02, 2009

Immutable Service Containers @ Amazon EC2

Just in time for the OpenSolaris Developer Conference, we were able to publish new Immutable Service Containers images directly to the Amazon Web Services Elastic Compute Cloud (EC2) environment. Previously, I talked about creating ISCs using our security enhanced OpenSolaris 2009.06 AMIs. Today, I am happy to announce that we have taken the next logical step by making available AMIs that fully incorporate the ISC changes. If you want to try out this configuration, simply provision an Immutable Service Containers AMI on EC2. We have made AMIs available in both the U.S. (ami-48c32021) and European (ami-78567d0c) regions. As always, we would love to get your feedback on these images and what you would like to see next!

Take care!

Technorati Tag:

About

This area of cyberspace is dedicated the goal of raising cybersecurity awareness. This blog will discuss cybersecurity risks, trends, news and best practices with a focus on improving mission assurance.

Search

Archives
« July 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
  
       
Today