[ 
https://issues.apache.org/jira/browse/CLOUDSTACK-1389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13586959#comment-13586959
 ] 

gavin lee commented on CLOUDSTACK-1389:
---------------------------------------

I also encountered this on master branch. What I did to pass through it is 
manually execute following, either sudo or root:

keytool -genkey -keystore 
/Users/gavin_lee/projects/cs-apache/incubator-cloudstack/client/target/cloud-client-ui-4.2.0-SNAPSHOT/WEB-INF/classes/cloud.keystore
 -storepass vmops.com -keypass vmops.com -keyalg RSA -validity 3650 -dname 
cn="Cloudstack User",ou="cloud.com",o="cloud.com",c="Unknown" 

I agree to add a separated script running before management server startup for 
better security purpose.
                
> Interactive Password Prompts during Management Server Startup
> -------------------------------------------------------------
>
>                 Key: CLOUDSTACK-1389
>                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-1389
>             Project: CloudStack
>          Issue Type: Bug
>      Security Level: Public(Anyone can view this level - this is the 
> default.) 
>          Components: Management Server
>    Affects Versions: 4.1.0
>         Environment: devcloud
>            Reporter: John Burwell
>            Priority: Blocker
>              Labels: security
>
> When starting the management server with no SSL certificate present, the 
> system attempts to run a shell script, 
> /Users/jburwell/Documents/projects/cloudstack/src/cloudstack-basho/client/
> target/cloud-client-ui-4.1.0-SNAPSHOT/WEB-INF/classes/cloud.keystore
> -storepass vmops.com -keypass vmops.com -keyalg RSA -validity 3650 -dname
> cn="Cloudstack User",ou="0.8.31",o="0.8.31",c="Unknown", to automatically 
> generate the SSL certificate.  This shell script requires that sudo be 
> installed and that the daemon user have password-less sudo access to 
> successfully.  If the daemon user does not have password-less sudo access, 
> sudo attempts to prompt the user for a password -- causing daemon startup to 
> fail.  In addition to encouraging administrators to grant too much privilege 
> to a daemon user and interactively prompting from a daemon process, this 
> script's behavior presents the following potential security vulnerabilities:
>    1. If this script successfully executes in a production environment, it 
> will create a SSL certificate with known default credentials, vmops.com, that 
> could be exploited by an attacker.  Additionally, it makes assumptions about 
> algorithms and key lengths that may not be applicable to a user's 
> environment.  In this scenario, the system defaults to an less secure state 
> with little or no notice to the administrator.
>    2. It assumes/encourages a daemon user account has password-less sudo 
> access.  Granting such access to a daemon user would be not be considered a 
> security best practice.  Daemon users should have least privilege necessary 
> to execute in order to limit the impact of a security breach.
>    3. It assumes/mandates the presence of an optional package on some 
> distributions.  RHEL/CentOS do not require sudo in a minimal installation, 
> and some administrators elect not to use it.  While I personally don't agree 
> with such an approach, I don't think we should force our opinions on 
> CloudStack administrators. 
> I suggest extracting the script into the bin directory for manual execution 
> (e.g. generate-certificate.sh) that accepts the password, algorithm, and key 
> length as command line parameters, and places the resulting keys in the 
> appropriate locations.  If the agent starts and the keys are not present, an 
> error should be logged explaining the problem, and the system should either 
> fallback to non-SSL or gracefully exit.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to