The book provides a comprehensive introduction to ethical hacking.

हे पुस्तक नैतिक हॅकिंगची सर्वसमावेशक ओळख करून देते.


Install VirtualBox to create a safe environment for practicing hacking techniques.

हॅकिंग तंत्रांचा सराव करण्यासाठी सुरक्षित वातावरण तयार करण्यासाठी व्हर्च्युअल बॉक्स स्थापित करा.


Ethical hacking is crucial for protecting systems from malicious attacks.

घातक हल्ल्यांपासून प्रणालींचे संरक्षण करण्यासाठी नैतिक हॅकिंग आवश्यक आहे.


Learn Python to enhance your skills as an ethical hacker.

एक नैतिक हॅकर म्हणून तुमची कौशल्ये वाढवण्यासाठी पायथन शिका.


The author uses Ubuntu as his default operating system.

लेखक उबंटूचा वापर त्याच्या डीफॉल्ट ऑपरेटिंग सिस्टम म्हणून करतो.


Understanding network models is essential for ethical hacking.

नैतिक हॅकिंगसाठी नेटवर्क मॉडेल्स समजून घेणे आवश्यक आहे.


Data travels through many layers in a network.

नेटवर्कमध्ये डेटा अनेक थरांमधून प्रवास करतो.


A network connects devices to share resources efficiently.

नेटवर्क संसाधने कार्यक्षमतेने सामायिक करण्यासाठी डिव्हाइसेसना जोडते.


ओएसआय मॉडेलमध्ये सात स्तर आहेत.


The book explains the legal side of ethical hacking.

हे पुस्तक नैतिक हॅकिंगची कायदेशीर बाजू स्पष्ट करते.


Always obtain permission before testing a system.

सिस्टमची चाचणी घेण्यापूर्वी नेहमी परवानगी घ्या.


Using hacking tools for illegal activities is a serious crime.

अवैध कामांसाठी हॅकिंग साधनांचा वापर करणे हा एक गंभीर गुन्हा आहे.


The book is intended for beginners in programming.

हे पुस्तक प्रोग्रामिंगमधील नवशिक्यांसाठी आहे.


The author provides source code examples for readers.

लेखक वाचकांसाठी सोर्स कोडची उदाहरणे देतो.


The book covers topics like installing Kali Linux.

हे पुस्तक काली लिनक्स स्थापित करण्यासारखे विषय कव्हर करते.


Understanding the basics of networking is important.

नेटवर्किंगची मूलभूत माहिती असणे महत्त्वाचे आहे.


The book discusses the importance of anonymity.

हे पुस्तक अनामिकतेचे महत्त्व स्पष्ट करते.


Learn about the different types of network attacks.

विविध प्रकारच्या नेटवर्क हल्ल्यांबद्दल जाणून घ्या.


The book explains how to defend against attacks.

हे पुस्तक हल्ल्यांपासून कसे बचाव करायचे हे स्पष्ट करते.


The goal is to protect systems and data.

याचा उद्देश प्रणाली आणि डेटाचे संरक्षण करणे आहे.


The program runs, and the outside print() function executes first.

प्रोग्राम चालतो, आणि बाहेरील print() फंक्शन प्रथम कार्यान्वित होते.


White space or indentation in Python plays a major role.

पायथनमध्ये व्हाईट स्पेस किंवा इंडेंटेशन महत्त्वाची भूमिका बजावते.


Every block of code has its own white space or the code inside that block is indented accordingly.

प्रत्येक कोड ब्लॉकची स्वतःची व्हाईट स्पेस असते किंवा त्या ब्लॉकमधील कोड त्यानुसार इंडेंट केला जातो.


Commenting is very important in any kind of programming.

कोणत्याही प्रकारच्या प्रोग्रामिंगमध्ये कमेंट करणे खूप महत्त्वाचे आहे.


When Python interpreter sees #, it knows that is a comment and it ignores it.

जेव्हा पायथन इंटरप्रिटर # पाहतो, तेव्हा त्याला समजते की ती कमेंट आहे आणि तो ती दुर्लक्षित करतो.


In Python, the assignment operator is an equal (=) sign.

पायथनमध्ये, असाइनमेंट ऑपरेटर हे समान (=) चिन्ह आहे.


What is a string? A string is an addition of characters.

स्ट्रिंग म्हणजे काय? स्ट्रिंग म्हणजे अक्षरांची बेरीज.


पायथनमध्ये, सर्व काही ऑब्जेक्ट आहे.


स्वतःला एक ऑब्जेक्ट समजा.


Every object has an ID, type, and value.

प्रत्येक ऑब्जेक्टला आयडी, प्रकार आणि मूल्य असते.


अपरिवर्तनीय ऑब्जेक्ट्स त्यांचे मूल्य बदलू शकत नाहीत.


Changing values of “x” does not affect the immutable objects.

“x” ची मूल्ये बदलल्याने अपरिवर्तनीय ऑब्जेक्ट्सवर परिणाम होत नाही.


Numbers, strings, and “tuples” are immutable.

संख्या, स्ट्रिंग आणि “ट्यूपल्स” अपरिवर्तनीय आहेत.


