[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MirageOS-devel] OCaml bindings for EC2 API



That's a very comprehensive blog post Jyotsna!  It would be good to verify if the ec2.sh script below works using the CLI tools and modern Mirage kernels. Mindy has had this working on her blog (see http://www.somerandomidiot.com/blog/2014/03/24/arriving-at-the-mirage/) and I've booted several test kernels (but haven't touched my EC2 CLI setup for years so it might not be useful).

Once that works, we can start bisecting the issues in your bindings (which seem to be really really close to working!)

Anil 

On 5 Aug 2014, at 10:05, Thomas Gazagnaire <thomas@xxxxxxxxxxxxxx> wrote:

mirari is deprecated, you should use mirage/mirage



On 4 Aug 2014, at 19:52, Jyotsna Prakash <jyotsna.prakash@xxxxxxxxx> wrote:

Sorry, half my sentence disappeared!
- There is something wrong with the method I am using to turn xen kernels
into images. The script, which I originally obtained from the mirage docs (
http://openmirage.org/docs/xen-boot), was working earlier this summer. I
may have accidentally deleted the line that generates an initrd. The
original script is, linked from the mirage docs, is missing.


On Mon, Aug 4, 2014 at 11:50 AM, Jyotsna Prakash <jyotsna.prakash@xxxxxxxxx>
wrote:

Hello,

I've written a blog post
<http://1000hippos.wordpress.com/2014/08/04/ec2-bundling-images/> about
the EC2 image bundling process, and what I have left to do. The short of it
is:

- There is something wrong with the method I am using to turn xen kernels
into images. The script, which I originally obtained from the mirage docs (
http://openmirage.org/docs/xen-boot), was working earlier this summer. I
may have accidentally deleted the line that generates an initrd. The
original script

- I am running shell command with OCaml's `Unix.open_process_in`. I need
to figure out why the command is not giving consistent results... about 1
out of 10 times it will produce the correct digest. (A SHA1 digest of the
input image after it is compressed and encrypted.)
The shell command is
 openssl sha1 < /tmp/ec2-bundle-image-digest-pipe-10174 & tar -c -h -S
--owner 0 --group 0 -C /tmp mymirage.img | tee
/tmp/ec2-bundle-image-digest-pipe-10174 | gzip -9 | openssl enc -e
-aes-128-cbc -K aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -iv
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb > ec2_tmp/mymirage.img.tar.gz.enc

And Hannes, thanks for your help! I was able to use nocrypto and
ocaml-x509 to extract RSA keys and encrypt. I will look into replacing
cryptokit with ocaml-sha.

Best,
Jyotsna


On Thu, Jul 17, 2014 at 11:59 AM, Hannes Mehnert <hannes@xxxxxxxxxxx>
wrote:

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA384

Hi Jyotsna,

On 07/17/2014 19:48, Jyotsna Prakash wrote:
For my GSoC project I've been working on OCaml bindings to the EC2
API. The code is at https://github.com/moonlightdrive/ocaml-ec2

Awesome!

I've yet to launch a Mirage-backed VM without using the Amazon's
CLI tools. The process involves producing an xml manifest
describing an image; the manifest contains fields of RSA encrypted
data. Problem is, I don't have any way to take my public keys (pem
files) and turn them into `Cryptokit.RSA.key`s.

AFAICS you're only using SHA256 from Cryptokit so far -- you might
want to use ocaml-sha (https://github.com/vincenthz/ocaml-sha) for that.

Also, David wrote ocaml-nocrypto
(https://github.com/mirleft/ocaml-nocrypto) and we further developed
ocaml-x509 (https://github.com/mirleft/ocaml-x509/) where you can
parse pem to get a certificate
(https://github.com/mirleft/ocaml-x509/blob/master/lib/x509.mli#L18)
or a private key (RSA)
https://github.com/mirleft/ocaml-x509/blob/master/lib/x509.mli#L30
(example usage:
https://github.com/mirleft/ocaml-tls/blob/master/lwt/x509_lwt.ml#L49)

What do you need to do with the RSA key? The nocrypto API is at
https://github.com/mirleft/ocaml-nocrypto/blob/master/src/rsa.mli


Cheers,

Hannes

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (FreeBSD)

iQIcBAEBCQAGBQJTyB0eAAoJELyJZYjffCjuns8P/AnRdjFMIcs0PA0tdvUVuNDI
JbViUzCvhyQbDQYdVpLLoub/BZAz6A2WrVbHOuJ3DpaqB+qPLESB094hS9Fqds1/
xy20RthXkZwKOFYRKJ8flHBaRqaZV/ffXCb3qpEOpo8RrN4NutcV1OTBRi9ysOVM
eXD2qbLUq6CqAzenks3r8G7Rkk1uzKcu2pxixDygx60EU8JPBw0m50j3ZrOXpJYU
7iq6fsNuLYV4NyvZYizkLROL/6G0sfYTLjnPWmR5hAXypjqt1Ad5n1VYhq3oEt8d
PMSoQQtWTEGrfGyxKDQQfo0feQ2r5/lsqDVXcuCZhWDrguBDId08zc1tnmCej7EW
Eq9vw2pZ2tDbOkwDcIHtb/ACuNjXSP1XmP/1VcWSCHly8mSnLkbCKE6Nkz4e345k
pJoENKXAcap9ktW996QAPdhKgck/sVVQOxEZ3BkFMThL2pjrw6v6RRCJq3nNCroG
AP6SUCU6JzhJfoloTnfCDGao/JGBaG+2vq1fTArXhc7WHPd1OLuC+lAlxScoLJ4p
XHakfCuiMjAvk8WPBjhZXMi9ce0O4bv5CSFLYUlT5+H1XcXTpmibc5M3KxKdk25s
8WreBAVLdshBaOaOOcr8GOqgTxMrgIb6uipjChuYKmebl0EpsAN+h+p7S5YoQJYz
pgdhpVDaP3Ocu+kRpFEB
=zzgd
-----END PGP SIGNATURE-----

_______________________________________________
MirageOS-devel mailing list
MirageOS-devel@xxxxxxxxxxxxxxxxxxxx
http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel



_______________________________________________
MirageOS-devel mailing list
MirageOS-devel@xxxxxxxxxxxxxxxxxxxx
http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel

_______________________________________________
MirageOS-devel mailing list
MirageOS-devel@xxxxxxxxxxxxxxxxxxxx
http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel
_______________________________________________
MirageOS-devel mailing list
MirageOS-devel@xxxxxxxxxxxxxxxxxxxx
http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.