Authentication, Authorization, and Contextualization in FermiCloud S. Timm, D. Yocum, F. Lowe, K. Chadwick, G. Garzoglio, D. Strain, D. Dykstra, T. Hesselroth.

Slides:



Advertisements
Similar presentations
Wei Lu 1, Kate Keahey 2, Tim Freeman 2, Frank Siebenlist 2 1 Indiana University, 2 Argonne National Lab
Advertisements

Ed Duguid with subject: MACE Cloud
CTS PRIVATE CLOUD Quarterly Customer Meeting October 23, 2013 Kay Metsker.
Cloud Computing Open source cloud infrastructures Keke Chen.
Amazon Web Services (aws) B. Ramamurthy. Introduction  Amazon.com, the online market place for goods, has leveraged the services that worked for their.
ANTHONY TIRADANI AND THE GLIDEINWMS TEAM glideinWMS in the Cloud.
Cloud Computing Imranul Hoque. Today’s Cloud Computing.
An Approach to Secure Cloud Computing Architectures By Y. Serge Joseph FAU security Group February 24th, 2011.
Implementing a menu based application in FutureGrid
Cambodia-India Entrepreneurship Development Centre - : :.... :-:-
Introduction to DoC Private Cloud
What is Cloud Computing?. Why call it “Cloud” Computing?
Amazon EC2 Quick Start adapted from EC2_GetStarted.html.
Network+ Guide to Networks 6 th Edition Chapter 10 Virtual Networks and Remote Access.
Getting Started with Oracle Compute Cloud
FermiCloud K. Chadwick, T. Hesselroth, F. Lowe, S. Timm, D. R. Yocum Grid And Cloud Computing Department Fermilab ISGC2011 Work supported by the U.S. Department.
Network+ Guide to Networks 6 th Edition Chapter 10 Virtual Networks and Remote Access.
INTRODUCTION TO CLOUD COMPUTING CS 595 LECTURE 7 2/23/2015.
 Cloud computing  Workflow  Workflow lifecycle  Workflow design  Workflow tools : xcp, eucalyptus, open nebula.