Lists, dictionaries, and other objects are mutable.

लिस्ट, डिक्शनरी आणि इतर ऑब्जेक्ट्स परिवर्तनीय आहेत.


In Python there are two kinds of numbers: integer and float.

पायथनमध्ये दोन प्रकारचे नंबर आहेत: पूर्णांक आणि फ्लोट.


String is an immutable object and can be written within double quotes or single quotes.

स्ट्रिंग एक अपरिवर्तनीय ऑब्जेक्ट आहे आणि ती दुहेरी अवतरण चिन्हे किंवा एकेरी अवतरण चिन्हांमध्ये लिहिता येते.


नवीन ओळ मिळवण्यासाठी आम्ही बॅकस्लॅश वापरला.


The last statement is called a raw string, where a backslash is not working anymore.

शेवटच्या विधानाला रॉ स्ट्रिंग म्हणतात, जिथे बॅकस्लॅश यापुढे काम करत नाही.


In your coding life you need to use plenty of strings and some of them might have multiple line breaks.

तुमच्या कोडिंगच्या जीवनात तुम्हाला भरपूर स्ट्रिंग वापरावे लागतील आणि त्यापैकी काहींमध्ये अनेक ओळींचे ब्रेक असू शकतात.


Python has another very strong aggregate type of values: dictionary.

पायथनमध्ये मूल्यांचा आणखी एक अतिशय मजबूत एकत्रित प्रकार आहे: डिक्शनरी.


The user's request first knocks the "application" layer (7) which is the nearest and then it proceeds.

उपभोक्त्याची विनंती प्रथम 'ॲप्लिकेशन' लेयर (७) वर येते, जे सर्वात जवळचे असते आणि मग ते पुढे जाते.


Every process in each layer involves a complicated "bits and bytes" functioning.

प्रत्येक थरातील प्रत्येक प्रक्रियेमध्ये एक गुंतागुंतीचे 'बिट्स आणि बाइट्स' कार्य असते.


संगणकाला फक्त ० आणि १ हेच समजते.


But the user does not like to see a video in 0 and 1.

पण वापरकर्त्याला ० आणि १ मध्ये व्हिडिओ बघायला आवडत नाही.


Let us break the process into more detail.

चला, ही प्रक्रिया अधिक तपशीलवारपणे पाहूया.


In the application layer (7), the user interacts with the device that could be a personal computer or smart phone or anything you might guess.

ॲप्लिकेशन लेयर (७) मध्ये, वापरकर्ता अशा उपकरणाशी संवाद साधतो जे एक वैयक्तिक संगणक किंवा स्मार्टफोन किंवा इतर काहीही असू शकते, ज्याचा तुम्ही अंदाज लावू शकता.


So the application layer basically handles the user’s interaction.

म्हणून, ॲप्लिकेशन लेयर मूलतः वापरकर्त्याच्या संवादाचे व्यवस्थापन करते.


डेटाग्रामचे नाव “डेटा” आहे.


The user requests the data and ultimately retrieves the data.

वापरकर्ता डेटाची विनंती करतो आणि शेवटी डेटा प्राप्त करतो.


What happens when the user sends requests from layer 7?

जेव्हा वापरकर्ता लेयर ७ मधून विनंत्या पाठवतो, तेव्हा काय होते?


It enters into the next layer: (6) presentation.

ते पुढील लेयरमध्ये प्रवेश करते: (६) प्रेझेंटेशन.


एनकॅप्सुलेशनची प्रक्रिया सुरू होते.


डेटा फॉरमॅट केला जातो आणि एन्क्रिप्ट केला जातो.


Next, the layer 5 or session enters into the scene.

यानंतर, लेयर ५ किंवा सेशन (सत्र) सुरू होते.


This layer manages end-to-end communication.

हे लेयर एंड-टू-एंड (शेवटपर्यंत) संप्रेषणाचे व्यवस्थापन करते.


Suppose you type a password and log into your social media account. This layer maintains the end-to-end (user-to- server) communication so that you can remain logged into your page.

समजा, तुम्ही पासवर्ड टाकला आणि तुमच्या सोशल मीडिया खात्यात लॉग इन केले. हे लेयर एंड-टू-एंड (वापरकर्त्याकडून सर्व्हरकडे) संवाद राखते जेणेकरून तुम्ही तुमच्या पृष्ठावर लॉग इन राहू शकता.


Tell this layer the name of the datagram is “data.”

या लेयरला सांगा की डेटाग्रामचे नाव “डेटा” आहे.


To assist you in maintaining your session, the next three layers work very hard.

तुमचे सत्र (session) राखण्यात मदत करण्यासाठी, पुढील तीन लेयर्स खूप परिश्रम घेतात.


They are: transport (layer 4), network (layer 3), data link (layer 2), respectively.

ते खालीलप्रमाणे आहेत: ट्रान्सपोर्ट (लेयर ४), नेटवर्क (लेयर ३), डेटा लिंक (लेयर २).


The name of the datagram of transport layer is “segment.”

