AWS संसाधनों को स्थानीय फ़ाइलसिस्टम के रूप में माउंट करता है, जिससे बुनियादी ढांचे की खोज, सुरक्षा ऑडिटिंग और कॉन्फ़िगरेशन विश्लेषण के लिए grep, diff और cat जैसे मानक Unix टूल का उपयोग किया जा सकता है।
आपका AWS, एक फ़ाइल सिस्टम के रूप में।

यह:
grep -l "AdministratorAccess" iam/users/*/policies.json
इसके बजाय:
aws iam list-users --query 'Users[].UserName' --output text | \
xargs -I{} sh -c 'aws iam list-attached-user-policies --user-name {} --query "AttachedPolicies[].PolicyArn" --output text' | \
grep AdministratorAccess
sisu AWS संसाधनों को एक स्थानीय फ़ाइल सिस्टम के रूप में माउंट करता है। अपने जाने-पहचाने टूल - grep, cat, diff, vim - का उपयोग करें, JSON और AWS CLI से जूझने के बजाय।
AI-अनुकूल डिज़ाइन: AI टूल सर्वर में SSH नहीं कर सकते या इंटरैक्टिव AWS CLI सेशन नहीं चला सकते। लेकिन sisu के साथ, आपका पूरा AWS इन्फ्रास्ट्रक्चर सरल फ़ाइल पथ बन जाता है जिसे कोई भी AI पढ़ सकता है। रिमोट EC2 फ़ाइल सिस्टम ec2/<instance>/fs/ पर उपलब्ध हैं - जिससे AI SSH की आवश्यकता के बिना आपके इंस्टेंस पर /var/log, /etc, और किसी भी फ़ाइल को ब्राउज़ कर सकता है।
वर्तमान में S3, SSM, IAM, VPC, Lambda, EC2, ECS, CloudFront, Secrets Manager, Route 53, और CloudWatch Logs का समर्थन करता है।
go install github.com/semonte/sisu@latest
FUSE आवश्यक है:
sudo apt install fuse # Ubuntu/Debian
sudo yum install fuse # RHEL/CentOS
sisu
आप अंदर हैं। आपका AWS अब आपकी उँगलियों पर:
~/.sisu/mnt/
├── default/ # AWS प्रोफ़ाइल
│ ├── global/ # IAM, S3, Route 53 (क्षेत्र-स्वतंत्र)
│ │ ├── iam/
│ │ ├── route53/
│ │ └── s3/
│ ├── us-east-1/ # क्षेत्रीय सेवाएं
│ │ ├── cloudfront/
│ │ ├── ec2/
│ │ ├── ecs/
│ │ ├── lambda/
│ │ ├── logs/
│ │ ├── secrets/
│ │ ├── ssm/
│ │ └── vpc/
│ └── eu-west-1/
│ └── ...
├── prod/ # अन्य प्रोफ़ाइल ~/.aws/credentials से
└── staging/
जब हो जाए तो exit टाइप करें।
# किसके पास व्यवस्थापक पहुँच है?
grep -l "AdministratorAccess" */global/iam/users/*/policies.json
# SSH खुले वाले सुरक्षा समूह
grep -r '"FromPort": 22' */us-east-1/vpc/*/security-groups/
# भूमिकाएँ जो Lambda मान सकता है
grep -l "lambda.amazonaws.com" */global/iam/roles/*/info.json
# SSM में रहस्य?
grep -r "password" */us-east-1/ssm/
# Lambda फ़ंक्शन जिनमें एन्व वेरिएबल में रहस्य हैं
grep -r "PASSWORD\|SECRET\|API_KEY" */us-east-1/lambda/*/env.json
# पुराने रनटाइम का उपयोग करने वाले फ़ंक्शन
grep -r "python3.8\|nodejs16" */*/lambda/*/config.json
# सार्वजनिक IP वाले EC2 इंस्टेंस
grep -r "PublicIpAddress" */*/ec2/*/info.json
# रुके हुए इंस्टेंस ढूँढें (पैसा बर्बाद?)
grep -r '"Name": "stopped"' */*/ec2/*/info.json
# SSM के माध्यम से EC2 इंस्टेंस से कनेक्ट करें (कोई SSH कुंजी आवश्यक नहीं!)
./default/us-east-1/ec2/i-abc123/connect
# EC2 बूट लॉग और कर्नल संदेश देखें
cat default/us-east-1/ec2/i-abc123/console.log
# सभी रहस्य देखें
ls */us-east-1/secrets/
# कोई रहस्य पढ़ें
cat default/us-east-1/secrets/myapp/database/value
# सभी DNS ज़ोन सूचीबद्ध करें
ls */global/route53/
# किसी ज़ोन के DNS रिकॉर्ड देखें
cat default/global/route53/example.com/records.json
# सभी CNAME रिकॉर्ड खोजें
grep -r '"Type": "CNAME"' */global/route53/*/records.json
# हाल के लॉग में त्रुटियाँ खोजें
grep -i "error" default/us-east-1/logs/aws/lambda/my-function/latest.log
# सभी लॉग समूह देखें
ls */us-east-1/logs/
# लॉग स्ट्रीम सूचीबद्ध करें (20 सबसे हाल के दिखाता है)
ls default/us-east-1/logs/aws/lambda/my-function/
# किसी विशिष्ट स्ट्रीम से घटनाएँ देखें
cat default/us-east-1/logs/aws/lambda/my-function/2024_01_15_abc123/events.log
# ECS: क्लस्टर, सेवाएँ और कार्य ब्राउज़ करें
ls default/us-east-1/ecs/my-cluster/my-service/
cat default/us-east-1/ecs/my-cluster/my-service/logs/latest.log
# CloudFront: वितरण और फ़ंक्शन देखें
ls default/us-east-1/cloudfront/distributions/
cat default/us-east-1/cloudfront/functions/my-auth/code.js
# S3: बकेट नीतियाँ और एक्सेस सेटिंग्स जाँचें
cat default/global/s3/my-bucket/.meta/policy.json
cat default/global/s3/my-bucket/.meta/public-access-block.json
# खातों के बीच IAM भूमिकाओं की तुलना
diff prod/global/iam/roles/api/info.json staging/global/iam/roles/api/info.json
# क्षेत्रों के बीच सुरक्षा समूह बहाव
diff default/us-east-1/vpc/vpc-xxx/security-groups/sg-xxx.json default/eu-west-1/vpc/vpc-yyy/security-groups/sg-yyy.json
# Lambda कॉन्फ़िग अंतर
diff prod/us-east-1/lambda/my-func/config.json staging/us-east-1/lambda/my-func/config.json
# jq के साथ सुंदर प्रिंट
cat default/global/iam/roles/my-role/info.json | jq '.AssumeRolePolicyDocument'
# अपनी भूमिकाएँ गिनें
ls default/global/iam/roles/ | wc -l
# बिना टैग वाले संसाधन खोजें
cat default/us-east-1/vpc/vpc-xxx/info.json | jq 'select(.Tags == null)'
# उपयोग में सभी Lambda रनटाइम सूचीबद्ध करें
grep -h "Runtime" */*/lambda/*/config.json | sort | uniq -c
cat default/us-east-1/ssm/myapp/database-url # पढ़ें
echo "postgres://prod:5432" > default/us-east-1/ssm/database-url # लिखें
vim default/us-east-1/ssm/myapp/config # संपादित करें
cp local.txt default/global/s3/my-bucket/backup/
cat default/global/s3/my-bucket/logs/app.log | grep ERROR
rm default/global/s3/my-bucket/old-file.txt
sisu # रूट से शुरू करें
sisu --profile prod # prod/ से शुरू करें
sisu --profile prod --region us-east-1 # prod/us-east-1/ से शुरू करें
sisu stop # अनमाउंट करें
sisu --debug # डीबग लॉगिंग
| सेवा | पढ़ें | लिखें | हटाएं |
|---|---|---|---|
| S3 (ऑब्जेक्ट, बकेट नीतियाँ, एक्सेस सेटिंग्स) | ✓ | ✓ | ✓ |
| SSM Parameter Store | ✓ | ✓ | ✓ |
| IAM (उपयोगकर्ता, भूमिकाएँ, नीतियाँ, समूह) | ✓ | - | - |
| VPC (सबनेट, सुरक्षा समूह, रूट) | ✓ | - | - |
| Lambda (कॉन्फ़िग, नीति, एन्व वेरिएबल, लॉग) | ✓ | - | - |
| EC2 (इंस्टेंस, सुरक्षा समूह, टैग, लॉग, रिमोट fs) | ✓ | - | - |
| ECS (क्लस्टर, सेवाएँ, कार्य, लॉग) | ✓ | - | - |
| CloudFront (वितरण, फ़ंक्शन, लॉग) | ✓ | - | - |
| Secrets Manager | ✓ | - | - |
| Route 53 (ज़ोन, रिकॉर्ड) | ✓ | - | - |
| CloudWatch Logs | ✓ | - | - |
लॉग स्ट्रीम events.log फ़ाइलें मेमोरी में पूरी तरह लोड होने के बजाय AWS से आलसी रूप से स्ट्रीम की जाती हैं:
cat, grep, head, less के साथ काम करता है# मिलान खोजने के लिए केवल पर्याप्त बैच प्राप्त करता है
grep "ERROR" .../my-stream/events.log
# केवल पहला बैच प्राप्त करता है
head -50 .../my-stream/events.log
# ऑन-डिमांड लोडिंग के साथ स्क्रॉल करें
less .../my-stream/events.log
# सभी घटनाएँ प्राप्त करेगा
cat .../my-stream/events.log | wc -l