Customized cloud platform for computing on your terms !
Nimbus & OpenNebula Young Suk Moon. Nimbus - Intro Open source toolkit Provides virtual workspace service (Infrastructure as a Service) A client uses.
Enabling Technologies for Distributed and Cloud Computing Dr. Sanjay P. Ahuja, Ph.D FIS Distinguished Professor of Computer Science School of.
+ CS 325: CS Hardware and Software Organization and Architecture Cloud Architectures.
Creating an EC2 Provisioning Module for VCL Cameron Mann & Everett Toews.
Cloud Computing & Amazon Web Services – EC2 Arpita Patel Software Engineer.
Presented by: Sanketh Beerabbi University of Central Florida COP Cloud Computing.
Grids, Clouds and the Community. Cloud Technology and the NGS Steve Thorn Edinburgh University Matteo Turilli, Oxford University Presented by David Fergusson.
Virtualization within FermiGrid Keith Chadwick Work supported by the U.S. Department of Energy under contract No. DE-AC02-07CH11359.
Eucalyptus: An Open-source Infrastructure for Cloud Computing Rich Wolski Eucalyptus Systems Inc.
Advanced Topics StratusLab Tutorial (Orsay, France) 28 November 2012.
Magellan: Experiences from a Science Cloud Lavanya Ramakrishnan.
6/26/01High Throughput Linux Clustering at Fermilab--S. Timm 1 High Throughput Linux Clustering at Fermilab Steven C. Timm--Fermilab.
Copyright © cs-tutorial.com. Overview Introduction Architecture Implementation Evaluation.
Virtual Workspaces Kate Keahey Argonne National Laboratory.
Virtual Machines Created within the Virtualization layer, such as a hypervisor Shares the physical computer's CPU, hard disk, memory, and network interfaces.
Cloud Computing is a Nebulous Subject Or how I learned to love VDF on Amazon.
Enabling Technologies for Distributed Computing Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing,
A Testbed for Study of Thermal and Energy Dynamics in Server Clusters Shen Li, Fan Yang, Tarek Abdelzaher University of Illinois at Urbana Champaign.
Computing Services Charles (Cal) Loomis & Mohammed Airaj LAL, Univ. Paris-Sud, CNRS/IN2P October 2013.
Launch Amazon Instance. Amazon EC2 Amazon Elastic Compute Cloud (Amazon EC2) provides resizable computing capacity in the Amazon Web Services (AWS) cloud.
CEG 2400 FALL 2012 Chapter 10 Virtual Networks and Remote Access 1.
EGI-InSPIRE RI EGI Webinar EGI-InSPIRE RI Porting your application to the EGI Federated Cloud 17 Feb
KAASHIV INFOTECH – A SOFTWARE CUM RESEARCH COMPANY IN ELECTRONICS, ELECTRICAL, CIVIL AND MECHANICAL AREAS
10/18/01Linux Reconstruction Farms at Fermilab 1 Steven C. Timm--Fermilab.
Auxiliary services Web page Secrets repository RSV Nagios Monitoring Ganglia NIS server Syslog Forward FermiCloud: A private cloud to support Fermilab.
FermiCloud Status Report Fall 2010 Keith Chadwick Grid & Cloud Computing Department Head Fermilab Work supported by the U.S. Department.
SARA Reken- en Netwerkdiensten Experiences running a HPC Cloud Ron Trompert on behalf of the SARA Cloud team.
Information Initiative Center, Hokkaido University North 11, West 5, Sapporo , Japan Tel, Fax: General.
Trusted Virtual Machine Images the HEPiX Point of View Tony Cass October 21 st 2011.
© 2015 MetricStream, Inc. All Rights Reserved. AWS server provisioning © 2015 MetricStream, Inc. All Rights Reserved. By, Srikanth K & Rohit.
SCI-BUS is supported by the FP7 Capacities Programme under contract nr RI CloudBroker usage Zoltán Farkas MTA SZTAKI LPDS
Hao Wu, Shangping Ren, Gabriele Garzoglio, Steven Timm, Gerard Bernabeu, Hyun Woo Kim, Keith Chadwick, Seo-Young Noh A Reference Model for Virtual Machine.
GPCF* Update Present status as a series of questions / answers related to decisions made / yet to be made * General Physics Computing Facility (GPCF) is.
Virtualization within FermiGrid Keith Chadwick Work supported by the U.S. Department of Energy under contract No. DE-AC02-07CH11359.
July 18, 2011S. Timm FermiCloud Enabling Scientific Computing with Integrated Private Cloud Infrastructures Steven Timm.
Course: Cluster, grid and cloud computing systems Course author: Prof
Cloud Technology and the NGS Steve Thorn Edinburgh University (Matteo Turilli, Oxford University)‏ Presented by David Fergusson.
Computing Clusters, Grids and Clouds Globus data service
Virtualisation for NA49/NA61
Dag Toppe Larsen UiB/CERN CERN,
Dag Toppe Larsen UiB/CERN CERN,
StratusLab Tutorial (Bordeaux, France)
Virtualisation for NA49/NA61
AWS COURSE DEMO BY PROFESSIONAL-GURU. Amazon History Ladder & Offering.
OpenStack Ani Bicaku 18/04/ © (SG)² Konsortium.
Network+ Guide to Networks 6th Edition
HC Hyper-V Module GUI Portal VPS Templates Web Console
Cloud computing mechanisms
Lecture 16B: Instructions on how to use Hadoop on Amazon Web Services
Different types of Linux installation
Presentation transcript:

Authentication, Authorization, and Contextualization in FermiCloud S. Timm, D. Yocum, F. Lowe, K. Chadwick, G. Garzoglio, D. Strain, D. Dykstra, T. Hesselroth Fermi National Accelerator Laboratory, Batavia, IL, United States of America What is FermiCloud FermiCloud is a private cloud at Fermilab providing Infrastructure-as-a-service to our grid and storage developers, integrators, and testers, and also for production services. With the capacity to create virtual machines on demand, developers and integrators can use machines for just as long as they are needed, and the excess capacity can then be used by opportunistic scientific computing. The FermiCloud Project has been evaluating open-source cloud software systems. One key feature being evaluated is the Authentication and Authorization that these systems use. Since these systems live on the Fermilab network they have to meet all security requirements that normal Fermilab machines do. In our pilot service we are running OpenNebula and Eucalyptus, both of which are using the KVM hypervisor as shipped with Scientific Linux Fermi 5.5. Cloud Authorization/Authentication Authorization and Authentication in Cloud Computing has two basic categories. Cloud API's that create and manage virtual machines, and logging into virtual machines once they are running. For authentication, commercial clouds rely on having the billing information to identify the customer and prevent abuse. Private clouds need to rely on some other form of authentication such as X509 certificates or PKI/ssh infrastructure. The Amazon EC2 API is the de facto standard. They use a SOAP API which relies on X509 certificates to authenticate the user and the daemons to each other. They also have a REST API, also known as the query API, which uses a access key / secret key combination for authentication to launch and manage machines. Authorization is accomplished by defining users and granting them privileges and priorities. These users are then given a X509 cert/key pair and an Access/secret key pair. Some clouds also have the feature of “security groups” in which the group can see each other's virtual images and share an isolated private network segment so that other customers can't interfere with their network traffic. For logging into virtual cloud machines, the standard method is to generate an ssh public/private key pair based on the user's key, and insert it into authorized_keys on the virtual machine so that the user can access it as root. FermiCloud Production Hardware 23 nodes Dual Intel Xeon E5640 “Westmere” quad core CPU 24GB of RAM 2 x 300GB SAS system disks 6 x 2TB SATA data disk in RAID5 configuration High capacity LSI-1078 RAID controller, can source 300MByte/sec of data per machine. Dual GB Ethernet, 1 public network, one private. Mellanox “ConnectX2” Infiniband adapter. FermiCloud Network Topology CLOUD SYSTEM Upload Image Launch VM CLI Launch VM APILogin EucalyptusX509 X509, EC2_ACCESS_KE Y ssh- keypair NimbusX509 EC2_ACCESS_KE Y ssh- keypair OpenNebulauser/pas s EC2_ACCESS_KE Y ssh- keypair Default Authentication/Authorization of Common Open Source Clouds X509 cert/key pairs are used in the cloud software, but not consistently. Self-signed certificates are used frequently, and the cloud software also relies on SimpleCA certificate authority. The user cert/key pairs that are generated are passwordless and thus vulnerable to being picked up by intruders. The EC2_ACCESS_KEY allows a user to perform many functions without X509 authentication at all. OpenNebula is shown as username/password authentication above. Version 2.0 advertises pluggable authentication mechanism that allows X509 or Kerberos authentication among other methods. The Fermi National Accelerator Laboratory is operated by Fermi Research Alliance, LLC under Contract No. DE-AC02-07CH11359 with the United States Department of Energy. FermiCloud Contextualization Fermilab machines are required to use Kerberos 5 authentication for user logins. This means there is a machine-dependent secret (a kerberos host principal) which is stored on each machine. This can't be stored in the virtual machine repository. Machines that are grid hosts also have a X509 host certificate and private key, which also need to be stored independently. We have written a small startup script which can be used with any cloud mechanism to detect the cloud machine's IP at startup, and fetch the machine- dependent secrets for that IP via SSL-encrypted wget. We have also leveraged the contextualization methods for open-source clouds. For Eucalyptus we have used their Instance Metadata feature which makes information internally available on the URL. OpenNebula allows attachment of a small ISO image to the main disk image at launch time. Machine-specific files can be loaded into this image, as can instructions about how to choose the IP address. We modified their stock scripts to make scripts that launched a virtual machine with the same IP address every time. This is a crucial feature for grid gatekeepers, which have the IP address hardwired in dozens of configuration files. We provide users with pre-built OS images which they can then modify as needed. Only approved kernels and operating systems (Scientific Linux Fermi 4,5, STS (Fedora) and Windows) are allowed to be run. Authentication for login is restricted to be Kerberos 5, not the default ssh-keypair. Security patches are delivered via the normal Fermilab site-wide patching mechanism. FermiCloud Project Coming Enhancements in Authorization/Authentication When new virtual machine is first run, scan for vulnerabilities and viruses like visiting laptop coming on site before giving it network access. The cloud software must have a feature to periodically wake up dormant virtual machines to make sure they get their patches on a regular basis. Make sure all GUI and CLI use X509 or Kerberos authentication to upload virtual machine images, launch virtual machines, and log into them. Replace all self-signed and SimpleCA certs with IGTF-accredited certs. Investigate integration of cloud X509 authentication with FermiGrid authentication services such as VOMS, GUMS Investigate pluggable authentication mechanisms, make sure they work and decide which one to use. Investigate inter-process communication and file transfer among the daemons of the cloud control software, and make sure it is done by secure protocols. VLAN1VLAN1 vm-pubpriv-hn vm-priv-wn1 vm-public vm-priv-wn2 vm-man-a1 vm-man-b1 vm-man-b2 Cluster Controller VLAN3VLAN3 VLAN2VLAN2 vm-dual VLAN0VLAN0 All cloud host machines are connected to the main Fermilab public network with publicly-resolvable IP Addresses. All cloud host machines also share a common private management network. Dual-bridged network private mgmt, public data Fixed public IP every time, public-only Virtual cluster, One VM with public and private, many VM's private only Amazon EC2 “Elastic IP” Managed on private network, cluster controller attaches public IP to instance and routes it via NAT. Different groups have independent private VLANS. fcl001 fcl002 fcl003 fcl004 fcl005 fcl023 PUBLICSWITCHPUBLICSWITCH PRIVATESWITCHPRIVATESWITCH Physical Network Topology Logical Network Topology