ट्रान्सपोर्ट लेयरच्या डेटाग्रामचे नाव “सेगमेंट” आहे.


If we run this program now, the output will be: This is main function. less than a is less than b

आता आपण हा प्रोग्राम चालवल्यास, आउटपुट असे दिसेल: हे मुख्य कार्य आहे. कमी a, b पेक्षा कमी आहे.


Now we can change the place of conditional_values(), and conditionals_exec() and the output will change accordingly.

आता आपण conditional_values() आणि conditionals_exec() ची जागा बदलू शकतो आणि त्यानुसार आउटपुट बदलेल.


While a statement is true, the process is going on. You need a mechanism to stop that process.

जेव्हा विधान सत्य असते, तेव्हा प्रक्रिया सुरू असते. आपल्याला ती प्रक्रिया थांबवण्यासाठी एक यंत्रणा आवश्यक आहे.


Otherwise that statement will eat up your memory.

अन्यथा, ते विधान तुमची मेमरी खाईल.


So in each step b progresses by adding 1 to its value and finishes at 49.

म्हणून, प्रत्येक चरणात b त्याच्या मूल्यामध्ये 1 मिळवून प्रगती करतो आणि 49 वर समाप्त होतो.


The output is quite obvious: 1 1 2 3 5 8 13 21 34

आउटपुट अगदी स्पष्ट आहे: 1 1 2 3 5 8 13 21 34


Let us explain the steps one by one to understand it properly.

ते योग्यरित्या समजून घेण्यासाठी, एक-एक करून पायऱ्या स्पष्ट करूया.


Now the value of “a” is 16. What will be the value of b? It will be 16 + 16 = 32.

आता “a” ची किंमत 16 आहे. b ची किंमत काय असेल? ती 16 + 16 = 32 असेल.


The most common loop used in Python is for loop.

पायथनमध्ये वापरले जाणारे सर्वात सामान्य लूप म्हणजे फॉर लूप.


In fact, essentially almost all kinds of looping jobs can be done through the “for” loop.

खरं तर, जवळजवळ सर्व प्रकारचे लूपिंग कार्य “for” लूपद्वारे केले जाऊ शकतात.


We could have iterated through line by line as they are indexed.

आम्ही ओळीनुसार पुनरावृत्ती करू शकलो असतो कारण त्यांची अनुक्रमणिका आहे.


Dictionary says: enumeration is a kind of numbering which is a numbered list.

शब्दकोश म्हणतो: गणना ही एक प्रकारची संख्या आहे जी एक क्रमांकित सूची आहे.


This is extremely useful. You can search any character inside any string.

हे अत्यंत उपयुक्त आहे. आपण कोणत्याही स्ट्रिंगमध्ये कोणतेही अक्षर शोधू शकता.


In Python, functions or subroutines are extremely important for reusability of codes.

पायथनमध्ये, कोडच्या पुन:वापरासाठी कार्ये किंवा सबरूटीन अत्यंत महत्त्वपूर्ण आहेत.


We have called that function three times inside main() function, but with three different values , and one of them is NULL.

आम्ही ते कार्य main() फंक्शनमध्ये तीन वेळा कॉल केले आहे, परंतु तीन वेगवेगळ्या मूल्यांसह, आणि त्यापैकी एक NULL आहे.


Now it is obvious that you can play around with this code.

आता हे स्पष्ट आहे की आपण या कोडमध्ये बदल करू शकता.


Searching and replacing with regular expressions is equally easy and very simple in nature.

नियमित अभिव्यक्ती वापरून शोधणे आणि बदलणे हे देखील सोपे आणि निसर्गात अतिशय सोपे आहे.


Regular expression is itself a big topic.

नियमित अभिव्यक्ती स्वतःच एक मोठा विषय आहे.


If you want to use “re” module, the first step is importation.

जर तुम्हाला “re” मॉड्यूल वापरायचे असेल, तर पहिली पायरी म्हणजे आयात करणे.


All the words “lenore” and “nevermore” have been replaced by five hashtags: “#####”.

सर्व “lenore” आणि “nevermore” हे शब्द पाच हॅशटॅगने बदलले आहेत: “#####”.


We find many files there and presently we are interested in the “sources.list” file.

आम्हाला तिथे अनेक फाईल्स मिळतात आणि सध्या आम्हाला “sources.list” फाईलमध्ये स्वारस्य आहे.


We can use the “cat” command to read the file but we have something different in mind.

आम्ही फाईल वाचण्यासाठी “cat” कमांड वापरू शकतो, पण आमच्या डोक्यात काहीतरी वेगळे आहे.


We would like to search some particular word and want to separate them and see them in segregation.

आम्हाला काही विशिष्ट शब्द शोधायचे आहेत आणि त्यांना वेगळे करून विभाजन करून पाहायचे आहे.


If we simply write a command like “cat sources.list”, it will display a long listing of the sources of this Linux system.

जर आपण “cat sources.list” सारखा कमांड लिहिला, तर ते या लिनक्स प्रणालीच्या स्त्रोतांची लांब यादी दर्शवेल.


