Update README.md
This commit is contained in:
69
README.md
69
README.md
@@ -1,2 +1,71 @@
|
||||
# route53-compare
|
||||
|
||||
**AWS Route53 Asset Inventory Script**
|
||||
======================================
|
||||
|
||||
This Bash script helps you identify which assets in your AWS Route53 hosted zones are also tracked in JupiterOne. It does this by:
|
||||
|
||||
1. Fetching all your Route53 hosted zones.
|
||||
|
||||
2. Retrieving DNS records (A and CNAME) from each zone.
|
||||
|
||||
3. Reaching out to JupiterOne's API to check if an asset exists with the DNS record's value.
|
||||
|
||||
4. Printing out the results, indicating if the asset was found in JupiterOne or not.
|
||||
|
||||
|
||||
**Prerequisites**
|
||||
-----------------
|
||||
|
||||
* **AWS CLI:** You need to have the AWS CLI installed and configured with the necessary credentials.
|
||||
|
||||
* **JupiterOne API Key:** You'll need an API key from JupiterOne to access their GraphQL API.
|
||||
|
||||
|
||||
**Setup**
|
||||
---------
|
||||
|
||||
1. **Create a .env file:** In the same directory as the script, create a file named .env with the following content:
|
||||
Replace the placeholders with your actual AWS profile name, JupiterOne API key, and JupiterOne account ID.
|
||||
```
|
||||
AWS_PROFILE=your_aws_profile_name
|
||||
J1_API_KEY=your_jupiterone_api_key
|
||||
J1_ACCOUNT=your_jupiterone_account\id
|
||||
|
||||
```
|
||||
|
||||
**Usage**
|
||||
---------
|
||||
|
||||
1. **Make the script executable:
|
||||
```bash
|
||||
chmod +x dangle.sh
|
||||
```
|
||||
|
||||
2. **Run the script:
|
||||
```bash
|
||||
./dangle.sh
|
||||
or
|
||||
bash dangle.sh
|
||||
```
|
||||
|
||||
|
||||
The script will output the DNS records and whether or not a corresponding asset was found in JupiterOne.
|
||||
|
||||
**To-Do**
|
||||
---------
|
||||
|
||||
* **Error Handling:** The script includes basic error handling for the .env file. We should make it more robust at error handling for AWS CLI and JupiterOne API calls.
|
||||
|
||||
* **Additional Record Types:** Currently the script only handles A and CNAME records. We should extend it to support other record types like MX, TXT, etc.
|
||||
|
||||
* **JupiterOne Query:** The JupiterOne query is currently VERY simple. We might want to refine it.
|
||||
|
||||
|
||||
**Remember:**
|
||||
|
||||
* Replace script\_name.sh with the actual filename of your script.
|
||||
|
||||
* Ensure the .env file is in the same directory as the script.
|
||||
|
||||
* Consider adding more details to the README, such as examples of the output, potential use cases, or troubleshooting tips.
|
||||
Reference in New Issue
Block a user