SINDES
Secure INformation DElivery System
Poulhiès Marc
marc.poulhies@cern.ch
CERN/EPFL
CERN-IT-FIO group meeting – p. 1/17
SINDES Secure INformation DElivery System Poulhis Marc - - PowerPoint PPT Presentation
SINDES Secure INformation DElivery System Poulhis Marc marc.poulhies@cern.ch CERN/EPFL CERN-IT-FIO group meeting p. 1/17 Outline Motivations Previous system New system General overview Getting a certificate
Poulhiès Marc
marc.poulhies@cern.ch
CERN/EPFL
CERN-IT-FIO group meeting – p. 1/17
CERN-IT-FIO group meeting – p. 2/17
CERN-IT-FIO group meeting – p. 2/17
CERN-IT-FIO group meeting – p. 3/17
CERN-IT-FIO group meeting – p. 4/17
CERN-IT-FIO group meeting – p. 5/17
CERN-IT-FIO group meeting – p. 6/17
CERN-IT-FIO group meeting – p. 7/17
CERN-IT-FIO group meeting – p. 8/17
CERN-IT-FIO group meeting – p. 8/17
CERN-IT-FIO group meeting – p. 9/17
CERN-IT-FIO group meeting – p. 9/17
CERN-IT-FIO group meeting – p. 9/17
CERN-IT-FIO group meeting – p. 9/17
CERN-IT-FIO group meeting – p. 10/17
CERN-IT-FIO group meeting – p. 10/17
CERN-IT-FIO group meeting – p. 11/17
CERN-IT-FIO group meeting – p. 12/17
"/software/components/sindes/items/passwd-header/method" = script "/software/components/sindes/items/passwd-header/scope" = node "/software/components/sindes/all" = sindes_add("passwd-header"); "/software/components/sindes/items/ssh_key/method" = file "/software/components/sindes/items/ssh_key/scope" = node "/software/components/sindes/all" = sindes_add("ssh_key");
CERN-IT-FIO group meeting – p. 12/17
CERN-IT-FIO group meeting – p. 12/17
CERN-IT-FIO group meeting – p. 13/17
CERN-IT-FIO group meeting – p. 13/17
lxplus $ PrepareInstall .... ... Opening time-window and adding machine(s) to ACL... [SUMMARY] 2 item(s) processed successfully. Updating ACL/MAP if necessary [SUMMARY] Updating host map for 1 host(s), mapped to lxdev [SUMMARY] Updating ACL with 1 host(s) [SUMMARY] You _must_ reinstall machine(s) within the next 24hour(s). Preparation OK. ...
CERN-IT-FIO group meeting – p. 14/17
lxplus $ ssh sindes@sindes-server "acl -print -target lxdev06,lxdev12,lxdev03"
hostname TTL Request Right|
lxdev06 23:53 YES| | lxdev12 3:53 NO| | lxdev03 EXP NO|
lxplus $ ssh sindes@sindes-server "cert -check -target lxplus00[1-4],lxb1008"
hostname valid |
lxplus001 YES | | lxplus002 YES | | lxplus003 YES | | lxplus004 YES | | lxb1008 NO |
+ ’[’ -x /usr/sbin/sindes-get-certificate ’]’ + /usr/sbin/sindes-get-certificate Generating key-pair: [RSA/1024] OK Creating certificate request All went fine. Private key in /var/tmp/get-crt-Hp7990/client.key Certificate request in /var/tmp/get-crt-Hp7990/client.csr Sending the request to sindes-server.cern.ch... Something went wrong while contacting CA (curl returned 22) Cleaning /var/tmp/get-crt-Hp7990 + fail ’sindes-get-certificate failed (1)’ + cat /root/ks-post-reboot.log + mail -s ’install failed on itrb5808: sindes-get-certificate failed (1)’
CERN-IT-FIO group meeting – p. 14/17
SINDESsh > help acl acl -set -target <targetname> [-type node|cluster] [-length <secs>] [-grant] [-deny] [-nodomain] acl -remove -target <targetname> [-type node|cluster] [-nodomain] acl -print [-target <targetname> -type node|cluster] [-nodomain] [-length <secs>] [-grant] [-deny] acl -clean [-clean] [-nodomain] targetname : host(s) (comma separated) or cluster name type: cluster or node length: time window size in seconds (in print, only lines where ttl <= length) grant: permit the target(s) to request a certificate (in print, only lines where csr = YES) deny: prevent the target(s) from requesting a certificate (in print, only lines where csr = NO) clean: cleans the ACL by removing expired entries where certificate right is 0. Repeat -clean if you want to clean all expired entries (no matter what the certificate right is) nodomain: won’t handle domain name (DANGEROUS) SINDESsh > acl -print -target lxdc -type cluster -grant
hostname TTL Request Right|
lxb5314 EXP YES| | lxb5316 EXP YES| | lxb5318 EXP YES| | lxs5021 22:34 YES| | tbed0012 EXP YES| | tbed0066 15:34 YES| | tbed0067 22:34 YES|
SINDESsh > help cert cert -target <targetname> [-type node|cluster] [-revoke] [-check [-digest] [-[no]issued]] [-nodomain] targetname : host(s) (comma separated) or cluster name. type: cluster or node. revoke: ask for a revocation. check:
digest:
[no]issued:
nodomain: don’t append any domain name after the hostnames (DANGEROUS) SINDESsh > cert -check -target lxdc -type cluster
hostname valid revoked|
lxb5301 YES NONE| | lxb5302 YES NONE| | lxb5314 NO 1| | lxb5303 YES 1| | lxb5304 YES 1| | lxb5305 YES 1| ...
CERN-IT-FIO group meeting – p. 15/17
SINDESsh > help listitems listitems -target <targetname> [-type cluster|node] [-[no]check] targetname: host(s) (comma separated) or cluster name to be listed type : node or cluster (default: node) check : checks for files/scripts needed by nodes (default: yes) SINDESsh > listitems -target
Name Scope Method Hostname Cluster File Script|
passwd-header cluster script N/A lxplus OK OK(clu.)| | group-header cluster file N/A lxplus OK
| ssh_key cluster file N/A lxplus OK
acl
cert
listitems - lists items for a given target map
prepare
remove
verbose
CERN-IT-FIO group meeting – p. 16/17
CERN-IT-FIO group meeting – p. 17/17