But we are interested about searching the word “src” and want to see how many times that word has been used in the “sources.list”.

पण आम्हाला “src” हा शब्द शोधण्यात स्वारस्य आहे आणि “sources.list” मध्ये तो शब्द किती वेळा वापरला गेला आहे हे पहायचे आहे.


We can even filter the source file more distinctly.

आम्ही स्त्रोत फाईल अधिक स्पष्टपणे फिल्टर करू शकतो.


We can narrow down our searches more and tell the terminal to find the word “src” only with small letters.

आम्ही आमचे शोध अधिक बारीक करू शकतो आणि टर्मिनलला “src” हा शब्द फक्त लहान अक्षरात शोधायला सांगू शकतो.


आणखी एक महत्त्वाचा कमांड म्हणजे “echo”.


You can even change a text file with this command.

तुम्ही या कमांडने टेक्स्ट फाईल देखील बदलू शकता.


We have first echoed some text on our terminal, then we used “>” (greater than sign) to put that text into the file “novel.txt”.

आम्ही प्रथम आमच्या टर्मिनलवर काही मजकूर दर्शविला, नंतर आम्ही “>” (greater than sign) वापरून तो मजकूर “novel.txt” फाईलमध्ये टाकला.


Now we will learn how to make directories in Linux.

आता आपण लिनक्समध्ये डिरेक्टरी कशा बनवायच्या हे शिकूया.


There is a very useful command: “mkdir”.

एक अतिशय उपयुक्त कमांड आहे: “mkdir”.


याचा सरळ अर्थ आहे “डिरेक्टरी तयार करा.”


Let us make a directory named after this project: “Ethical Hacking.”

चला, या प्रकल्पाचे नाव असलेली एक डिरेक्टरी बनवूया: “एथिकल हॅकिंग.”


In this case, if you write that way, Linux terminal understands something else.

या स्थितीत, जर तुम्ही तसे लिहिले, तर लिनक्स टर्मिनल दुसरे काहीतरी समजेल.


To remove a directory, you must have “root” privilege.

डिरेक्टरी काढण्यासाठी, तुमच्याकडे “root” विशेषाधिकार असणे आवश्यक आहे.


In Ubuntu, if we want to be a “root” or “super user,” we issue the command “sudo” first.

उबंटूमध्ये, जर आपल्याला “root” किंवा “super user” बनायचे असेल, तर आपण प्रथम “sudo” कमांड देतो.


The command “-rf” means “do it recursively with force.”

“-rf” कमांडचा अर्थ आहे “ते पुनरावृत्तीने सक्तीने करा.”


You have to be very careful about using this command because in Linux, once you have used this command, the file or directory is deleted permanently.

हा कमांड वापरताना खूप काळजी घेणे आवश्यक आहे, कारण लिनक्समध्ये, एकदा तुम्ही हा कमांड वापरला की, फाईल किंवा डिरेक्टरी कायमची डिलीट होते.


In Ethical Hacking, anonymity is a very big deal.

एथिकल हॅकिंगमध्ये, अनामिकता खूप महत्त्वाची आहे.


It can return any type of data: string, integer, object—anything.

ते कोणत्याही प्रकारचा डेटा परत करू शकते: स्ट्रिंग, पूर्णांक, ऑब्जेक्ट—काहीही.


We have returned range() object and got the value in our main() function.

आम्ही range() ऑब्जेक्ट परत केले आहे आणि main() फंक्शनमध्ये व्हॅल्यू मिळवली आहे.


पायथनमध्ये, आपण कार्ये तयार करू शकतो.


You have probably found that the function RangeFunctions() has a limitation.

तुम्ही कदाचित हे शोधले असेल की RangeFunctions() फंक्शनला मर्यादा आहे.


It stops at 9, although the range is mentioned as 10.

ते 9 वर थांबते, जरी श्रेणी 10 म्हणून नमूद केली आहे.


येथे आम्ही “yield” कीवर्ड वापरले आहे.


It is done because we have imagined that the code will progress step-by-step like we play a tape.

हे यासाठी केले आहे कारण आम्ही कल्पना केली आहे की कोड टेप वाजवतो, त्याप्रमाणे स्टेप-बाय-स्टेप पुढे जाईल.


You can just start from any point or stop at any point and progress by any step.

तुम्ही कोणत्याही बिंदूपासून सुरुवात करू शकता किंवा कोणत्याही बिंदूवर थांबू शकता आणि कोणत्याही स्टेपने पुढे जाऊ शकता.


As you have seen, we can set the value of any argument as default.

तुम्ही पाहिल्याप्रमाणे, आपण कोणत्याही युक्तिवादाचे मूल्य डीफॉल्टनुसार सेट करू शकतो.


पायथन हे समर्थन करत नाही.


Can we solve this problem so that we can pass any number of arguments and control it without having any error message?

आम्ही ही समस्या सोडवू शकतो का जेणेकरून आम्ही कितीही युक्तिवाद देऊ शकू आणि कोणताही त्रुटी संदेश न येता त्यावर नियंत्रण ठेवू शकू?


In Python sometimes you need arbitrary number of arguments and you have to name them.

