Ravindra Bagale · Cyber Securityसर्व coursesया course चे lessonsशोधाEnglish

Cyber Security · मराठी आवृत्ती

grep वापरून text शोधा

रवींद्र बागले यांच्या course वर आधारित · सहज मराठीत explanation

या page मध्ये

grep दिलेल्या pattern शी जुळणाऱ्या lines दाखवतो. मोठ्या log मध्ये errors किंवा login attempts शोधताना तो खूप उपयोगी आहे.

Option अर्थ
-i लहान/मोठ्या अक्षरांत फरक नको
-r / -R Directories मध्ये आतपर्यंत search
-n Line numbers दाखवणे
-v न जुळणाऱ्या lines
-c जुळणाऱ्या lines मोजणे
-l फक्त filenames
-w पूर्ण word match
-E Extended regex (alternation, +, ?)
-A 3 / -B 3 / -C 3 Match नंतर/आधी/आजूबाजूच्या 3 lines
grep -i "error" /var/log/nginx/error.log
grep -rn "listen" /etc/nginx/
grep -v "^#" /etc/ssh/sshd_config | grep -v "^$"   # hide comments & blank lines
grep -c " 404 " /var/log/nginx/access.log          # how many 404s?
grep -E "Failed|Invalid" /var/log/auth.log         # Ubuntu SSH failures
sudo grep "Failed password" /var/log/secure         # AL2/CentOS (AL2023 uses journalctl)

-i case दुर्लक्षित करतो; -r/-R directory tree मध्ये शोधतो; -n line number; -v न जुळणाऱ्या lines; -c जुळणाऱ्या lines चा count; -l फक्त filenames; -w पूर्ण word. -E extended regex वापरतो. -A/-B/-C 3 match नंतर/आधी/आजूबाजूच्या तीन lines दाखवतात.

Examples मध्ये Nginx errors, listen settings, 404 count आणि SSH failures शोधले आहेत. grep -v "^#" फक्त line च्या सुरुवातीलाच # असलेल्या comments काढतो; आधी spaces असतील तर हा साधा pattern पुरेसा नाही. ^$ पूर्ण रिकामी line match करतो.

Security मध्ये उपयोग

Auth log मधला Failed password pattern failed login attempts दाखवू शकतो. Source example grep -E "union|select|<script" access.log मध्ये संशयास्पद web request strings शोधतात. Pattern मिळाला म्हणजे attack निश्चित झाला असं नाही; URL encoding, case, log format आणि context तपासा. अशी text-search पद्धत SIEM query शिकण्याचा चांगला पाया आहे.

Practice

तुमच्या server वर failed SSH logins मोजा. Nginx install झाल्यावर /etc/nginx मधल्या listen lines शोधा. sshd_config मधल्या comments/blank lines वगळून settings पाहा; indented comments राहतात का हेही पाहा.