Live data from Hacker News

Awless: A Mighty CLI for AWS

github.com

81–90 of 120 posts

Re: Awless: A Mighty CLI for AWS

#82

Just wondering here, but why would you use this vs terraform? Given that I can define most of the stuff I need from AWS in terraform and check the state of the infra via plan command, what would be the use case for CLI? I'm actively trying to break the habit of modifying infra without first writing terraform document for it. This way I can always be sure that I have no surprises when creating a new environment.

There is no state file and it is a more "AWS first" way to do queries and one off tasks. Especially for destroying old stuff, there is a value in a non-idempotent approach.

Re: Awless: A Mighty CLI for AWS

#83

Earlier quoted context omitted.

Good point. Thanks for the advice, we will study quickly how we can improve this. Our goal is above all to make the usage of AWS easier, and as a result, more secure. We do not want to expose the CLI users to any new threat. We made the source code available to anyone (even the anonymous data collection), to be transparent and get feedback on our work to correct it when needed.

I opened an issue: https://github.com/wallix/awless/issues/39 PBKDF2, bcrypt, and scrypt are all used where a database needs to store something and check for equality, but where the values in the database need to not be reversible even if the database is breached. They might be suitable here.

None of those can deal with the case of having too limited of an input range. Even if you use a million rounds, you've only added 2^20 to the workload.

Re: Awless: A Mighty CLI for AWS

#84

Can someone explain why this is different/better than the official CLI application?

One reason I can think of is this is written in Go while the official AWS CLI tools are written in Python (and some of the older ones are Java, which is often a terrible choice for CLIs given the startup time).

A Go CLI tool has some deployment advantages over Python.

Re: Awless: A Mighty CLI for AWS

#85

Can someone explain why this is different/better than the official CLI application?

Also, we're still at the beginning of the project. Since we build a RDF model of the infrastructure (stored locally), we will soon be able to answer many advanced queries easily such as:

- everything inside a VPC

- the siblings of an instance

etc.

We currently rely on https://github.com/google/badwolf for that.

awless also includes an easy-to-write template engine (vs. CloudFormation or TerraForm - which we also plan to integrate).

See more features in the README. Note that, according to feedback since launch, it seems that awless is noticeably faster than aws-cli. The latest version (that you build with go install) has no statistics, try for yourself!

Re: Awless: A Mighty CLI for AWS

#86

Earlier quoted context omitted.

> This seems unnecessarily convoluted Sounds like a standard hybrid approach. https://en.m.wikipedia.org/wiki/Hybrid_cryptosystem

I get that part, but I don't see why they are encrypting it in the first place. It's being sent over SSL, so why bother? Plus, hybrid cryptosystems exist because symmetric encryption is much faster than asymmetric, which matters for large amounts of data. But this is (even before compression) probably only about a kilobyte of data. Why have the extra complexity?

Because you can then store it encrypted until you're ready to process it.

Re: Awless: A Mighty CLI for AWS

#87

I hate to pile on to the complaints about sending usage metrics to a server, but this is pretty funky. The metrics include the instance id, account id, a list of the commands run with timestamps, the region, a bunch of metadata about the number of VPCs, Subnets, IAM users and policies, etc. Which is kind of a lot to get, and definitely isn't anonymous. Why do they need to know how many VPCs, Subnets, IAM users, and I…

Thanks all for the feedback. We understood that the data collection could be done with much care. As a result, until we design a better way to send truly anonymous data, we have disabled the data collection (cf. https://github.com/wallix/awless/commit/f6389e75787390bd7797... ). We will let you know when we have something better, keeping everything transparent, as we will always do.

How about you just... not collect data from people? Or, at the very least, have it be an opt-in option?

I'll probably never use this just on principle.

Post reply on HN