पायथनमध्ये, काहीवेळा तुम्हाला मनमानी संख्येने युक्तिवादांची आवश्यकता असते आणि तुम्हाला त्यांची नावे द्यावी लागतात.


In our code, *args or *params mean lists of arguments.

आमच्या कोडमध्ये, *args किंवा *params चा अर्थ युक्तिवादांची सूची आहे.


You can pass any number of arguments through them.

तुम्ही त्यांच्याद्वारे कितीही युक्तिवाद देऊ शकता.


Sometimes it is important to use named arguments in Python.

कधीकधी पायथनमध्ये नावाचे युक्तिवाद वापरणे महत्त्वाचे असते.


As it is a dictionary output, it is not ordered.

हे डिक्शनरी आउटपुट असल्यामुळे, ते क्रमबद्ध नाही.


If you are a complete beginner, you are probably hearing for the first time about “object-oriented programming and class.”

जर तुम्ही नवशिक्या असाल, तर तुम्ही कदाचित पहिल्यांदाच “ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग आणि क्लास” बद्दल ऐकत असाल.


An object is a representation of a real world entity.

ऑब्जेक्ट म्हणजे वास्तविक जगातील घटकाचे प्रतिनिधित्व.


The advantage of object orientation is that when you work on a part of a big, complicated project, the other part remains unaffected.

ऑब्जेक्ट ओरिएंटेशनचा फायदा असा आहे की जेव्हा तुम्ही मोठ्या, गुंतागुंतीच्या प्रकल्पाच्या एका भागावर काम करता, तेव्हा दुसरा भाग अप्रभावित राहतो.


A car object is built of many other objects like tire, wheel, engine, accelerator, etcetera.

कार ऑब्जेक्ट टायर, व्हील, इंजिन, एक्सीलरेटर इत्यादी अनेक ऑब्जेक्ट्सनी बनलेले आहे.


In lists, you can update or add new values quite easily.

यादींमध्ये, तुम्ही सहजपणे नवीन मूल्ये अपडेट किंवा जोडू शकता.


Write down the code below and see the output yourself.

खालील कोड लिहा आणि स्वतः आउटपुट पहा.


Please read the comments that are attached with the code.

कृपया कोडसोबत जोडलेल्या टिप्पण्या वाचा.


आउटपुट यासारखे आहे:


टपल आणि लिस्ट ऑब्जेक्टवर कार्य करणे


Let us open up our terminal and test how tuples and lists work together.

चला, आपला टर्मिनल उघडूया आणि टपल आणि लिस्ट कसे एकत्र काम करतात ते तपासूया.


The more you spend time with tuples, lists, and dictionaries, the more you learn about Python.

तुम्ही टपल, लिस्ट आणि डिक्शनरीसोबत जितका जास्त वेळ घालवाल, तितकेच तुम्ही पायथनबद्दल अधिक शिकाल.


Another key concept of dictionary is "key=>value" pair.

डिक्शनरीची आणखी एक महत्त्वाची संकल्पना म्हणजे "की=>व्हॅल्यू" जोडी.


Database operations in Python are fairly simple.

पायथनमध्ये डेटाबेस ऑपरेशन्स (Database operations) तुलनेने सोपे आहेत.


You can easily maintain it by creating, retrieving and updating and deleting it.

तुम्ही ते तयार करून, पुनर्प्राप्त (retrieving) करून, अपडेट (update) करून आणि हटवून सहजपणे व्यवस्थापित करू शकता.


मूलभूत संज्ञा “CRUD” आहे.


With any database you generally perform these actions.

कोणत्याही डेटाबेसमध्ये, तुम्ही सामान्यतः ह्या क्रिया करता.


चला SQLite3 ने सुरुवात करूया.


There is a large library inside the Python home.

पायथनच्या घरात एक मोठी लायब्ररी आहे.


SQLite3 is good for a small amount of work.

SQLite3 कमी कामासाठी चांगले आहे.


But for a big project, it is better to opt for a database like MySQL.

परंतु मोठ्या प्रकल्पासाठी, MySQL सारखा डेटाबेस निवडणे चांगले.


To work with MySQL in Python3 you need to download and install MySQL connector .

Python3 मध्ये MySQL सोबत काम करण्यासाठी, तुम्हाला MySQL कनेक्टर डाउनलोड आणि स्थापित करणे आवश्यक आहे.


In Windows or Linux, installing PHPMyAdmin is very easy.

विंडोज किंवा लिनक्समध्ये, PHPMyAdmin स्थापित करणे खूप सोपे आहे.


Let us assume that we have a database called “python-mysql”.

असे समजूया की आपल्याकडे “python-mysql” नावाचा डेटाबेस आहे.


असे समजू या की आपल्याकडे दोन वेगवेगळ्या प्रकारची व्यवस्था आहे.


We have a MySQL database and, in addition, we want to create an SQLite connection.

आपल्याकडे MySQL डेटाबेस आहे आणि याव्यतिरिक्त, आम्हाला SQLite कनेक्शन तयार करायचे आहे.


To do that we can write two separate classes and set the connection in the constructor part or initialization method.

ते करण्यासाठी, आपण दोन स्वतंत्र वर्ग लिहू शकतो आणि कनेक्शन कंस्ट्रक्टर विभागात किंवा इनिशियलायझेशन पद्धतीने सेट करू शकतो.


So that when we create an instance, the connection to the database is set up automatically.

जेणेकरून, जेव्हा आपण उदाहरण तयार करतो, तेव्हा डेटाबेसशी कनेक्शन आपोआप सेट होते.


खालील कोड विचारात घ्या:


We create two instances or objects of MyMySQLConnection() and MySQLiteConnection() classes and put them into two separate variables.

आम्ही MyMySQLConnection() आणि MySQLiteConnection() वर्गांची दोन उदाहरणे किंवा ऑब्जेक्ट तयार करतो आणि ती दोन स्वतंत्र व्हेरिएबल्समध्ये ठेवतो.


Connections are being set up and in the output section we see this:

कनेक्शन सेट केले जात आहे आणि आउटपुट विभागात आपण हे पाहतो:


But this is an extremely simple example and written badly.

पण हे अत्यंत सोपे उदाहरण आहे आणि ते वाईटरित्या लिहिले आहे.


We should develop this code so that each instance of MySQLConnection and SQLiteConnection classes can not only connect to the database but also retrieve data from a table.

आम्ही हा कोड अशा प्रकारे विकसित केला पाहिजे की MySQLConnection आणि SQLiteConnection वर्गांचे प्रत्येक उदाहरण केवळ डेटाबेसशी कनेक्ट होऊ शकत नाही, तर टेबलमधून डेटा देखील पुनर्प्राप्त करू शकते.


चला, आपला जुना कोड यासह बदलूया:


We have connected to each database with the initialization process and then apply one verb, “Retrieve()”, to each object.

आम्ही इनिशियलायझेशन प्रक्रियेसह प्रत्येक डेटाबेसशी कनेक्ट केले आहे आणि नंतर प्रत्येक ऑब्जेक्टवर एक क्रियापद, “Retrieve()”, लागू केले आहे.


We have also imported many database modules that you have not learned yet.

आम्ही अनेक डेटाबेस मॉड्यूल्स देखील आयात केले आहेत जे आपण अद्याप शिकलेले नाहीत.


तुम्ही ते योग्य प्रक्रियेत शिकाल.


पण आपला उद्देश सफल झाला आहे.


We create two separate database objects.

आम्ही दोन स्वतंत्र डेटाबेस ऑब्जेक्ट तयार करतो.


One is a MySQL connection object and another is an SQLite connection object.

एक MySQL कनेक्शन ऑब्जेक्ट आहे आणि दुसरा SQLite कनेक्शन ऑब्जेक्ट आहे.


After that, with those objects we are able to retrieve separate data from two different tables.

त्यानंतर, त्या ऑब्जेक्ट्ससह, आम्ही दोन भिन्न टेबल्समधून स्वतंत्र डेटा पुनर्प्राप्त करण्यास सक्षम आहोत.


प्रथम आउटपुट पहा:


The output says, the MySQL database “testdb” has a table called “Employee” and there are several rows like name, sex, salary, etc.

आउटपुट असे दर्शवते की, MySQL डेटाबेस “testdb” मध्ये “Employee” नावाचे टेबल आहे आणि त्यात नाव, लिंग, वेतन इत्यादी अनेक ओळी आहेत.


Second, we have an SQLite3 database “test1” which has a table called “test1” which has many rows that contain few names.

दुसरे म्हणजे, आपल्याकडे SQLite3 डेटाबेस “test1” आहे ज्यामध्ये “test1” नावाचे टेबल आहे, ज्यामध्ये अनेक ओळी आहेत ज्यात काही नावे आहेत.


The Python script checks the Python version and operating system details.

हा पायथन स्क्रिप्ट पायथनची आवृत्ती आणि ऑपरेटिंग सिस्टमची माहिती तपासते.


The output shows the Python version and the environment path in a Linux system.

आउटपुटमध्ये लिनक्स प्रणालीतील पायथनची आवृत्ती आणि वातावरणाचा मार्ग दर्शविला आहे.


The script also fetches and displays the content of a webpage.

स्क्रिप्ट वेबपेजची सामग्री देखील मिळवते आणि प्रदर्शित करते.


The output differs when the same code is run on a Windows system.

हीच कोड विंडोज प्रणालीवर चालवल्यास आउटपुट वेगळे येते.


The 'random' and 'datetime' modules are added to the code.

'random' आणि 'datetime' मॉड्यूल कोडमध्ये जोडले जातात.


The 'random' module generates new numbers each time the code is run.

'random' मॉड्यूल कोड चालवल्यास प्रत्येक वेळी नवीन संख्या तयार करते.


The 'datetime' module provides the current date and time.

'datetime' मॉड्यूल वर्तमान तारीख आणि वेळ प्रदान करते.


You can explore the Python Standard Library for more module examples.

तुम्ही अधिक मॉड्यूल उदाहरणांसाठी पायथन स्टँडर्ड लायब्ररी तपासू शकता.


The unittest module helps in debugging and testing code.

युनिटटेस्ट मॉड्यूल कोडमध्ये डीबगिंग आणि टेस्टिंगमध्ये मदत करते.


The example shows how to use the unittest module.

उदाहरण युनिटटेस्ट मॉड्यूल कसे वापरावे हे दर्शवते.


The unittest module checks if the code passes or fails.

युनिटटेस्ट मॉड्यूल कोड पास होतो की नाही हे तपासते.


The output of the unittest module indicates whether the tests are successful.

युनिटटेस्ट मॉड्यूलचे आउटपुट दर्शवते की टेस्ट यशस्वी झाली आहे की नाही.


The socket and networking concepts are useful for ethical hacking.

सॉकेट आणि नेटवर्किंग संकल्पना नैतिक हैकिंगसाठी उपयुक्त आहेत.


The code uses the socket module to get the host address.

कोड होस्टचा पत्ता मिळवण्यासाठी सॉकेट मॉड्यूल वापरतो.


Nmap is a security scanner used to discover hosts and services.

एनमॅप (Nmap) हे सुरक्षा स्कॅनर आहे जे होस्ट आणि सेवा शोधण्यासाठी वापरले जाते.


Nmap creates a map of the network by finding hosts and services.

एनमॅप होस्ट आणि सेवा शोधून नेटवर्कचा नकाशा तयार करते.


Nmap is an essential tool for ethical hackers.

एनमॅप नैतिक हैकर्ससाठी एक आवश्यक साधन आहे.


The script uses the Nmap module to scan a network.

स्क्रिप्ट नेटवर्क स्कॅन करण्यासाठी एनमॅप मॉड्यूल वापरते.


The output of the script shows open ports and their services.

स्क्रिप्टचे आउटपुट खुले पोर्ट आणि त्यांच्या सेवा दर्शवते.


Ethical hackers need to stay anonymous to protect their identity.

नैतिक हैकर्सनी त्यांची ओळख सुरक्षित ठेवण्यासाठी अज्ञात राहणे आवश्यक आहे.


Using proxy, you may want to log into some server.

प्रॉक्सी वापरून, तुम्हाला काही सर्व्हरमध्ये लॉग इन करायचे असेल.


Once you have typed in your password, it could be hijacked.

एकदा तुम्ही तुमचा पासवर्ड टाकला की, तो हायजॅक केला जाऊ शकतो.


तुम्ही ही समस्या कशी सोडवू शकता?


एक शब्द आहे: “VPN.”


You’ve probably heard of “virtual private network ."

तुम्ही कदाचित “व्हर्च्युअल प्रायव्हेट नेटवर्क” बद्दल ऐकले असेल.


It is basically a kind of service that you are using for encrypting your traffic.

हे मूलतः एक प्रकारची सेवा आहे जी तुम्ही तुमच्या डेटाचे एन्क्रिप्शन करण्यासाठी वापरत आहात.


आणि ते खूप जलद आहे.


In the future, when you work as a professional, you have to hire a VPN service.

भविष्यात, जेव्हा तुम्ही व्यावसायिक म्हणून काम कराल, तेव्हा तुम्हाला VPN सेवा भाड्याने घ्यावी लागेल.


ते फारसे खर्चिक नाही.


For the time being we could do it for free, just for educational purposes.

सध्या, आपण ते विनामूल्य करू शकतो, फक्त शैक्षणिक कारणांसाठी.


But once you encrypt your traffic through VPN , it is recognizable.

पण एकदा तुम्ही VPN द्वारे तुमचा डेटा एन्क्रिप्ट केला की, तो ओळखला जातो.


What happens if an agency asks the service providers for your data?

एखादी एजन्सी सेवा पुरवठादारांना तुमचा डेटा विचारल्यास काय होते?


Normally, to avoid that you need to be choosy.

सर्वसाधारणपणे, ते टाळण्यासाठी, तुम्हाला निवडक असणे आवश्यक आहे.


You need to hire a service from a certain part of the world where privacy is strictly maintained.

तुम्हाला जगाच्या अशा भागातून सेवा भाड्याने घेण्याची आवश्यकता आहे जिथे गोपनीयतेचे काटेकोरपणे पालन केले जाते.


But after saying that and hoping for the best, I’d definitely not recommend you to do your white hat ethical hacking using proxies or VPNs.

परंतु हे बोलून आणि चांगल्या गोष्टीची अपेक्षा करून, मी तुम्हाला प्रॉक्सी किंवा VPN वापरून तुमचे व्हाईट हॅट नैतिक हॅकिंग (ethical hacking) करण्याची शिफारस निश्चितपणे करणार नाही.


Basically, you may want to do that for bypassing the firewall setting or that sort of thing.

मूलतः, तुम्हाला फायरवॉल सेटिंग किंवा तत्सम गोष्टींना बायपास करण्यासाठी ते करायचे असेल.


Besides, some VPN services don’t allow IP addresses to use their services beyond a range.

याशिवाय, काही VPN सेवा IP ऍड्रेसना त्यांच्या सेवा एका विशिष्ट मर्यादेपलीकडे वापरण्याची परवानगी देत नाहीत.


Suppose your IP address belongs outside of that range.

समजा तुमचा IP ऍड्रेस त्या मर्यादेच्या बाहेरचा आहे.


But people often use proxies or VPNs—not always for doing something malicious like taking down a server or stealing data.

परंतु लोक अनेकदा प्रॉक्सी किंवा VPN वापरतात— नेहमीच सर्व्हर बंद करणे किंवा डेटा चोरणे यासारखे दुर्भावनापूर्ण कृत्य करण्यासाठी नाही.


This is Kali Linux virtual machine’s MAC address or local network card address.

हे काली लिनक्स व्हर्च्युअल मशीनचा MAC ऍड्रेस किंवा लोकल नेटवर्क कार्ड ऍड्रेस आहे.


They are network cards. They could be Ethernet cards, wireless cards, wireless adapters, etcetera.

ते नेटवर्क कार्ड आहेत. ते इथरनेट कार्ड, वायरलेस कार्ड, वायरलेस ऍडॉप्टर इत्यादी असू शकतात.


But this address is extremely important, as it is used to identify you in the vast web world.

परंतु हा पत्ता अत्यंत महत्त्वाचा आहे, कारण त्याचा उपयोग तुम्हाला विशाल वेब जगात ओळखण्यासाठी केला जातो.


The first three digits are the symbols that represent the manufacturer.

पहिले तीन अंक हे उत्पादकाचे प्रतिनिधित्व करणारे प्रतीक आहेत.


We can check it out here also by issuing this command: root@kali:# macchanger -s eth0

आम्ही हे खालील कमांड वापरून येथे तपासू शकतो: root@kali:# macchanger -s eth0


As you see, it shows two MAC address—one is current and the other is permanent.

तुम्ही पाहू शकता की, ते दोन MAC पत्ते दर्शवते - एक वर्तमान आणि दुसरा कायमस्वरूपी.


It means when you have changed the MAC address and issued the “ifconfig ” command, it only show the changed one, not the permanent one.

याचा अर्थ असा आहे की, जेव्हा तुम्ही MAC ऍड्रेस बदलला आहे आणि “ifconfig ” कमांड दिली आहे, तेव्हा ते फक्त बदललेला ऍड्रेस दर्शवते, कायमस्वरूपी नाही.


Now we’d like to change our MAC address.

आता, आम्हाला आमचा MAC ऍड्रेस बदलायचा आहे.


Let us issue this command: root@kali:# macchanger –h

चला, ही कमांड देऊया: root@kali:# macchanger –h


The three red-colored lines are important.

लाल रंगाच्या तीन ओळी महत्त्वाच्या आहेत.


It is explicitly defined what they mean.

त्यांचा अर्थ काय आहे हे स्पष्टपणे परिभाषित केले आहे.


The green colored line is also important.

हिरव्या रंगाची ओळ देखील महत्त्वाची आहे.


The first two lines— -a, --another Set random vendor MAC of the same kind -A Set random vendor MAC of any kind —mean you can change the MAC address but you can’t change the vendor.

पहिल्या दोन ओळी -a, --another समान प्रकारचा रँडम विक्रेता MAC सेट करा -A कोणताही रँडम विक्रेता MAC सेट करा - याचा अर्थ असा आहे की तुम्ही MAC ऍड्रेस बदलू शकता, परंतु विक्रेता बदलू शकत नाही.


In this case, there is every possibility of losing your anonymity.

या स्थितीत, तुमची गोपनीयता गमावण्याची पूर्ण शक्यता आहे.


The first three sets belong to the net card manufacturer and, since that has not been changed, you can be identified.

पहिला तीन सेट नेट कार्ड उत्पादकाशी संबंधित आहेत आणि ते बदललेले नसल्यामुळे, तुम्हाला ओळखले जाऊ शकते.


So far, the best option available for us is the green colored line— -r, -- random Set fully random MAC—where it is clearly said that you can set fully random MAC.

आतापर्यंत, आपल्यासाठी उपलब्ध असलेला सर्वोत्तम पर्याय म्हणजे हिरव्या रंगाची ओळ -r, -- random पूर्णपणे यादृच्छिक MAC सेट करा - जिथे स्पष्टपणे सांगितले आहे की तुम्ही पूर्णपणे यादृच्छिक MAC सेट करू शकता.


That is, the six sets are completely random—which we prefer.

म्हणजे, सहा सेट पूर्णपणे यादृच्छिक आहेत - जे आम्हाला आवडतात.


The most important of them is the last blue-colored line.

त्यापैकी सर्वात महत्त्वाची म्हणजे शेवटची निळ्या रंगाची ओळ.


Why is it important? It is because you can change the MAC address completely.

ते महत्त्वाचे का आहे? कारण तुम्ही MAC ऍड्रेस पूर्णपणे बदलू शकता.


We can have a list of all vendors with a simple command: l.

आपण एका साध्या कमांडने सर्व विक्रेत्यांची यादी मिळवू शकतो: l.