بلاگ ها

لیست تمامی بلاگ ها
آموزش استفاده از FileZilla

آموزش استفاده از FileZilla

آموزش استفاده از FileZillaدر مقاله های قبل به آموزش ساخت اکانت FTP در cPanel پرداختیم. حال در این مقاله به معرفی نرم افزار FileZilla و آموزش استفاده از FileZilla میپردازیم.نحوه ی استفاده از نسخه ی کلاینت FileZillaدر ابتدا باید نرم افزار FileZilla را دانلود و بر روی رایانه نصب کنیم.پس ابتدا به سایت زیر میرویم و نسخه ی کلاینت را انتخاب میکنیم.Filezilla-Project.orgپس از انتخاب گزینه ی کلاینت. در صفحه ی بعد نسخه ی مورد نظر رایانه ی خودمان را انتخاب میکنیم. و همانطور که مشخص است. این نرم افزار انواع سیستم عامل ها را پشتیبانی می کند.خب. بعد از دانلود این برنامه و نصب آن با پنجره ای شبیه به تصویر زیر روبرو می شویم .اطلاعات کاربری FTP را باید در نرم افزار وارد کنیم. از جمله نام کاربری و پسورد و هاست مورد نظر و در نهایت بر روی Quickconnect کلیک میکنیم.همانطور که مشاهده می کنید به سایت مورد نظر تحت پروتوکل FTP متصل شدیم.مدیریت فایل هادر اینجا ما میتوانیم فایل ها و پوشه های خود را مدیریت کنیم.ایجاد پوشهبرای ایجاد پوشه یا همان دایرکتوری به روش زیر عمل میکنیم.بر روی Create directory کلیک میکنیم.نام پوشه یا فولدر مورد نظر را وارد میکنیم.اتقال فایلخب در اینجا بر میخواهیم فایلی را از رایانه ی خود به سایتمورد نظر با استفاده از این نرم افزار منتقل کنیم.بر روی فایل مورد نظر در رایانه ی خودمان کلیک کرده و بر روی Upload کلیک میکنیم.ویرایش فایلخب در این قسمت هدف ما ویرایش فایل است.بر روی فیال مورد نظر بر روی فایل روی سایت مورد نظر کلیک راست کرده و گزینه ی View/Edit را انتخاب می کنیم.پس از اعمال تغییرات آن را ذخیره میکنیم.جمع بندیخب ما در این مقاله به آموزش استفاده از FileZilla پرداختیم و با چگونگی ایجاد فولدر و فایل و در نهایت با ویرایش فایل آشنا شدیم.

ادامه مطلب
مقدمه ای بر IPtables

مقدمه ای بر IPtables

Iptables چیست؟Iptable یک فایروال داخلی لینوکس است که در آن شروطی دارد تحت عنوان رول ها (rules) . که عبور و مرور ترافیک یا پکت ها با توجه به این رول ها مجاز است. این فایروال ترافیک ورودی و خروجی را کنترل می کند و آن را طبق قوانین مشخص فیلتر می کند.دیتا های ورودی و خروجی به صورت بسته یا پکت انتقال می یابد. لینوکس رابط یا اینترفیسی برای فیلتر کردن این بسته ها فراهم می کند. در اینجا ، Iptables وارد جریان می شود ، که یک ابزار خط فرمان برای تنظیم و پیکربندی فایروال است. Iptables دارای جدول هایی برای فیلتر کردن پکت ها است. این جداول حاوی چندین زنجیره یا chain هستند که حاوی رول هایی برای تنظیم رول ها هستند.رول ها و اهداف در iptablesرول ها تعریف می کند که اگر بسته با هر رول مشخصی مطابقت داشته باشد ، چه باید کرد. اگر رول مطابقت داشته باشد ، هدفی را تعریف می کند که می تواند زنجیره یا chain دیگری باشد یا مقادیر خاص ذکر شده در زیر:ACCEPT : این بدان معناست که پکت اجازه عبور از فایروال را دارد.DROP: این بدان معناست که پکت اجازه عبور از فایروال را ندارد.RETURN: این بدان معناست که از رول فعلی صرف نظر کرده و دوباره به chain ای که از آن فراخوانده شده است بپرد.5 جدول داخلی در Iptabales وجود دارد که عبارت اند از filter و nat و mangle و raw و security. که در این آموزش ما فقط بر روی جدول داخلی filter تمرکز میکنیم.جدول filterجدول فیلتر برای فیلتر عادی ترافیک براساس قوانین تعریف شده توسط کاربر استفاده می شود. این جدول برای انجام مسدود کردن و فیلتر کردن بسته های نرم افزاری روزمره بسیار مفید است. جدول فیلتر دارای سه چین است:INPUT: این چین برای کنترل ترافیک / پکت های ورودی به سرور استفاده می شود.FORWARD: این chain برای فیلتر کردن بسته هایی است که به سرور وارد می شوند اما قرار است در جای دیگری ارسال شوند استفاده میشود.OUTPUT: از این chain برای فیلتر کردن پکت هایی که قرار است از سرور خارج شود مورد استفاده قرار میگیرد.در زیر تصویر مربوط به chain جدول فیلتر آمده است.کار با دستورات Iptablesراه اندازیبا استفاده از دستور Iptables نسخه ی آن را بررسی میکنیم:iptables --versionبرای نمونه ما فرض میکنیم که Iptables نصب نیست. با استفاده از دستورات زیر آن را نصب میکنیم:sudo apt-get updatesudo apt-get install iptablesبرای نمایش جدول filter که درواقع جدول پیشفرض Iptables است از دستور زیر استفاده میکنیم:sudo iptables -L این خروجی زیر را نشان می دهد که اساساً یک جدول فیلتر خالی است:Chain INPUT (policy ACCEPT)target prot opt source destination Chain FORWARD (policy ACCEPT)target prot opt source destination Chain OUTPUT (policy ACCEPT)target prot opt source destination در اینجا ، INPUT ، OUTPUT و FORWARD زنجیره یا چین هایی هستند که شامل قوانین پیکربندی فایروال هستند. هر فایروال یک خط مشی پیش فرض دارد که به عنوان (policy ACCEPT) ذکر شده است. خط مشی پیش فرض برای یک chain ، هدف پیش فرض آن دسته از پکت ها را که با هیچ قاعده آن چین مطابقت ندارند مشخص می کند. برای مثال: خط مشی پیش فرض برای chain ، ورودی ACCEPT است ، به این معنی که هر بسته ورودی توسط فایروال پذیرفته می شود.در صورتی که می خواهید فقط از خط مشی پیش فرض جداول بدانید ، می توان از دستور زیر استفاده کرد:sudo ifconfig [ -S/--list-rules ]در صورتی که بخواهیم خط مشی پیشفرض (default policy) جدول را تغییر بدهیم از دستور زیر استفاده میکنیم:sudo iptables -P <chain> <target>در اینجا ، برای مثال ، اگر سیاست پیش فرض چین INPUT را با استفاده از دستور sudo iptables -P INPUT DROP به DROP تغییر دهیم ، هیچ کس نمی تواند با ما ارتباط برقرار کند زیرا همه بسته های داده توسط فایروال حذف می شوند.تغییر دادن رول ها در Iptablesبرای اضافه کردن یک قانون خاص در داخل هر chain ای. ابتدا دستور را پوشش خواهیم داد ، و سپس برخی از موارد برای همان مورد استفاده می شود.sudo iptables [ -A|-S ] <chain> -t <table> -p <protocol> -s<source ip> -d<destination-ip> --sport <source-port> --dport<destination-port> -j<target> -i<input-interface> -o<output-interface>در دستور بالا ، از چندین flag استفاده شد. هر یک از آنها و در صورت نیاز به آنها توضیح خواهیم داد.-A: برای ضمیمه یک قانون در انتهای جدول استفاده می شود-S: برای درج رول در موقعیت مشخص شده در جدول استفاده می شود. اگر موقعیت مشخص نشده باشد ، این رول را به بالاترین موقعیت اضافه می کند.-t: برای دادن نام جدول استفاده می شود. به طور پیش فرض ، این جدول فیلتر است.-p: برای تعیین پروتکل استفاده می شود. می تواند tcp ، udp ، icmp یا همه باشد.-s: برای مشخص کردن منبعی از پکت ها استفاده می شود. عمدتا برای استفاده از یک قانون در چین INPUT برای هر آدرس IP خاص استفاده می شود.-d: برای تعیین مقصد تحویل پکت ها استفاده می شود. عمدتا برای استفاده از یک قانون در چین OUTPUT برای آدرس IP خاص مقصد استفاده می شود.--sport & --dport: اگر این قاعده روی پروتکل tcp اعمال شود ، از این دستور به ترتیب برای مشخص کردن پورت مبدا و مقصد استفاده می شود.-j: برای مشخص کردن هدف مورد استفاده در قانون منطبق استفاده می شود. می تواند ACCEPT ، REJECT ، DROP و غیره باشد.-i: رابط ورودی (Input-interface) - برای مشخص کردن نام واینترفیسی که از طریق آن پکت ای دریافت می شود ، استفاده می شود.-j: رابط خروجی (Output-interface) - برای مشخص کردن نام اینترفیسیی که از طریق آن بسته ای ارسال می شود ، استفاده می شود.اضافه کردن رول در Iptablesبرای مسدود کردن یک وب سایت خاص ، مثلا فیس بوک ، به طوری که از سرور شما نمی توان به آن دسترسی داشته باشد.sudo iptables -I INPUT -t filter -s www.facebook.com -j DROPبرای مسدود کردن هر پکت از آدرس IP در اینترنت ، فرض کنید 192.168.0.107sudo iptables -I INPUT -t filter -s 192.168.0.107 -j DROPبرای مسدود کردن آدرس لوپ بک ، یعنی localhost 127.0.0.1sudo iptables -A INPUT -i lo -j DROPبرای غیرفعال کردن هر پورت از سرور ، فرض کنید نمی خواهید به کسی اجازه دهید ssh را روی سیستم شما انجام دهد ، پس باید پورت 22 را مسدود کنید ، این کار به صورت زیر انجام می دهیم:sudo iptables -A INPUT -t filter -p tcp --dport 22 -j DROPما همچنین می توانیم هدف را روی ALLOW یا DROP بسته های داده از پورت های دیگر تنظیم کنیم ، مانند اینکه برای مسدود کردن http و https ، باید پورت منبع 80 و 443 را مسدود کنیم:sudo iptables -A INPUT -t filter -p tcp --sport 80 -j DROPsudo iptables -A INPUT -t filter -p tcp --sport 443 -j DROPحذف رول ها در Iptablesبرای حذف یک قانون خاص توسط شماره خط آن:sudo iptables -D <chain> <line-number>برای حذف تمامی رول ها در یک chain خاص :sudo iptables -F <chain>برای حذف همه رول ها یا قوانین از iptables :sudo iptables -F/--flushاکنون ، برای دریافت خروجی هر دستوری با اطلاعات بیشتر ، می توانید آن را در حالت دراز نویس یا verbose mode اجرا کنید:sudo iptables -L -vجمع بندیدر این آموزش که اولین سری از آموزش های فایروال است ما به بررسی مقدماتی Iptables پرداختیم. در آموزش های بعدی به طور مفصل به بحث فایروال خواهیم پرداخت.

ادامه مطلب
نصب FTP سرور در لینوکس

نصب FTP سرور در لینوکس

در این آموزش به نحوه ی نصب FTP Server در لینوکس میپردازیم. اما ابتدا مقدمه ای کوتاه بر FTP داشته باشیم.FTP چیست؟FTP مخفف File Transfer Protocol است. و همچنین همانطور که از نام آن پیداست برای انتقال فایل ها درون شبکه استفاده میشود.

ادامه مطلب
John the Ripper

John the Ripper

We know the importance of John the ripper in penetration testing, as it is quite popular among password cracking tool. In this article, we are introducing John the ripper and its various usage for beginners.What is John the Ripper?John the Ripper is a free password cracking software tool developed by Openwall. Originally developed for Unix Operating Systems but later on developed for other platforms as well. It is one of the most popular password testings and breaking programs as it combines a number of password crackers into one package, autodetects password hash types, and includes a customizable cracker. It can be run against various encrypted password formats including several crypt password hash types commonly found in Linux or  Windows. It can also be to crack passwords of Compressed files like ZIP and also Documents files like PDF.John the Ripper comes pre-installed in Linux Kali and can be run from the terminal as shown belowJohn the Ripper works in 3 distinct modes to crack the passwordsSingle Crack ModeWordlist Crack ModeIncremental ModeJohn the Ripper Single Crack ModeIn this mode John the ripper makes use of the information available to it in the form of a username and other information. This can be used to crack the password files with the format ofUsername:PasswordFor Example: If the username is “Hacker” it would try the following passwordshackerHACKERhacker1h-ackerhacker=We can use john the ripper in Single Crack Mode as followsHere we have a text file named crack.txt containing the username and password, where the password is encrypted in SHA1 encryption so to crack this password we will usejohn --single --format=raw-sha1 crack.txtAs you can see in the screenshot that we have successfully cracked the passwordUsername: ignitePassword: IgNiTeJohn the Ripper Wordlist Crack ModeIn this mode John the ripper uses a wordlist that can also be called a Dictionary and it compares the hashes of the words present in the Dictionary with the password hash. We can use any desired wordlist. John also comes in build with a password.lst which contains most of the common passwords.Let’s see how John the Ripper cracks passwords in Wordlist Crack Mode:Here we have a text file named crack.txt containing the username and password, where the password is encrypted in SHA1 encryption so to crack this password we will use:john --wordlist=/usr/share/john/password.lst --format=raw-sha1 crack.txtAs you can see in the screenshot, john the Ripper have cracked our password to be asdfasdfCracking the User CredentialsWe are going to demonstrate two ways in which we will crack the user credentials of a Linux user.Before that we will have to understand, what is a shadow file?In the Linux operating system, a shadow password file is a system file in which encrypted user password is stored so that they are not available to the people who try to break into the system. It is located at /etc/shadow.First MethodNow, for the first method, we will crack the credentials of a particular user “pavan”.Now to do this First we will open the shadow file as shown in the image.And we will find the credentials of the user pavan and copy it from here and paste it into a text file. Here we have the file named crack.txt.john crack.txtAs you can see in the image below that john the ripper has successfully cracked the password for the user pavan.Second MethodNow, for the second method, we will collectively crack the credentials for all the users.To do this we will have to use John the ripper utility called “unshadow”.unshadow /etc/passwd /etc/shadow > crack.txtHere the unshadow command is combining the /etc/passwd and /etc/shadow files so that John can use them to crack them. We are using both files so that John can use the information provided to efficiently crack the credentials of all users.Here is how the crack file looks after unshadow command.Now we will use john to crack the user credentials of all the users collectively.john --wordlist=/usr/share/john/password.lst crack.txtAs you can see from the provided image that we have discovered the following credentials:UserPassword Raj 123 PavanAsdfasdf Ignite YellowStopping and Restoring CrackingWhile John the ripper is working on cracking some passwords we can interrupt or pause the cracking and Restore or Resume the Cracking again at our convenience.So while John the Ripper is running you can interrupt the cracking by Pressing “q” or Crtl+C as shown in the given image.Now to resume or restore the cracking process we will use the –restore option of John the ripper as shown :john --restoreNow we will decrypt various hashes using John the RipperSHA1To decrypt SHA1 encryption we will use RockYou as wordlist and crack the password as shown below:john --wordlist=/usr/share/wordlists/rockyou.txt --format=raw-sha1 crack.txtAs you can see in the given image that we have the username pavan and password as HackerMD5To decrypt MD5 encryption we will use RockYou as wordlist and crack the password as shown below:john --wordlist=/usr/share/wordlists/rockyou.txt --format=raw-md5 rack.txtAs you can see in the given screenshot that we have the username pavan and password as P@ssword.View All FormatsJohn the Ripper supports much encryption some of which we showed above. To view all the formats it supports:john --list=formatsHope,  you can take reference of this article while using John the ripper, More on John the Ripper will be in the Next Part.Abbreviating the OptionsWe don’t have to type complete option every time we use john the ripper, Developers have given users the option to abbreviate the options like–single can be written as -si–format can be written as -formShown below is an example of how to use these abbreviations.john -si crack.txt -form=raw-md5Another abbreviation we can use is:–wordlist can be written as -wjohn -w=/usr/share/wordlists/rockyou.txt crack.txt -form=raw-md5

ادامه مطلب
What is Warez VPS?

What is Warez VPS?

What is Warez VPS? Hacking through a company’s security protections used to require a lot of time and skill. However, today’s technological advances make it easier than ever for bad actors to find an organization’s most vulnerable points. The purpose of penetration testing is to help businesses find out where they are most likely to face an attack and proactively shore up those weaknesses before exploitation by hackers.We can figure out the vulnerabilities of a computer system, a web application or a network through penetration testing.A penetration test tells whether the existing defensive measures employed on the system are strong enough to prevent any security breaches. Penetration test reports also suggest the countermeasures that can be taken to reduce the risk of the system being hacked.Warez are often distributed outside of The Scene (a collection of warez groups) by torrents uploaded to a popular P2P website by an associate or friend of the cracker or cracking crew. also with warez servers we can use Programs designed to perform specific hacks at the click of a button, typically with a limited scope, such as AOHell and AOL4Free and application : Generally a retail version of a software packageCracked applications: A modified executable or more (usually one) and/or a library (usually one) or more and/or a patch designed to turn a trial version of a software package into the full version and/or bypass copy protections.Keygen software are tools that replicate the registration/activation process of a genuine software product and generate the necessary keys to activate the software.Scripts: These include unlicensed copies of commercial scripts (such as vBulletin, Invision Power Board, etc.) coded by companies in PHP, ASP, and other languages.Refers to a collection of keys such as serial numbers made available for the purpose of activating trial software, without payment.In summaryWe use it to hack and crack and perform penetration testing on servers and websites, as well as to do such things that we can not do on other servers.Warez VPSwhat's a VPS? Well, it stands for virtual private server and is a virtualized server that a lot of users perceive as a dedicated or private server even though it is installed on a physical computer running multiple operating systems simultaneously. VPSs are most commonly used for hosting websites online.When we purchase a VPS from a provider, we're in essence "renting" a partition on a powerful high-performance physical machine which houses many virtual servers. Each VPS is connected to the internet, grants individual customers the ability to use different operating systems, and gives full root access to the operating systems. Each customer (or server administrator) operates independently of other customers sharing the physical computer provided by the VPS company.Essentially, a virtual private server is a computer we can control remotely from any internet-connected device in the world. This gives us a lot of power. From a remote server, these are just a few of the things that can be done:create VPN connectionshost phishing sitesperform brute-force attackscreate IRC botsserver proxieshost payloadsuse port scannerscreate honeypotshost Metasploit sessionsScan IPs and portsFootprinting and ReconnaissanceScanning NetworksEnumerationVulnerability AnalysisSystem HackingMalware ThreatsSniffingSocial EngineeringDenial of ServiceSession HijackingEvading IDS Firewalls and HoneypotsHacking Web ServersHacking Web ApplicationsSQL InjectionHacking Mobile PlatformsCloud ComputingCryptographyWhat is Kali LinuxKali Linux is a Debian-based Linux distribution. It is a meticulously crafted OS that specifically caters to the likes of network analysts & penetration testers. The presence of a plethora of tools that come pre-installed with Kali transforms it into an ethical hacker’s swiss-knife. Previously known as Backtrack, Kali Linux advertises itself as a more polished successor with more testing-centric tools, unlike Backtrack which had multiple tools that would serve the same purpose, in turn, making it jampacked with unnecessary utilities. This makes ethical hacking using Kali Linux a simplified task.Why Use Kali LinuxAs free as it can get — Kali Linux has been and will always be free to use.More tools than you could think of — Kali Linux comes with over 600 different penetration testing and security analytics related tool.Open-source — Kali, being a member of the Linux family, follows the widely appreciated open-source model. Their development tree is publicly viewable on Git and all of the code is available for your tweaking purposes.Multi-language Support — Although penetration tools tend to be written in English, it has been ensured that Kali includes true multilingual support, allowing more users to operate in their native language and locate the tools they need for the job.Completely customizable — The developers at offensive security understand that not everyone will agree with their design model, so they have made it as easy as possible for the more adventurous user to customize  Kali Linux to their liking, all the way down to the kernel.Some hacking tools for scanningComodo cWatchOpenVASNexpose CommunityNiktoTripwire IP360WiresharkAircrackNessus ProfessionalRetina CS CommunityNmapMasscanHydraSQLMap

ادامه مطلب
آموزش نصب پایتون 3.9 در اوبونتو 20.04 Ubuntu

آموزش نصب پایتون 3.9 در اوبونتو 20.04 Ubuntu

آموزش نصب پایتون 3.9 در اوبونتو 20.04 Ubuntuزبان پایتون یکی از محبوب ترین زبان های برنامه نویسی جهان است. این یک زبان همه کاره است که برای ساخت انواع برنامه ها ، از اسکریپت های ساده گرفته تا الگوریتم های پیچیده یادگیری ماشین استفاده می شود. پایتون با نحوی ساده و آسان برای یادگیری ، گزینه ای محبوب برای مبتدیان و توسعه دهندگان باتجربه است. در این مقاله آموزش نصب پایتون 3.9 در اوبونتو 20.04 Ubuntu را به شما آموزش خواهیم داد.Python 3.9 آخرین نسخه اصلی انتشار زبان Python است. این شامل بسیاری از ویژگی های جدید مانند اپراتورهای جدید جدید ، توابع جدید str ، پشتیبانی از منطقه زمانی IANA و موارد دیگر است .پایتون 3.9 در مخازن استاندارد اوبونتو 20.04 موجود نیست.در این مقاله ، ما دو روش برای نصب پایتون 3.9 در اوبونتو 20.04 به شما نشان خواهیم داد. اولین گزینه نصب بسته از deadsnakes PPA است و گزینه دوم ساخت پایتون 3.9 از کد منبع است.مراحل مشابهی برای اوبونتو 18.04 و همه توزیع های مبتنی بر اوبونتو از جمله Kubuntu ، Linux Mint و Elementary OS اعمال می شود.نصب پایتون 3.9 در اوبونتو با Aptنصب پایتون 3.9 در اوبونتو با apt یک روند نسبتاً ساده است و انجام آن فقط چند دقیقه طول می کشد.لیست بسته ها را به روز کنید و پیش نیازها را نصب کنید:sudo apt updatesudo apt install software-properties-commondeadsnakes PPA را به لیست منابع سیستم خود اضافه کنید:sudo add-apt-repository ppa:deadsnakes/ppaوقتی از شما خواسته شد ، [Enter]برای ادامه فشار دهید .پس از فعال شدن مخزن ، می توانید با اجرای Python 3.9 نصب کنید:sudo apt install python3.9با تایپ کردن تأیید کنید که نصب با موفقیت انجام شده است:python3.9 --versionخروجی:Python 3.9.0+Python 3.9 روی اوبونتو نصب شده است و می توانید از آن استفاده کنید.نصب پایتون 3.9 در اوبونتو 20.04 از منبعکامپایل پایتون از منبع به شما امکان می دهد جدیدترین نسخه پایتون را نصب کرده و گزینه های ساخت را شخصی سازی کنید. با این حال ، شما نمی توانید نصب Python خود را از طریق apt حفظ کنید .مراحل زیر نحوه تدوین پایتون 3.9 از منبع را توضیح می دهد:وابستگی های لازم برای ساخت پایتون را نصب کنید:sudo apt updatesudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev wget libbz2-devکد منبع آخرین نسخه را از صفحه بارگیری پایتون بارگیری کنید:wget https://www.python.org/ftp/python/3.9.0/Python-3.9.0.tgzپس از اتمام بارگیری ، بایگانی gzipped را استخراج کنید :tar -xf Python-3.9.0.tgzسوئیچ را به دایرکتوری منبع پایتون و اجرای اسکریپت configure، که به انجام تعدادی از چک کنید تا مطمئن شوید همه از وابستگی بر روی سیستم شما وجود دارد:cd Python-3.9.0./configure --enable-optimizationsگزینه --enable-optimizations با اجرای چندین آزمایش باینری پایتون را بهینه می کند. این روند ساخت را کندتر می کند.روند ساخت Python 3.9 را شروع کنید:make -j 12برای زمان ساخت سریعتر ، -jمتناسب با تعداد هسته پردازنده خود را اصلاح کنید. با تایپ کردن nproc می توانید تعداد هسته را پیدا کنید .وقتی مراحل ساخت کامل شد ، باینرهای پایتون را با تایپ کردن دستور زیر نصب کنید:sudo make altinstallما از altinstall بجای tinstall استفاده می کنیم زیرا بعداً سیستم پیش فرض python3 binary را بازنویسی می کند. Python 3.9 نصب شده و آماده استفاده است. برای تأیید آن ، تایپ کنید:python3.9 --versionخروجی:Python 3.9.0+نتیجهما به شما آموزش نصب پایتون 3.9 در اوبونتو 20.04 Ubuntu را نشان داده ایم. اکنون می توانید توسعه پروژه Python 3.9 خود را شروع کنید.در مرحله بعدی ، می توانید در مورد نحوه استفاده از Pip را مطالعه کنید.

ادامه مطلب
Masscan tutorial

Masscan tutorial

?What is MasscanMasscan is a network port scanner, similar in many ways to the well-known Nmap command. The goal of Masscan, however, is to enable security researchers to run port scans on large swathes of the Internet as quickly as possible.Port scanners are among the most important tools in a researcher’s toolset. They can offer us the quickest way to detect running apps and services on remote open ports. And Masscan can be used for both defensive and offensive investigations.Main featuresScalable: Probably the most important feature of Masscan is its ability to transmit up to 10 million packets per second through its asynchronous architecture.Portability: The software can be compiled and run on all three major operating systems: Windows, MacOS and Linux.Banner checking: Apart from merely performing port scans, the tool can also complete TCP connections to fetch basic banner information.Nmap Compatibility: Masscan was developed with the goal of making the tool’s usage and output as similar to Nmap’s as possible. This enables users to translate their Nmap knowledge quickly.Although there is a lot of Nmap compatibility, there are a couple of differences worth mentioning that separate Masscan from Nmap:There are no default ports to scan with MasscanMasscan only supports IP addresses and simple ranges (while Nmap supports DNS names too)Who is Masscan forMasscan is useful for red teamers doing offensive research (like penetration testing) as well as blue teamers and IT managers doing defensive research (like finding attack vectors within their network).Masscan is also useful for both beginners and advanced users. It isn’t difficult to use and provides valuable functionality for researchers performing larger investigations.InstallationNow we’ll cover Linux and MacOS installation procedure for Masscan. Did you know that using a virtual server and a dedicated server to hack and test penetration in most data centers is not allowed and will cause the server to be blocked? But what is the solution to this problem? You need a warez virtual or dedicated server to perform hacking, hacking, crack and test penetration. We have solved this problem for you by providing Warez VPS and Warez Dedicated Server with the best quality.Installing Masscan on LinuxThe quickest way to install Masscan on Linux is to download the source code and compile the software. The tool may already exist in pentesting distros like Kali Linux, but we haven’t verified that.It’s always important to use some type of sandboxing environment when installing new software. You could opt for a virtual machine (VM), container or a remote test server. We used Ubuntu 20.04 for this review and any commands used here should apply to Debian-based distros (and with a few minor tweaks, to other distros as well).The first step is to install some necessary software:sudo apt updatesudo apt upgradesudo apt install git gcc make libpcap-devNext we clone the official repo and compile the software:git clone https://github.com/robertdavidgraham/masscancd masscanmakeYou might get 1 or 2 warnings during the compilation, but if the software compiled successfully, you will see an output like:Masscan examplesWe’ll now attempt to run a few basic commands to see Masscan in action. Firewalls or proxies may block IPs that aggressively do port scans, and we’ll use this hindsight to run our tests.Single IP port scanOur first test is a single IP and single port scan of a malvertising IP we’re tracking../masscan 198.134.112.244 -p443The tool confirmed that port 443 is indeed open at the chosen IP.Advanced port scan against multiple portsAn advanced scan can be executed to analyze multiple ports or a range of ports on an IP subnet. We’ll share examples for both and the output for a multi-port analysis../masscan 198.134.112.240/28 -p80,443,25 #multiple ports./masscan 198.134.112.240/28 -p1000-9999 #range of portsThe scanner tells us how many hosts (16) were found, and then displays which ports are open on which IP addresses.Scanning the top portsThis is another interesting feature: Masscan users can scan the most popular ports by using the ‘top-ports’ option from Nmap command with Masscan.The syntax is simple, just add “–top-ports X”, replacing the X with a number of popular ports, for example 10 or 100, which are the most popular ones used by security researchers.So the full syntax would look like:masscan 192.168.1.105 ‐‐top-ports 10This saves you time, as you’re focused on the most important ports from Nmap scan stats.Scanning a subnetNow let’s use Masscan to its full potential, by running a scan on a bigger subnet and at a faster rate, looking for the top 100 Nmap ports../masscan 198.134.112.0/20 --top-ports 100 --rate 100000 > output.txtWe piped the results of this scan to a file so that we could store the results of the scan. The results show that 4096 hosts were found, and among them we found a number of interesting details. Besides the usual ports of 80/443, some of the IP addresses had open ports such as: 21, 23, 53, 111, 427 and 514.Exclude targets from your scanSometimes you need to reduce the number of hosts that are going to be scanned. In order to skip some of them, the ‘exclude targets’ option can be of help.Masscan enables you to create an exclude file, so you can use the –excludefile parameter for any of your scans. The syntax would look like this:masscan 192.168.1.105 ‐‐top-ports 10 ‐‐excludefile exclude-list.txtOnce you run the scan, a warning will be seen at the beginning of the scan:exclude-list.txt: excluding 1 range from fileScanning the entire Internet with MasscanAs we said before, Masscan was built with speed in mind. It’s prepared to run massive amounts of port scans across networks. Therefore, here you have a few examples of how to scan the entire Internet, for one specific port, or for all of the 65535 ports for each host.How can I scan the Internet for one specific portJust use this syntax, at full speed (10 million p/s)masscan 0.0.0.0/0 -p22 --rate 10000000 #see footnote below [1]This will trigger a massive scan across the whole internet, against port 22.How can I scan the Internet for all the existing ports?masscan 0.0.0.0/0 -p0-65535 --rate 10000000 #see footnote below [1]Further testsThe –help command becomes handy to get a full picture of Masscan’s full potential, where you can find a wide range of options for advanced scanning techniques, as you see below:ConclusionMasscan is a great tool. It’s simple to install and quick and easy to use. Unlike other traditional port scanning solutions like Nmap, Masscan focuses on speed and accurate results with a great set of options, making it one of the best port scanners around.

ادامه مطلب
آموزش نصب و کانفیگ SSL رایگان Let's Encrypt در whm و cpanel

آموزش نصب و کانفیگ SSL رایگان Let's Encrypt در whm و cpanel

آموزش نصب و کانفیگ SSL رایگان Let's Encrypt در whm و cpanelپروتکل (SSL (Socket Secure Layer ، یک استاندارد وب برای کدکردن اطلاعات بین کاربر و وب سایت است. در آموزش های قبلی به اینکهSSL چیست پرداختیم. ، اما در این مقاله به آموزش نصب و کانفیگ SSL رایگان Let's Encrypt در whm و cpanel می پردازیم.پلاگین Let's Encryptبررسی کلیاین پلاگین اجازه میدهد تا از ویژگی AutoSSL یا ssl را از ارائه دهنده Let’s Encrypt به صورت رایگان استفاده کنیم. اگر نمیخواهیم از ssl پیشفرض cpanel خود استفاده کنیم میتوانیم از این پلاگین بهره ببریم.Let’s Encrypt میتواند سریعتر از ارائه دهنده cpanel گواهی مربوطه را صادر کند. همچنین این پلاگین میتواند ساب دامنه ها را هم امن کند.توجه داشته باشید که اگر از پلاگین Let’s Encrypt برای صادر کردن گواهی نامه wildcard استفاده می کنید، محدودیت هایی وجود دارد.این پلاگین در حال حاظر از طریق گواهی نامه وایلد کارت اقدام به امن کردن دامنه های غیر وایلد کارت نمیکند. به عنوان مثال این پلاگین قابلیت امن کردن ساب دامنه ها را ندارد. مانند example.one3erver.comاگر از DNS ثالث برای هاستینگ استفاده می کنید امکان استفاده از این پلاگین برای به دست آوردن گواهی نامه وایلدکارت وجوندارد. شما باید DNS را بر روی سرور cPanel و WHM لوکال خود یا در کلاستر DNS سرور میزبانی کنید.نکات مهمLet’s Encrypt محدودیت های قابل توجهی بر روی دامنه ایجاد می کند. ما باید قبل از انتخاب ارائه دهنده این محدودیت ها را بررسی کنیم.این پلاگین برای خدمات سیستم ما ، hostname یا نام سیستم تولید نمیکند و تنها گواهینامه SSL برای اکانت های cpanel ما تولید میکند.هنگامی که از Let’s Encrypt به عنوان ارائه دهنده ی SSL اصلی استفاده میکنیم. Let’s Encrypt امکان انتخاب همه ی گواهی نامه های Wildcard امنیتی SSL را فراهم می کند.نام عمومی یا CN وارد شده بر روی گواهی نامه SSL به صورت تزئینی است و تاثیر خاصی بر روی امنیت گواهی نامه ندارد.در یک گواهی نامه ی CN لازم به دامنه اصلی نیست. آن گواهی نامه تمامی دامنه های لیست شده در گواهی نامه ی فیلد SAN را پوشش می دهد. توجه: شما برای داشتن یک سایت حرفه ای نیاز به یک هاست اختصاصی با کانفیگ و سخت افزار حرفه ای دارید. تیم وان سرور با بهره گیری از بروز ترین و پیشرفته ترین کانفیگ ها این نیاز را برای شما بر طرف خواهد کرد. برای خرید سرور مجازی با کانفیگ اختصاصی سی پنل کلیک کنید.آموزش نصب و کانفیگ SSL رایگان Let's Encrypt در whmبرای آموزش نصب و کانفیگ SSL رایگان Let's Encrypt در whm مراحل زیر را انجام دهید.در سرور با کاربر root وارد شوید.دستور زیر را اجرا کنید./usr/local/cpanel/scripts/install_lets_encrypt_autossl_providerدر WHM وارد شده و به قسمت رابط Manage AutoSSL بروید. WHM >> Home >> SSL/TLS >> Manage AutoSSL)در تب Providers گزینه Let’s Encrypt راانتخاب کنید. رابط مورد نظر Terms of Service یا همان شرایط استفاده از خدمات نمایش میدهد.آن را بررسی کرده و در صورت موافقت گزینه  agree to these terms of service را انتخاب کنید.بر روی Save کلیک کنید.به روز رسانیدر رابط Manage AutoSSL بر روی Recreate my current registration with “Let’s Encrypt” کلیک نمایید. بعد از قبول شرایط خدمات سیستم قبلی را با ثبت جدید جایگزین میکند.حذف پلاگینبرای حذف پلاگین مورد نظر از دستورات زیر استفاده کنید.در سرور با کاربر root وارد شوید.دستور زیر را اجرا کنید./usr/local/cpanel/scripts/uninstall_lets_encrypt_autossl_providerنصب و کانفیگ SSL رایگان Let's Encrypt در whm و cpanelنصب پلاگین cPanelابتدا در کلاینت خود با سطح دسترسی root لاگین کرده و سپس مخزن Let’s Encrypt را با استفاده از دستور زیر اضافه کنید.cd /etc/yum.repos.d/ && wget https://letsencrypt-for-cpanel.com/static/letsencrypt.repoپس از آن پلاگین را برای cPanel با استفاده از دستور زیر نصب کنید.yum -y install letsencrypt-cpanelمراحل نصب پس از دقایقی به پایان رسیده و اگر همه چیز خوب پیشرفته باشد یک تست شبیه متن زیر نمایش داده میشود.le-cp self-test[SELF-TEST] Can read config ............ SUCCESS.[SELF-TEST] Can connect to daemon and check licence ............ SUCCESS.[SELF-TEST] Can connect to Lets Encrypt ............ SUCCESS.[SELF-TEST] Can talk to WHM API ............ SUCCESS.[SELF-TEST] Can talk to plugin RPC ............ SUCCESS.سپس به cPanel خود لاگین کرده و گواهینامه SSL رانصب میکنیم.نصب و کانفیگ SSL رایگان Let's Encrypt در cpanelبعد از ورود به cPanel آیکون Let’s Encrypt for cPanel را در زیر سربرگ Security میتوانیم مشاهده کنیم. با کلیک بر روی آن میتوانیم لیست دامنه های فعال برای نصب گواهی نامه را مشاهده کنیم.در پایین صفحه قسمتی به نام Issue a new certificate را مشاهده می کنیم. و در اینجا ما شاهد تغییرات دامنه های فعالمان به همراه پیشوند www هستیم.میتوانیم گواهی نامه چند دامنه را همراه با هم نصب کنیم یا بر روی Issue Single در کنار دامنه مورد نظر کلیک کرده و آن را انجام دهیم.اگر چند دامنه را باهم انتخاب و قصد نصب گواهی نامه آن را داریم بر روی گزینه ی Issue Multiple در بالای صفحه کلیک میکنیم.در اینجا اگر در مرحله قبل بر روی multiple install کلیک کردیم دامنه هایی که نمیخواهیم را جدا می کنیم. همچنین دامنه اصلی که کاربر قرار است تا آن را بازدید کند نیز انتخاب میکنیم.همچنین اگر بر روی دامنه از سرویس ایمیل استفاده می کنیم. تیک گزینه Install mail SMTPS/POP3S/IMAPS SSL certificate را نیز میزنیم. و در نهایت بر روی دکمه ی Issue کلیک کرده تا گواهی نامه صادر گردد.مراحل نصب حدود 10 ثانیه به طول می انجامد ، اما به تعداد گواهی هایی که برای صدور انتخاب کرده ایم نیز بستگی دارد و ممکن است تا 45 ثانیه به طول انجامد. و پس از نصب پیامی مبنی بر موفقیت آمیز بودن نصب دریافت خواهیم کرد.جمع بندیخب ما در این آموزش به بررسی پلاگین Let’s Encrypt ، نصب ، به روز رسانی و همچنین نصب آن در cPanel پرداختیم و آموختیم که چگونه گواهینامه رایگان SSL را دریافت کنیم.

ادامه مطلب
آموزش Lynis

آموزش Lynis

آموزش LynisLynis یک ابزار امنیتی متن باز است. هدف آن رسیدگی ، بررسی و سخت گیری بر سیستم های مبتنی بر لینوکس و یونیکس است. این ابزار با انجام بسیاری از بررسی های کنترل امنیتی سیستم را اسکن می کند. به عنوان مثال می توان به جستجوی نرم افزارهای نصب شده و تعیین مشکلات احتمالی در تنظیمات آن ها اشاره کرد. در این مقاله به بررسی و آموزش Lynis می پردازیم.بسیاری از تست ها بخشی از دستورالعمل ها و استانداردهای مشترک امنیتی هستند که شامل تست های امنیتی اضافی هستند. پس از اسکن ، گزارشی با تمام یافته های کشف شده نمایش داده می شود. برای ارائه راهنمایی های اولیه ، پیوندی با کنترل Lynis مرتبط به اشتراک گذاشته می شود.Lynis یکی از معتبرترین ابزار حسابرسی خودکار برای مدیریت پچ نرم افزار ، اسکن بدافزار و شناسایی آسیب پذیری در سیستم های مبتنی بر Unix / Linux است. این ابزار برای مدیران شبکه و سیستم ، متخصصان امنیت و آزمایش کننده های نفوذ مفید است.استفاده کنندگان از Lynisمتخصصان امنیتی ، آزمایشگران نفوذ ، بازرسان سیستم ، مدیران سیستم / شبکه ، مهندسان امنیت.سازگاری LynisLynis با بسیاری از سیستم عامل ها سازگار است ، از جمله:AIXArch LinuxBackTrack LinuxCentOSDebian, DragonFlyBSDFedora Core, FreeBSDGentooHPUXKali, KnoppixLinux MintMacOS X, Mageia, MandrivaNetBSDOpenBSD, OpenSolaris, openSUSE, Oracle LinuxPcBSD, PCLinuxOSRed Hat Enterprise Linux (RHEL) and derivativesSabayon, Scientific Linux, Slackware, Solaris 10, SuSETrueOSUbuntu and derivativesLynis میتواند همچنین به موارد زیر رسیدگی کند:سرور های پایگاه داده : MySQL, Oracle, PostgreSQLتایم سرور های : dntpd, ntpd, timedوب سرور های : Apache, Nginxهنگامی که lynis شروع به اسکن سیستم ما می کند ، تعدادی از موارد زیر را بررسی می کند:System tools: باینری های سیستمBoot and services: لودرهای بوت ، خدمات راه اندازیKernel: سطح اجرا ، ماژول های بارگذاری شده ، پیکربندی هسته ، تخلیه هستهMemory and processes: فرایند های ورودی و خروجیUsers, groups and authentication: شناسه های گروه ، مدت پسورد ، مسک دیفالتShellsFile systems: نقاط نصب ، پرونده های / tmp ، سیستم فایل روتStorage: ذخیره سازی یو اس بی ، فایروایر ohciNFSSoftware: name services: دی ان اس و جستجوی دی ان اسPorts and packages: بسته های آسیب پذیر / قابل ارتقا ، مخزن امنیتیNetworking: نیم سرور ها ، اینترفیس های بیقید ، اتصالاتPrinters and spools: پیکربندی آن هاSoftware: e-mail and messagingSoftware: firewalls: iptables, pfSoftware: webserver: Apache, nginxSSH support: پیکر بندی SSHSNMP supportDatabases: MySQL root passwordLDAP servicesSoftware: php: گزینه های phpSquid supportLogging and files: Syslog daemon, log directoriesInsecure services: inetdBanners and identificationScheduled tasks: crontab/cronjob, atdAccounting: sysstat data, auditdTime and synchronization: ntp daemonCryptography: انقضاء سرتیفیکیت (گواهی) SSLVirtualizationSecurity frameworks: AppArmor, SELinux, security statusSoftware: file integritySoftware: malware scannersHome directories: فایل های هیستوری ( تاریخچه ) shelنحوه ی کار Lynisدر این آموزش لینوکس کالی ، برای اجرای آن برای اولین بار ، توصیه می شود از پارامتر -c استفاده کنید. پارامتر -c به معنای انجام تمام آزمایشات برای بررسی سیستم ها است. اگر می خواهید نام Auditor را قرار دهید ، فقط پارامتر Audit را در آنجا اضافه کنید.دانلود و نصب Lynis از گیت هاب:git clone https://github.com/CISOfy/lyniscd lynis-2.7.3./lynisبرخی از خروجی هاپس از نصب، با نام Auditor یا Pentester شروع کنید.lynis -c –auditor “BALAJI”مقدار دهی اولیهابزارهای سیستمبوت ، سرویس ها و کرنلکاربران و گروهشل و ذخیره سازینرم افزار ، پورت ها وپکیج هاشبکه و چاپ کنندهایمیل ، فایروال ها و وب سرورSSH و SNMP و پایگاه ها دادهphp و squid proxy و ورود به سیستمInetd و بنر و کروناکانتینگ و NTP و رمزنگاریمجازی سازی و فریم ورک های امنیتی و یکپارچگی فایل هااسکنر های بدافزار و ابزار سیستم و دایرکتوری اصلیسفت کردن هسته یا Kernel HardeningHardening و تست های سفارشی و نتیجهشاخص Hardeningاجرا کردن Lynis با تست های سفارشیممکن است سیستم ما نیازی به اجرای تمامی تست ها نداشته باشد. اگر بر روی سیستم ما وب سرور در حال اجرا نیست پس نیازی به تست آن نداریم. ما میتوانیم برای انجام این کار از پارامتر -tests استفاده کنیم.lynis –tests “Test-IDs”بیش از 100 تست وجود دارد که ما میتوانیم استفاده کنیم.در اینجا به بررسی چندی از آن ها میپردازیم.FILE-7502 (چک کردن تمامی باینری ها)BOOT-5121 (چک کردن برای حضور بوت گراب ).BOOT-5139 (چک کردن حضور LILO بوت)BOOT-5184 (چک کردن سطح دسترسی ها برای فایل ها یا اسکریپت ها بوت)BOOT-5202 (چک کردن آپتایم سرور)KRNL-5677 (چک کردن آپشن ها CPU)KRNL-5726 (بررسی ماژول های بارگذاری شده در کرنل)KRNL-5728 (چک کردن پیکربندی کرنل لینوکس)KRNL-5820 (بررسی پیکربندی تخلیه هسته)خب دو مورد از موارد بالا را میخواهیم تست کنیم. برای این کار کافیست دو مورد را با فاصله از هم وارد کنیم تا با هم تست شوند. به دستور زیر توجه کنید../lynis –tests “BOOT-5202 KRNL-5820”اجرای Lynis با کتگوری هااگر فکر میکنید که استفاده از test-id سخت است. میتوان از پارامتر –test-category استفاده کرد. در اینجا ما قصد داریم تا فایروال و کرنل را تست کنیم../lynis –tests-category “firewalls kernel”اجرای Lynis تحت کرون جاباز آن جایی که امنیت باید پایدار باشد ما میتوانیم Lynis را به صورت دوره ای و خودکار اجرا کنیم. اینطور بگوییم که میخواهیم Lynis را هر ماه اجرا کنیم تا ببینیم از آخرین باری که اجرا شده بهبودی حاصل شده یا خیر.برای انجام این کار لاینیس را به عنوان کرون جاب اجرا میکنیم. به عنوان مثال کرون جابی در اینجا هست که لاینیس هر ماه اجرا میکنیم:#!/bin/shAUDITOR=”automated”DATE=$(date +%Y%m%d)HOST=$(hostname)LOG_DIR=”/var/log/lynis”REPORT=”$LOG_DIR/report-${HOST}.${DATE}”DATA=”$LOG_DIR/report-data-${HOST}.${DATE}.txt”cd /usr/local/lynis./lynis -c –auditor “${AUDITOR}” –cronjob > ${REPORT}mv /var/log/lynis-report.dat ${DATA}# Endخب در این آموزش ما با ابزار Lynis و همچنین با بعضی از دستورات و بخش های مختلف این ابزار آشنا شدیم.

ادامه مطلب
آشنایی با phpMyAdmin

آشنایی با phpMyAdmin

آشنایی با phpMyAdminهدف اصلی ابزار phpMyAdmin مدیریت پایگاه داده یا همان دیتابیس ها است. در این آموزش ما به بررسی ویژگی های مختلف و آشنایی با phpMyAdmin می پردازیم.بعد از باز کردن صفحه ی اصلی phpMyAdmin بر روی Databases کلیک می کنیم و پایگاه داده مورد نظر را انتخاب میکنیم تا در نهایت به مدیریت و یا تغییر آن بپردازیم.در صفحه باز شده لیستی با جداول دیتابیس یا پایگاه داده ، اقدامات مجاز با آنها ، تعداد سوابق ، موتور ذخیره سازی ، جمع بندی ، اندازه جداول و overhead مشاهده خواهیم کرد.کار هایی که میتوانیم با جدول انتخاب شده انجام بدیم را با هم مرور میکنیم.Browseفقط جداول دارای رکورد موجود را می توان مرور کرد. پس از کلیک بر روی مرور (Browse) صفحه جدید ، لیستی از سوابق داخل جدول باز می شود.با کلیک کردن بر روی Edit میتوانیم رکورد مورد نظر را ویرایش کنیم.ساختار رکورد را مشاهده خواهیم کرد و می توانیم مقادیر رکوردها را تغییر دهیم. پس از اتمام تغییرات ، آنها را با کلیک کردن روی Go در پایین صفحه میتوانیم ارسال کنیم.Structureبا کلیک بر روی دکمه Structure ، صفحه جدیدی باز می شود که ساختار جدول پایگاه داده را نشان می دهد.نام فیلدها ، انواع آنها ، جمع بندی ها ، ویژگی ها ، اطلاعات اضافی اضافی ، مقادیر پیش فرض و اینکه آیا مقادیر فیلدها می توانند NULL باشند را خواهیم دید. با کلیک روی نماد اقدام مربوطه می توانیم مقادیر متمایز را مرور کنیم. همچنین ، می توانید ساختار یک قسمت را ویرایش کنیم یا یک قسمت را حذف کنیم. ما می توانیم شاخص های مختلفی را تعریف کنیم: اولیه ، منحصر به فرد ، فهرست و متن کامل. اطلاعات بیشتر درباره ایندکس ها را می توان در مستندات MySQL Indexes یافت.Searchبا استفاده از دکمه Search ، می توانیم یک پرس و جو برای جدول انتخاب شده ایجاد کنیم.ما با استفاده از Query by example عملکرد هایی را برای انجام یک جستجو انجام بدهیم. فقط کافی است از قسمتهای مختلف استفاده کنیم تا پرس و جو query را تشکیل دهیم و بر روی Go کلیک کنیم تا اجرا شود.به عنوان مثال ، اگر می خواهیم همه سوابق با مقدار فیلدی را که با "a" شروع می شود تجسم کنیم ، ابتدا باید زمینه هایی را که می خواهیم نشان داده شود انتخاب کنیم. اپراتور LIKE را از فهرست کشویی انتخاب کرده و مقدار فیلد مربوطه را "a٪" وارد کنیم (٪ مخفف یک رشته wildcard است). برای دیدن نتیجه بر روی دکمه Go کلیک میکنیم.Insertبا استفاده از دکمه Insert می توانیم سوابق را در جدول پایگاه داده خود وارد کنیم.هنگامی که مقادیر مربوطه را پر کردیم بر روی Go کلیک می کنیم و رکورد جدید درج می شود.Emptyدکمه Empty به ما امکان می دهد یک جدول پایگاه داده را خالی کنیم ، داده ها را حذف کرده و جدول خالی را نگه داریم.Dropبا استفاده از دکمه Drop می توانیم کل جدول و تمام سوابق ذخیره شده در آن را حذف کنیم.ایجاد پایگاه داده در phpMyAdminایجاد یک جدول و به خاطر سپردن اینکه تمام جزئیات برای وارد کردن در آن چیست ، اگر به صورت دستی برای راه اندازی دستورات آن را اجرا کنید ، ممکن است مشکل ایجاد کند. PhpMyAdmin می تواند در تنظیم ساختار جداول کمک کرده و کل روند را سریع و آسان کند.ما پایگاه داده را از منوی سمت چپ انتخاب می کنیم که می خواهیم جدول را به آن اضافه کنیم. نام پایگاه داده ای که ما از آن استفاده خواهیم کرد lwtest_wpdb است.این ما را به زبانه Structure می برد که جداول موجود در پایگاه داده را لیست می کند. در پایین آن صفحه ، بخش "ایجاد جدول" وجود دارد. نام جدول را اضافه کنید و تعداد ستون های جدول را انتخاب کنید. پس از آن بر روی دکمه Go در گوشه پایین سمت راست کلیک کنید.صفحه ایجاد جدول جعبه هایی را می دهد که می توانیم پر کنیم ، مانند نام ستون ، نوع داده ای که در آن ذخیره می شود ، طول کاراکتری که مقدار به آن محدود می شود و نوع جمع بندی که برای آن استفاده می شود داده ها را ذخیره کنید. نوع جمع بندی به داده هایی که در پرونده ذخیره می شوند بستگی دارد. اگر این یک عدد صحیح باشد ، جمع بندی اهمیتی نخواهد داشت ، اما برای متن و انواع دیگر که می توانند نویسه های مختلف را بپذیرند ، ممکن است نیاز باشد که مجموعه را بر روی چیز خاصی تنظیم کنید.به عنوان مثال ، اگر کاراکترهای خارجی نیاز به ذخیره شدن در پرونده دارند ، لازم است که مجموعه ای باشد که به درستی از آن کاراکترها و نمادها پشتیبانی کند.ستون های دیگری نیز وجود دارد ، اما برای ایجاد جدول نیازی به پر کردن همه آنها نیست. تنظیم کلید اصلی در کادر فهرست برای کمک به مرتب سازی سوابق و جلوگیری از تکرار داده ها توصیه می شود.سپس در زیر ستون ها می توانیم نوع Storage Engine را که جدول استفاده می کند تنظیم کنیم. InnoDB و MyISAM متداول ترین موارد استفاده هستند ، اما در صورت نیاز انواع دیگری نیز در دسترس هستند. InnoDB به طور کلی ترجیح داده می شود زیرا فقط باعث قفل شدن سطرها می شود (به جای کل جدول).سپس بر روی دکمه ذخیره در پایین صفحه کلیک کنید.سپس بالاخره جدول ایجاد می شود! برای ذخیره اطلاعات آماده است یا در صورت نیاز می تواند بیشتر اصلاح شود.نتیجه گیری:phpMyAdmin کاربردهای فراوانی دارد که در این مقاله با برخی از موارد آن آشنا شدید.

ادامه مطلب
آموزش بک آپ گرفتن از دیتابیس در سی پنل (cPanel)

آموزش بک آپ گرفتن از دیتابیس در سی پنل (cPanel)

آموزش بک آپ گرفتن از دیتابیس در سی پنل (cPanel)یکی از مهمترین قسمت های یک وبسایت دیتابیس آن است که شامل محتویات و جزئیات زیادی است. و خیلی مهم است که ما حتما حداقل یک بار در هفته از دیتابیس وب سایت خود بک آپ بگیریم. در این مقاله به آموزش بک آپ گرفتن از دیتابیس و ری استور کردن آن در سی پنل (cPanel) میپردازیم.البته بک آپ از دیتابیس با بک آپ از کل سایت یا فول بک آپ متفاوت است. زیرا ما در فول بک آپ از فایل های موجود در شاخه ی دایرکتوری و فولدر ها بک آپ یا پشتیبان میگیریم. برای آشنایی با نحوه ی فول بک آپ به پست مربوطه مراجعه کنید.بک آپ گرفتن از دیتابیس در سی پنل (cPanel)در ابتدا سیپنل سایت خود را باز میکنیم. سپس به قسمت Backup میرویم.پس از آن در قسمت Download a MySQL Database Backup دیتابیس مورد نظر را انتخاب می کنیم.پس از کلیک بر روی نام دیتابیس مورد نظر میتوانیم آن را دانلود کرده و در جای امنی نگه داری کنیم.تا اینجا ما با نحوه ی بک آپ گیری در دیتابیس آشنا شدیم اما حالا میخواهیم به نحوه ریستور و بازگردانی بکاپ در سی پنل بپردازیم.آموزش ری استور کردن دیتابیس در سی پنل (cPanel)ابتدا به صفحه ی اصلی cPanel رفته و در سربرگ Files به قسمت Backup Wizard میرویم .سپس در این قسمت بر روی Restore کلیک میکنیم.در این مرحله که Select Restore Type نام دارد بر بر روی MySQL Databases کلیک میکنیم.در اینجا با کلیک کردن بر روی Browse فایلی بک آپ را انتخاب کرده و بر روی آپلود کلیک می کنیم. و به این ترتیب فایل بک آپ دیتابیس بر روی هاست آپلود شده و سپس تنظیمات آن اعمال میشود.خب پس از ایمپورت کردن دیتابیس ما میتوانیم در phpMyAdmin اقدام کار هایی نظیر مشاهده دیتابیس ، ساخت ، مدیریت ، ایمپورت با فرمت های مختلف و کار هایی از این قبیل انجام داد.برای دسترسی به phpMyAdmin ، در سربرگ Databases بر روی phpMyAdmin کلیک میکنیم.خب در این آموزش ما با نحوه ی بک آپ گیری از دیتابیس و همچنین نحوه ی ری استور کردن آن آشنا شدیم و همچنین دانستیم که میتوان از طریق phpMyAdmin میتوان دیتابیس را مشاهده و ویرایش نمود.

ادامه مطلب
آموزش نصب XAMPP در ویندوز

آموزش نصب XAMPP در ویندوز

آموزش نصب XAMPP در ویندوزXAMPP مخفف Apache و MySQL و PHP و Perl است. و این نرم افزار به ما اجازه میدهد که یک وب سرور محلی یا لوکال ایجاد کنیم. تا به طور مثال یک سایت را با وردپرس یا دیگر CMS ها راه اندازی کنیم. همچنین این نرم افزار برای افرادی که میخواهند با زبان PHP به فعالیت بپردازند و یا در حین آموزش زبان هایی نظیر PHP و Perl هستند گزینه ی مناسبی است. زیرا که موارد فوق الذکر را پشتیبانی کرده و یک سیستم وب سرور عالی را برای ما راه اندازی می کند. در این مقاله آموزش نصب XAMPP در ویندوز را توضیح خواهیم داد.دانلود XAMPPبرای دانلود این نرم افزار به سایت Apache Friends میرویم. که در اینجا ما میتوانیم انواع نسخه های موجود را از جمله windows و لینوکس مشاهده کنیم. که در این پست ما نسخه ی Windows را دانلود می کنیم و به آن می پردازیم.پس از انتخاب نسخه مورد نظرمان به صفحه ی دانلود هدایت میشویم.نصب XAMPP در ویندوزدر اینجا پس از دانلود فایل نصبی آن را اجرا میکنیم. که به احتمال زیاد به خطای زیر برمیخوریم. که مربوط به دسترسی کاربر و همچنین نصب نرم افزار در دایرکتوری مشخص است. که آن را تایید میکنیم.حال به پنجره ی نصب وارد می شویم.پس از انتخاب دکمه Next به صفحه ی بعد رفته و مشخص میکنیم که چه آپشن هایی را از این پکیج نرم افزاری می خواهیم. (پیشنهاد ما همان گزینه های پیشفرض است)در این صفحه محل ذخیره نصب را انتخاب کرده و بر روی Next کلیک میکنیم. در اینجا زبان مورد نظر را انتخاب میکنیم.این مرحله تیک مورد نظر را برمیداریم و روی Next کلیک میکنیم.پس از اتمام ستاپ به سراغ نصب نرم افزار میرویم. و بر روی Next کلیک میکنیم.در این مرحله ما شاهد نصب XAMPP هستیم.بعد از نصب بر روی دکمه Finish کلیک میکنیم.خب پس از نصب کنترل پنل XAMPP باز میشود و ما به عنوان مثال Apache را استارت می کنیم. برای اینکار کافیست تا بر روی دکمه ی start کلیک کنیم.بعد از آن نیز بقیه نرم افزار های موجود در پکیج XAMPP را نیز با توجه به نیازمان اجرا می کنیم. مانند MySQLسپس برای اطمینان از درست بودن نتیجه به لوکال هاست میرویم. با تایپ کردن دستور زیرlocalhostالبته برای مشاهده فولدر حاوی فایل های مربوط به وب سرور یا همان لوکال هاست از ip لوپ بک نیز میتوانیم استفاده کنیم.127.0.0.1رفع مشکل آپاچیالبته در مواردی نیز ممکن است بعد از از نصب نرم افزار و قبل از اجرای سرویس apache ما به خطایی همچون تصویر زیر بر بخوریم.همانطور که می دانید پورت پیشفرض پروتوکل http که یکی از پروتوکل های اصلی اینترنت است 80 است و ما در بیشتر موارد در گردش در صفحات اینترنت ما از این پروتوکل و پورت استفاده میکنیم.البته پروتوکل دیگری هم وجودارد به نام https که ترکیبی از پروتوکل های http و ssl است. که ارتباط بین کاربر و وبسایت را به صورت امن (و با استفاده از جفت کلید های صادر شده) ایجاد می کند. که پورت این پروتوکول 443 است.حال در اینجا ممکن بعضی از نرم افزار ها این دو پروتوکل را اشغال کرده یا به بیان دیگر از این دو پورت استفاده کنند. که در این صورت ما به خطای ذکر شده بر میخوریم. که برای رفع مشکل ما دو گزینه در پیش داریم اول این که سرویس یا نرم افزار جانبی که پورت یا پورت های مورد نظر را اشغال نموده اند را حذف یا غیر فعال کنیم. و راه حل بعدی این است که پورت دیفالت یا پیشفرض apache را تغییر بدهیم.آموزش تغییر پورت apacheبرای تغییر پورت دیفالت apache از طریق زیر عمل می کنیم.ابتدا در XAMPP بر روی Config کلیک کرده و با صفحه ی زیر روبرو میشویم.در اینجا بر روی Service and Port Settings کلیک کرده و همانطور که مشاهده می کنید میتوانیم پورت های مورد نظر را تغییر بدهیم.حال ما پورت ها را با توجه به نیاز و سرویس های اجرا شده ی خودمان تعویض می کنیم. به طور مثال http را به 8080 و https را به 4443 تغییر می دهیم.نتیجهخب در این آموزش ما با نحوه ی راه اندازی یک وب سرور لوکالی آشنا شدیم و فهمیدیم که میتوانیم با استفاده از نرم افزار XAMPP از چه طریقی این عمل را انجام دهیم.اما نکته ی قابل توجه و خیلی مهم این است که اگر رایانه ی ما یک VPS و یا یک سرور اختصاصی باشد می توانیم با استفاده از IP اختصاصی خود مستقیم به فولدر اصلی به اشتراک گذاشته و سایت خودمان دسترسی داشته باشیم. اگر دقیق تر بخواهیم بررسی کنیم فقط کافیست IP اختصاصی خود را در هر جای دنیا که باشیم در مرورگر وارد کنیم.

ادامه مطلب
آموزش راه اندازی سرور دانلود با تورنت

آموزش راه اندازی سرور دانلود با تورنت

آموزش راه اندازی سرور دانلود با تورنتتورنت یک پروتکل اشتراک فایل بر مبنای فناوری نقطه به نقطه (P2P) است. این فناوی به کاربران اجازه می‌دهد فایل‌ها و محتوای مورد نظر خود را بدون وابستگی به یک منبع ثابت دانلود کنند. در این مقاله قصد داریم به آموزش راه اندازی سرور دانلود با استفاده از تورنت بپردازیم.فقط توجه داشته باشید که اگر قصد اسفاده از تورنت در سرور مجازی را دارید باید توجه داشته باشید که در دیتا سنتر مورد نظر (استفاده از آن) باید آزاد و مورد قبول باشد.نصب utorrentبرای شروع ابتدا باید نرم افزاری مربوط به تورنت را نصب کنید ، که پیشنهاد ما به شما نرم افزار uTorrent است.دانلود utorrentابتدا به سایت اصلی uTorrent رفته و سپس آن را دانلود کنید. از آنجایی که این برنامه رایگان است پس مشکل و نگرانی ای بابت دانلود و هزینه نباید داشته باشید.طبق عکس ما نسخه ی مورد نظر خود را دانلود کنیدبعد از دانلود شدن به محل فایل مورد نظر رفته و فایل با پسوند .exe را اجرا کنید تا پروسه نصب اتوماتیک انجام شود.بعد از نصب، نرم افزار را اجرا کنید.طبق تصویر زیر میتوانیم نرم افزار uTorrent را برای کار به صورت ریموت یا از راه دور پیکربندی کنیم. برای اینکار نیاز به تعیین کردن یک نام کاربری و پسورد داریم.در ادامه برای کنترل و کار با نرم افزار تورنت یعنی uTorrent به صورت از راه دور آدرس زیر بروید.remote.utorrent.comپس از آن نام کاربری و رمز عبور را وارد کنید.همانطور که مشاهده می کنید این صفحه همانند نرم افزار تورنت است.با توجه به ادامه آموزش می توان برای در امان ماندن از مشکلات دیتاسنتری سید ( seed) یا ارسال تورنت راقطع کنیم و فقط دریافت داشته باشیم.در ادامه فایل با پسوند .torrent را به نرم افزار اضافه می کنیم تا فرآیند تورنت آغاز شود.همانطور که میبینید فایل مورد نظر با موفقیت دانلود شد.وب سرور IISپس از نصب تورنت و اسفاده از آن به سراغ نصب و پیکربندی IIS سرور می رویم.معرفی وب سرور IISوب سرور IIS روی سیستم عامل Microsoft .NET در سیستم عامل ویندوز اجرا می شود. اگرچه اجرای IIS در Linux و Mac با استفاده از Mono امکان پذیر است ، اما توصیه نمی شود و احتمالاً ناپایدار خواهد بود. این وب سرور بسیار کارآمد و پایدار است و سالیان زیادی است که مورد استفاده قرار میگیرد. نصب IISحالا فایل تورنت دانلود شده را در پوشه ی مورد نظرمان کپی می کنیم که قاعدتا باید در یکی از پوشه هایی باشد که IIS آن را به اشتراک می گذارد.خب تا اینجا ما به نصب نرم افزار های تورنت و وب سرور IIS پرداختیم. حالا با اجرای آموزش زیر میتوانید فایل های دانلود شده توسط تورنت را مستقیما به پوشه ی اشتراک گذاشته شده ببرید تا آن را در هر جای دنیا که هستید به راحتی دانلود کنید و یا آن را با افراد دیگر به اشتراک بزارید.خلاصهدر این مقاله آموزش راه اندازی سرور دانلود با استفاده از تورنت را به شما آموزش دادیم. به طور خلاصه ما با داشتن یک ویندوز سرور و نصب uTorrent و IIS میتوانیم یک سرور دانلود راه بیاندازیم.

ادامه مطلب
آموزش و کاربردهای Traceroute

آموزش و کاربردهای Traceroute

Traceroute چیست ؟Traceroute ابزاری برای تشخیص شبکه است. که برای ردیابی مسیری که توسط یک بسته در یک شبکه، IP از مبدا تا مقصد طی می شود ، استفاده می شود و آدرس IP تمام روترهایی را که بین آنها قرار دارد ، گزارش می کند. Traceroute همچنین زمان صرف شده برای هر hop بسته را در طول مسیر خود به مقصد ثبت می کند. در این مقاله به آموزش و کاربردهای Traceroute در لینوکس و ویندوز می پردازیم.Traceroute معمولاً از بسته های echo پروتکل پیام کنترل اینترنت (ICMP) با مقادیر TTL استفاده می کند. زمان پاسخگویی هر hop محاسبه می شود. برای اطمینان از صحت ، هر hop چندین بار (معمولاً سه بار) مورد سوال قرار می گیرد تا پاسخ آن hop خاص را بهتر بسنجید. Traceroute برای عملکرد از پیامهای ICMP و قسمتهای TTL در هدر آدرس IP استفاده می کند. ابزارهای Traceroute معمولاً به عنوان یک ابزار توسط سیستم عامل هایی مانند Windows و Unix گنجانده می شوند. ابزارهای Traceroute مبتنی بر TCP نیز موجود هستند.آموزش استفاده از TracerouteTraceroute ابزاری مفید برای تعیین تاخیرهای پاسخ دهی و حلقه های مسیریابی موجود در مسیر شبکه در میان لوپ های بسته بندی شده بسته است. همچنین کمک می کند تا نقاط خرابی که هنگام رفتن به یک مقصد خاص روبرو می شویم ، پیدا شود.با این حال ، در اینترنت ، پیامهای Traceroute اغلب توسط مسیریابها در سیستمهای مختلف مسقل (AS) مسدود می شوند ، و باعث می شود Traceroute در بسیاری از موارد بسیار نادرست باشد.نصب Tracerouteبرای نصب traceroute در اوبونتو ، از دستور زیر استفاده کنید:sudo apt-get install tracerouteبرای نصب traceroute در centos از دستور زیر استفاده کنید:yum install traceroute -yاستفاده از Traceroute در لینوکسبرای مثال ما میخواهیم به آدرس وان سرور traceroute انجام دهیم.traceroute www.One3erver.comیا برای بهتر درک کردن به یک آدرس دیگر traceroute را انجام دهیم.traceroute www.blarneycastle.ieخط اول اطلاعات زیر را به ما می دهد:مقصد و آدرس IP آن.تعداد hop که traceroute قبل از ارسال آماده می کند.اندازه بسته های UDP که ارسال می کنیم.تمام خطوط دیگر حاوی اطلاعاتی در مورد یکی از hop ها است. قبل از بررسی جزئیات ، می توانیم ببینیم که 11 hop بین رایانه و وب سایت وجود دارد. هاپ 11 همچنین به ما می گوید که به مقصد رسیدیم.فرمت هر hop به شرح زیر است :نام دستگاه یا اگر دستگاه خود را شناسایی نکند ، آدرس IP.آدرس IPمدت زمان رفت و برگشت برای هر یک از سه آزمون. اگر یک ستاره در اینجا باشد ، به این معنی است که پاسخی برای آن آزمون داده نشده است. اگر دستگاه به هیچ وجه پاسخ ندهد ، سه ستاره مشاهده خواهید کرد و نام دستگاه یا آدرس IP وجود ندارد.خروجی را در زیر با هم مرور می کنیم.Hop 1 : اولین پورت مکالمه روتر DrayTek Vigor در شبکه محلی است.اینگونه پکت های UDP ما از شبکه محلی خارج می شوند و به اینترنت راه می یابند.Hop 2 : این دستگاه پاسخی نداد. شاید برای ارسال بسته های ICMP هرگز پیکربندی نشده باشد. یا ، شاید پاسخ داد اما خیلی کند بود ، بنابراین زمان traceroute به پایان رسیده است.Hop 3 : دستگاهی پاسخ داد ، اما نام آن را دریافت نکردیم ، فقط آدرس IP است. توجه داشته باشید که یک ستاره در این خط وجود دارد ، به این معنی که ما پاسخی به هر سه درخواست را دریافت نکردیم. این می تواند فقدان بسته یا پکت لاست را نشان دهد.Hop 4 : هاپ ناشناس.Hop 5 : هاپ ناشناس.Hop 6 : در اینجا متن زیادی وجود دارد زیرا دستگاه از راه دور دیگری هر سه درخواست UDP ما را کنترل می کند. نام (نسبتا طولانی) و آدرس IP برای هر دستگاه چاپ شده است. این می تواند زمانی اتفاق بیفتد که با شبکه ای "پرجمعیت" روبرو شوید که سخت افزار زیادی برای کنترل حجم بالای ترافیک در آن وجود دارد. این هاپ در یکی از بزرگترین ISP های انگلیس قرار دارد. بنابراین اگر یک قطعه سخت افزار از راه دور به سه درخواست اتصال ما رسیدگی کند ، یک معجزه کوچک خواهد بود.Hop 7 : این هاپی است که بسته های UDP ما هنگام خروج از شبکه ISP ایجاد کرده اند.Hop 8 : باز هم ، ما یک آدرس IP دریافت می کنیم اما نام دستگاه را نمی گیریم. هر سه آزمون با موفقیت برگشتند.Hop 9 : هاپ ناشناس.Hop 10 : هاپ ناشناس.Hop 11 : ما به وب سایت مورد نظر رسیده ایم. با توجه به موقعیت جغرافیایی آدرس IP ، این وب سایت در لندن است.بنابراین ، بعضی از دستگاه ها پاسخ می دادند اما نام آنها را به ما نمی گفتند و برخی دیگر کاملاً ناشناس باقی ماندند.با این حال ، ما به مقصد رسیدیم ، می دانیم که با آن 11 هاپ فاصله است و مدت زمان رفت و برگشت 13.773 و 14.715 میلی ثانیه بود.مخفی کردن نام دستگاه هاهمانطور که دیدیم ، بعضی اوقات که شامل نام دستگاه ها است منجر به نمایش نامرتب می شود. برای سهولت در مشاهده داده ها ، می توان از گزینه -n استفاده کرد.برای انجام این کار دستور زیر را وارد میکنیمtraceroute -n blarneycastle.ieاین امر باعث می شود که انتخاب تعداد زیاد برای زمان سفرهای رفت و برگشت ، آسان تر باشد.هاپ 3 کمی شک برانگیز به نظر می رسد. دفعه قبل ، فقط دو بار پاسخ داد و این بار ، فقط یک بار پاسخ داد. البته در این سناریو از کنترل ما خارج است.با این حال اگر ما در حال بررسی شبکه شرکتمان هستیم مطمئنا عمیق شدن و بررسی کردن آن node ارزش زیادی دارد.تنظیمات مقدار Timeout در Tracerouteشاید اگر ما مدت timeout اصلی که پنج ثانیه است را بیشتر کنیم. ما پاسخ های بیشتری بگیریم. برای اینکار ما از گزینه -w استفاده می کنیم تا آن را به هفت ثانیه برسانیم.دستور زیر را تایپ میکنیم.traceroute -w 7.0 blarneycastle.ieتغییرات چندانی ایجاد نشد. بنابراین پاسخ ها به احتمال زیاد time out شدند ( زمانشان تمام شدند). به احتمال زیاد هاپ های ناشناس به طور مخفیانه عمل می کنند.تنظیم تعداد تست هابه صورت پیشفرض traceroute سه عدد پکت UDP به هر هاپ میفرستد. ما می توانیم از گزینه ی -q برای بالا یا پایین بردن این مقدار تنظیم کنیم.برای بالا بردن سرعت تست traceroute ما دستور زیر را استفاده می کنیم تا تعداد پکت های UDP کاهش یابد.traceroute -q 1 blarneycastle.ieدر اینجا ما یک پویشگر را به هر هاپ ارسال کردیم.تنظیم مقدار اولیه TTLما میتوانیم مقدار اوایه TTL را به چیزی غیر از یک تغییر بدهیم. و از بعضی از هاپ ها بگذریم معمولاً مقادیر TTL برای اولین سری از تست ها روی 1 تنظیم می شوند. برای سری یعدی از تست بر روی 2 تنظیم میشود. و به به همین ترتیب. اگر ما آن را بر روی 5 تنظیم کنیم ، در این تست تلاش می کند تا به هاپ 5 رفته و از یک تا چهار را رد می کند.از آنجا که می دانیم وب سایت موزد نظر 11 هاپ از این رایانه فاصله دارد ، برای رفتن مستقیم به هاپ 11 موارد زیر را تایپ می کنیم:traceroute -f 11 blarneycastle.ieکه یک گزارش فشرده و خوب از وضعیت اتصال به مقصد ، به ما می دهد.استفاده از Traceroute در ویندوزسوئیچ های مختلف (فرامین فرعی) با ابزار tracert در دسترس هستند که به شما امکان می دهد نحوه رفتار خود را پیکربندی کنید.Traceroute کردن به یک وبسایت مشخصtracert <URL>برای ردیابی مسیر (Traceroute) به یک دامنه خاص ، در محیط کامند پرامت دستور زیر را وارد کنید.tracert www.meridianoutpost.comممکن است چند دقیقه طول بکشد تا ردیابی کامل شود. برای لغو Traceroute میتوان از ترکیب دکمه های Control و C استفاده کرد.تنظیم کردن حداکثر تعداد هاپ برای ردیابیtracert -hبه طور پیش فرض ، tracert مسیر کاملی را از رایانه ما به میزبان از راه دور ردیابی می کند. با این حال ، گاهی اوقات ما فقط نیاز به یافتن یک روتر خاص یا تعداد مشخصی از هاپ داریم. محدود کردن ردیابی فقط به تعداد مشخصی از هاپ ها به ما کمک می کند تا به طور کارآمدتری از tracert استفاده کنیم. با استفاده از سوئیچ -h ، می توانیم حداکثر تعداد هاپ مورد نظر را تعیین کنیم.برای مثال ، برای ردیابی 6 هاپ تا دامنه ممورد نظر دستور زیر را وارد می کنیم.tracert -h 6 www.meridianoutpost.comغیر فعال کردن Reverse Lookuptracert -dبه طور پیش فرض ، tracert برای شناسایی نام میزبان برای هر هاپ ، جستجوی IP معکوس را انجام می دهد. اگر هیچ نام میزبانی در دسترس نباشد ، قبل از اینکه به هاپ بعدی ادامه یابد ، tracert باید منتظر وقفه باشد. انتظار برای مهلت زمانی می تواند بیشترین زمان لازم برای اجرای کامل ردیابی را به خود اختصاص دهد. اگر دانستن نام میزبان برای تلاش برای عیب یابی مهم نیست ، می توانیم با استفاده از کلید -d از این جستجو صرف نظر کنیم.tracert -d www.meridianoutpost.comنتیجهآموزش و کاربردهای Traceroute را برای شما شرح دادیم. در صورت بروز اشکال یا هرگونه سوال آن را از طریق کامنت ارسال کنید.

ادامه مطلب
دستورات مهم لینوکس

دستورات مهم لینوکس

دستورات مهم لینوکسامروزه سیستم عامل های مبتنی بر لینوکس محبوبیت خاصی میان کاربران پیدا کرده اند. در این مقاله برخی از دستورات مهم لینوکس را به شما آموزش خواهیم داد.لینوکس، هسته یک سیستم عامل است همچنین این سیستم عامل یک نرم افزار رایگان و منبع باز است. با ایجاد یک تغییر کوچک در Linux می توانید این مورد را با نام خود به اشتراک بگذارید. توزیع کنندگان لینوکس زیادی وجود دارد و به آنها distros گفته می شود. بعضی از آنها عبارتند از:Ubuntu LinuxRed Hat Enterprise LinuxLinux MintDebianFedoraArch LinuxManjaroلینوکس سریع ، قابل اعتماد و رایگان است. بزرگترین مشکل استفاده از سرور مبتنی بر ویندوز قیمت آن است. با لینوکس می توان این مشکل را برطرف کرد. سیستم عامل 80٪ تلفن های هوشمند جهان نیز مبتنی بر لینوکس است. به عنوان مثال ، هسته لینوکس در اندروید ساخته شده است. برای مثال کوچکی از امنیت ، بسیاری از ویروس های رایانه ای در جهان بر ویندوز تأثیر می گذارند ، اما تاثیری بر لینوکس ندارد.ترمینال لینوکسترمینال یک نرم افزار ساده است. دستوراتی را که کاربران وارد کرده اند می گیرد و آنها را برای پردازش به سیستم عامل می دهد. نتایج دستورات و خروجی روی خود را نشان می دهد. در واقع منظور این است که ترمینال پل اصلی بین سیستم عامل و کاربر است. توزیع کنندگان لینوکس با رابط کاربری گرافیکی (GUI) ارائه می شوند ، اما ، هر لینوکس دارای یک CLI (رابط خط فرمان) است.دستورات لینوکسpwdوقتی ترمینال را برای اولین بار باز می کنیم ، این پرونده در پرونده اصلی کاربری که وارد آن شده اید شروع می شود. اگر می خواهیم بدانیم در کدام پرونده هستیم ، دستور pwd را می نویسیم.lsاز دستور ls برای دانستن اینکه کدام فایل ها در فهرست فعلی شما هستند استفاده می شود. با استفاده از دستور ls -a می توانید تمام فایل های مخفی را مشاهده کنید.cdCd دستوری است که برای رفتن به یک فهرست استفاده می شود. به عنوان مثال ، اگر در پوشه Home هستید و می خواهید به پوشه Downloads بروید ، می توانید cd Downloads را تایپ کنید. به یاد داشته باشید که این دستور به حروف کوچک و بزرگ حساس است و شما باید نام پوشه را دقیقاً همانطور که در شکل قرار دارد تایپ کنید. اگر می خواهید از پوشه بالایی خارج شوید ، از دستور cd .. استفاده کنید.mkdir و rmdirاز دستور mkdir درصورت استفاده از پوشه یا فولدر استفاده می شود. به عنوان مثال ، اگر می خواهید دایرکتوری به نام TEST ایجاد کنید ، می توانید mkdir TEST را تایپ کنید. Rmdir دستوری است که برای حذف فهرست استفاده می شود. با این حال ، rmdir فقط می تواند برای حذف یک فهرست خالی استفاده شود. اگر می خواهید پوشه ای پر را حذف کنید ، باید از دستور rm -r name folder استفاده کنید.touchاز دستور touch برای ایجاد یک فایل استفاده می شود. این فایل می تواند هر چیزی باشد. به عنوان مثال ، می توانید یک فایل zip یا فایل txt با این دستور ایجاد کنید.man و -helpاز دستور man برای کسب اطلاعات بیشتر در مورد نحوه استفاده از یک دستور استفاده می شود. به عنوان مثال ، man touch صفحات دستی فرمان touch را نشان می دهد. اگر یک دستور را تایپ کنیم و -help را به آن اضافه کنیم ، همان نتیجه خروجی را به صورت دستی می گیریم.cpاز دستور cp برای تهیه کپی از طریق خط فرمان استفاده می شود. این دستور دو بخشی است. محل فایلی که قرار است کپی شود ، دومین بخش مکان برای کپی است.mvاز دستور mv برای انتقال پرونده ها از طریق خط فرمان استفاده می شود. همچنین می توانیم از دستور mv برای تغییر نام یک فایل استفاده کنیم. به عنوان مثال ، ما می خواهیم نام فایل copytest.txt را به newcopyTest.txt تغییر دهیم. ما می توانیم این کار را با دستور mv copytest.txt newcopytest.txt انجام دهیم.nano و viNano و vi ویرایشگرهای متنی هستند که در حال حاضر روی خط فرمان Linux نصب شده اند. Nano یک ویرایشگر متن خوب است که کلمات کلیدی رنگارنگ را نمایش می دهد و بیشتر زبان ها را تشخیص می دهد. Vi ساده تر از nano است. با استفاده از این دستور می توانید یک فایل جدید ایجاد کنید یا می توانید فایل را با استفاده از این ویرایشگر ویرایش کنید.sudosudo یک دستور معمول در خط فرمان لینوکس است. sudo از "SuperUserDo" می آید. اگر عملیاتی نیاز به استفاده از امتیازات root دارد یا دسترسی بالا نیاز به دسترسی دارد ، این دستور را می توان استفاده کرد. به عنوان مثال ، با استفاده از دستور "sudo su" ، ما می توانیم پردازش را با اختیار مدیر بر روی سیستم شروع کنیم.سخن پایانیونتیجه این است که لینوکس دنیایی بی پایان است و با دستورات مهم لینوکس که در بالا ذکر کردیم ، مبتدیان می توانند بدون هیچ مشکلی اولین قدم های خود را بردارند.

ادامه مطلب
آموزش پیدا کردن و تغییر دایرکتوری در پایتون

آموزش پیدا کردن و تغییر دایرکتوری در پایتون

آموزش پیدا کردن و تغییر دایرکتوری در پایتونهنگام کار با پرونده ها در دایرکتوری ها در پایتون ، همیشه استفاده از مسیرهای مطلوب ایده خوبی است. با این حال ، اگر در حال کار با مسیرهای نسبی هستید ، باید با مفهوم دایرکتوری فعلی و آموزش پیدا کردن و تغییر دایرکتوری در پایتون آشنا شوید.هنگامی که یک اسکریپت پایتون را اجرا می کنید ، دایرکتوری کار فعلی به دایرکتوری ای که اسکریپت از آن اجرا می شود ، تنظیم می شود.پیدا کردن دایرکتوری فعلی در پایتونروشgetcwd() از ماژول سیستم عامل در پایتون، تابع یک رشته که شامل مسیر کامل دایرکتوری فعلی است.os.getcwd()برای استفاده از روش های ماژول os ، باید ماژول را در بالای پرونده وارد کنید.در زیر مثالی آورده شده است که نحوه چاپ دایرکتوری کار فعلی را نشان می دهد:# Import the os moduleimport os# Get the current working directorycwd = os.getcwd()# Print the current working directoryprint("Current working directory: {0}".format(cwd))# Print the type of the returned objectprint("os.getcwd() returns an object of type: {0}".format(type(cwd)))خروجی چیزی شبیه به این خواهد بود:Current working directory: /home/linuxize/Desktopos.getcwd() returns an object of type: <class 'str'>اگر می خواهید پوشه ای را که اسکریپت در آن قرار دارد پیدا کنید ، از os.path.realpath(__file__) استفاده کنید .تغییر دایرکتوری فعلی در پایتونبرای تغییر دایرکتوری فعلی در پایتون ، از روشchdir() استفاده کنید.os.getcwd(path)این روش یک آرگومان را می پذیرد ، مسیر دایرکتوری که می خواهید به آن تغییر دهید. آرگومان path می تواند مطلق یا نسبی باشد.به عنوان مثال:# Import the os moduleimport os# Print the current working directoryprint("Current working directory: {0}".format(os.getcwd()))# Change the current working directoryos.chdir('/tmp')# Print the current working directoryprint("Current working directory: {0}".format(os.getcwd()))خروجی چیزی شبیه به این خواهد بود:Current working directory: /home/linuxize/DesktopCurrent working directory: /tmpاستدلال ارائه شده به روش chdir() باید یک دایرکتوری باشد ، در غیر این صورت NotADirectoryError استثنا مطرح می شود. اگر دایرکتوری مشخص شده وجود نداشته باشد ، یک FileNotFoundErrorمطرح می شود. اگر کاربری که تحت آن اسکریپت اجرا می شود مجوزهای لازم را ندارد ، یک PermissionError مطرح می شود.# Import the os moduleimport ospath = '/var/www'try: os.chdir(path) print("Current working directory: {0}".format(os.getcwd()))except FileNotFoundError: print("Directory: {0} does not exist".format(path))except NotADirectoryError: print("{0} is not a directory".format(path))except PermissionError: print("You do not have permissions to change to {0}".format(path))نتیجهدر این مقاله آموزش پیدا کردن و تغییر دایرکتوری در پایتون را به شما آموزش دادیم. برای پیدا کردن دایرکتوری کار فعلی در پایتون ، از os.getcwd() استفاده کنید و برای تغییر دایرکتوری کار فعلی ، از os.chdir(path) استفاده کنید .

ادامه مطلب
آموزش بازیابی یا ریست پسورد در CentOS 7

آموزش بازیابی یا ریست پسورد در CentOS 7

آموزش بازیابی یا ریست پسورد در CentOS 7اگر به هر دلیلی پسورد رووت خود نمیدانید و به سرور خود نمیتوانید از طریق SSH متصل بشوید این آموزش گزینه خوبی برای شما است. زیرا در وان سرور ما دسترسی کنسول مدیریتی را به مشتریان می دهیم . تا در نهایت شما به انجام انواع فعالیت ها بدون داشتن حتی دسترسی با SSH بپردازید. در این مقاله ما به آموزش بازیابی یا ریست پسورد در سیستم عامل CentOS 7 می پردازیم.بازیابی پسورد در CentOS 6 و CentOS 7 متفاوت است. در مقاله های قبل آموزش ریست پسورد centos 6 را به شما آموختیم .بازیابی یا ریست پسورد در CentOS 7ابتدا سرور را ری استارت کنید، سپس با فشار دادن دکمه های جهت بالا پایین به محیط گراب وارد شوید.پس از انتخاب کرنل مورد نظر از دکمه e برای ویرایش آن استفاده کنید.بعد از آن به خط 16 بروید جایی که با ro شروع می شود.در این قسمت باید ro را به rw تغییر بدهید سپس در انتهای آن init=/sysroot/bin/sh را اضافه کنید.سپس برای خروج از ترکیب کلید های control و x استفاده میکنیم و بعد از ذخیره کردن تغییرات مورد نظر به حالت single user تغییر حالت می دهیم.در این مرحله با زدن دستور زیر به سیستم یا سرور مورد نظر دسترسی پیدا میکنیم.chroot /sysrootدر آخر برای تغییر پسورد root از دستور زیر استفاده می کنیم.passwd rootنتیجه :ما در این مقاله آموزش ریست پسورد در سیستم عامل CentOS 7 را به شما آموزش دادیم. درصورت بروز مشکل یا سوال از طریق کامنت آن را بیان کنید.

ادامه مطلب
آموزش بک آپ گرفتن در سی پنل (cPanel)

آموزش بک آپ گرفتن در سی پنل (cPanel)

آموزش بک آپ گرفتن در سی پنل (cPanel)پایه ی یک وبسایت اطلاعات و دیتایی است که در آن قرار دارد. و ما باید حساسیت بالایی نسبت به اطلاعات سایت خود داشته باشیم. مهم‌ترین عنصری که در کسب‌وکار ما وجود دارد اطلاعات سایت می‌باشد بنابراین ما باید از اطلاعات سایت خود به نحو احسنت نگهداری کنیم. در این مقاله به نحوه ی فول بک آپ گرفتن در در سی پنل (cPanel) می پردازیم.اگر در کسب‌و‌کار خودمان صاحب سایتی هستیم لزوم بکاپ گیری از سایت و ریستور کردن اطلاعات برای ما بسیار با اهمیت است.فول بک آپ گرفتن در سی پنل (cPanel)برای تهیه یک فول بک آپ از اطلاعات سایت مراحل زیر را دنبال کنید:ورود به صفحه ی سی پنلابتدا باید با توجه به مشخصات دریافتی هاست به صفحه ی cPanel خود برویم و با نام کاربری (username) و همچنین پسورد (password) به صفحه ی cPanel خود ورود یا login کنیم.ورود به قسمت Backupپس از ورود به صفحه ی cPanel در پنجره ی Files به قسمت Backup میرویم.محیط Backupسربرگ Backup محیطی همانند تصویر زیر است.برای Full Backup گرفتن بر روی دکمه ی Download a Full Website Backup کلیک می نماییم. که صفحه ی باز شده محیطی همانند تصویر زیر است.در سربرگ Generate a Full Backup قسمتی به نام Backup Destination وجود دارد که مقصد بک آپ را میتوانیم انتخاب کنیم به عنوان مثال Home Directory مورد نظر ما است. سپس در فیلد Email Address ایمیل خود را وارد می کنیم. ودر نهایت بر روی دکمه ی Generate Backup کلیک میکنیم تا از کل سایت یک Backup یا پشتیبان بگیریم.تولید Backupپس از کلیک بر روی دکمه ی Generate Backup در صفحه جدید با پیام Full Backup in Progress مواجه می شویم و در ادامه ی پیام اطلاع میدهد که بک آپ در حال کامل شدن است و پس از تکمیل توسط ایمیل به اطلاع داده می شود.پس از اینکه Email دریافت کردیم و مطمئن شدیم که بک آپ تکمیل شده است دوباره به صفحه یا سربرگ Backup برمیگردیم تا بک آپ را دانلود کنیم.مشاهده می کنید که در قسمت Backups Available for Download بک آپ ما آماده شده و می توانیم آن را دانلود کنیم.نتیجه:در این مقاله آموزش فول بک آپ گرفتن از سی پنل (cPanel) را به شما آموزش دادیم. لطفا درصورت بروز مشکل سوالات خود را از طریق کامنت ارسال کنید.

ادامه مطلب
آموزش افزودن دامین در سی پنل (Cpanel)

آموزش افزودن دامین در سی پنل (Cpanel)

آموزش افزودن دامین در سی پنل (Cpanel)اگر دامنه جدیدی خریداری کرده اید و می خواهید از آن در وب سرور خود استفاده کنید ، ابتدا باید دامنه را به وب سرور خود اضافه کنید. اما قبل از آن ، باید اطمینان حاصل کنید که DNS دامنه از قبل به سرور وب شما ست شده شده است. در این مقاله به آموزش افزودن دامین در سی پنل (Cpanel)میپردازیم. افزودن دامین در سی پنلبرای افزودن دامین جدید به سی پنل مراحل زیر را دنبال کنید:لاگین کردن در Cpanelدر سی پنل خود همانند تصویر زیر لاگین کنید. توجه داشته باشید که از نام کاربری و پسوردی که دریافت کردید استفاده کنید.رفتن به قسمت Addon Domainsدر cpanel خود و در بخش Domains بر روی Addon Domains کلیک نمایید.افزودن دامیندر جای خالی نام دامنه جدید را وارد کنید. نام FTP و دایرکتوری به صورت خودکار ایجاد می شوند. برای حساب نیز یک پسورد انتخاب کنید.بعد از پر کردن اطلاعات بر روی دکمه ی Add Domain کلیک نمایید.موفقیت آمیز بودن کار و نتیجهو در آخر پیامی با عنوان موفقیت آمیز بودن ایجاد دامین جدید ظاهر میشود.در صورت داشتن سوال و یا بروز مشکل در افزودن دامین جدید در Cpanel با بخش پشتیبانی در ارتباط باشید.

ادامه مطلب
تانل IPIP

تانل IPIP

در این محث آموزشی به نحوه ی تانلینگ از نوع IPIP میپردازیم .ایجاد تانل IPIP بین شبکه ها :زمینه نیاز به ایجاد یک تانل خصوصی بین 2 شبکه و ارسال هر IP در سرور A به سرور B از طریق این تانل جدید است.IP از طریق تونل از سرور A به سرور B هدایت می شود ، سپس از طریق B به یک رابط دیگر و سپس به سرور C هدایت می شود. در بازگشت ، بسته ها مسیرهای اصلی خود را دنبال می کنند.کاربر اتصال پورت را از سرور A بررسی می کند.netcat 122.195.129.133 2150مسیر موجود (شماره 2 در A) آن را به رابط یا interface tunnel-b هدایت می کند ، درخواست از طریق تونل به سرور B می رود.مسیر (شماره 2 در B) آن را به رابط دیگری هدایت می کند ، p1p1 ، بسته از B: p1p1 به سرور خارجی C می رود.سرور C با یک بسته پاسخ می دهد ، به رابطی که از آن دریافت کرده است ، p1p1بسته برگشتی به tunnel2 (مسیر) برمی گردد ، بسته برگشتی tunnel-a> tunnel-b می رود (از طریق Gateway مسیر شماره 1 در B)کاربر پاسخ را از طریق eth0 دریافت می کند (از طریق مسیر شماره 1 در A)تاسیس یا Setup  :در هر دو سرور ، ماژول TUN را اضافه میکنیمmodprobe tunmodprobe ip_tunnelحالت tunnel را در هر دو سرور بررسی میکنیمسرور A :root@serverA# lsmod | grep tuntunnel4 13252 1 ipipip_tunnel 25163 1 ipiptun 31665 0سرور B :[root@serverB]# modprobe tun[root@serverB]# lsmod | grep tuntun 27141 0IP Forwarding :IP Forwarding   را فعال می کنیم[root@xxx ]# sysctl net.ipv4.ip_forwardnet.ipv4.ip_forward = 0سپس :vi /etc/sysctl.confaddnet.ipv4.ip_forward = 1reload sysctlsysctl -p /etc/sysctl.confاتصال پایه را آزمایش میکنیم :هر دو باید بتوانند به یکدیگر متصل شوند (برای بررسی اتصال از پایتون SimpleHTTPServer + netcat استفاده کنید)سرور Aroot@serverA# python -m SimpleHTTPServer 8555سرور B[root@serverB]# nc 172.31.23.254 8555 -vNcat: Version 7.50 ( https://nmap.org/ncat )Ncat: Connected to 172.31.23.254:8555.و بالعکس[root@serverB centos]# python -m SimpleHTTPServer 8556Serving HTTP on 0.0.0.0 port 8556 ...root@serverA /e/s/network-scripts# nc 172.31.23.64 8556 -vNcat: Version 7.50 ( https://nmap.org/ncat )Ncat: Connected to 172.31.23.64:8556.اگر آنها نتوانند متصل شوند ، تونل کار نمی کند.ایجاد تونل هاتونل موقتایجاد تونل در سرور A ، اختصاص دادن یک IP به این رابط تونل جدید ، در اینجا با استفاده از 192.168.5.1 عمومی برای A و 192.168.5.2 برای B استفاده می کنیم.root@serverA# ip tunnel add tunnel-b mode ipip remote 172.31.23.64 local 172.31.23.254root@serverA# ip link set tunnel-b uproot@serverA# ip addr add 192.168.5.1/24 dev tunnel-binterface تونل جدید را بررسی کنیدroot@serverA# ip a8: tunnel-b@NONE: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 8981 qdisc noqueue state UNKNOWN group default qlen 1000 link/ipip 172.31.23.254 peer 172.31.23.64 inet 192.168.5.1/24 scope global tunnel-b valid_lft forever preferred_lft foreverهمین کار را در سرور B انجام میدهیمroot@serverB# ip tunnel add tunnel-a mode ipip remote 172.31.23.254 local 172.31.23.64root@serverB# ip link set tunnel-a uproot@serverB# ip addr add 192.168.5.2/24 dev tunnel-aIP جدید را بررسی می کنیم4: tunnel-a@NONE: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 8981 qdisc noqueue state UNKNOWN link/ipip 172.31.23.64 peer 172.31.23.254 inet 192.168.5.2/24 scope global tunnel-b valid_lft forever preferred_lft foreverسعی میکنیم از A تا B پینگ را پینگ بگیریمserverA> ping 192.168.5.2باید قابلیت پینگ را داشته باشد.اتصال را مانند بخش B آزمایش کنید ، اما IP را به آدرس IP رابط تونل تغییر دهید ،تست کردت سرور A به Broot@serverA# python -c 'import BaseHTTPServer as bhs, SimpleHTTPServer as shs; bhs.HTTPServer(("192.168.5.1", 8331), shs.SimpleHTTPRequestHandler).serve_forever()'root@serverB # nc 192.168.5.1 8331 -vNcat: Version 7.50 ( https://nmap.org/ncat )Ncat: Connected to 192.168.5.1:8331.تست کردت سرور B به A  :root@serverB# python -c 'import BaseHTTPServer as bhs, SimpleHTTPServer as shs; bhs.HTTPServer(("192.168.5.2", 8331), shs.SimpleHTTPRequestHandler).serve_forever()'root@serverA# nc 192.168.5.1 8331 -vNcat: Version 7.50 ( https://nmap.org/ncat )Ncat: Connected to 192.168.5.2:8331.تانل دائمیبرای ایجاد یک تونل دائمی که از شبکه و + راه اندازی مجدد ماشین باقی  بماند ،در سرور Aroot@serverA# vim /etc/sysconfig/network-scripts/ifcfg-tunnel-aTYPE=IPIPBOOTPROTO=noneDEVICE=tunnel-bONBOOT=yesMY_INNER_IPADDR=192.168.5.1/30 // Tunnel IPMY_OUTER_IPADDR=172.31.23.254 // primary local IP addressPEER_OUTER_IPADDR=172.31.23.64 // remote peer primary IPاین تونل پس از راه اندازی مجدد ، با مدیریت مدیر شبکه ، در محل قرار می گیرد.بر روی سرور Broot@serverB# vim /etc/sysconfig/network-scripts/ifcfg-tunnel-bTYPE=IPIPBOOTPROTO=noneDEVICE=tunnel-aONBOOT=yesMY_INNER_IPADDR=192.168.5.2/30 // Tunnel IPMY_OUTER_IPADDR=172.31.23.64 // primary local IP addressPEER_OUTER_IPADDR=172.31.23.254 // remote peer primary IPابتدا این اینترفیس را در سرور B بالا بیاوریدifup tunnel-aحال بر روی سرور Aifup tunnel-bبرای ری استارت کردن سرور A:ifdown tunnel-aifup tunnel-aاز هر تانل پینگ بگیرید تا مطمئن شوید که قابل پینگ گیری هستندوضعیت تونل را بررسی کنیدip tunnel showیک مسیر اضافه کنیدمسیر Gatewayبرای برقراری ارتباط متقابل بین سرور A و سرور B ، باید یک Gateway دروازه داشته باشید ، در غیر این صورت بسته ها فقط 1 طرفه جریان می یابند (A> B)در A و B ، پس از بالا آمدن رابط یا اینترفیس شبکه تونل ، این مسیر دروازه باید در حال حاضر  بالا باشد192.168.1.0 0.0.0.0 255.255.255.252 U 0 0 0 tunnel-a (or tunnel-b)شما همچنین می توانید آن را به صورت دستی اضافه کنید ،route add -net 192.168.1.0 netmask 255.255.255.0 dev tunnel-aمسیر موقتبرای مسیر یابی IP ها از سرور A به سرور B از طریق Tunnel ، یک مسیر اضافه کنید (در سرور A)root@serverA# ip route add 122.195.129.133 dev tunnel-bاین مسیر را برسی کنیدroot@serverA# ip route get 122.195.129.133122.195.129.133 via 192.168.5.2 dev tunnel-b src 192.168.5.1Traceroute را اجرا کنید تا ببینید IP به کجا می رود ،root@serverA# traceroute 122.195.129.133traceroute to 122.195.129.133 (192.195.129.133), 30 hops max, 60 byte packets 1 * * * 2 * * *در سرور B ، برای بسته های ورودی به رابط Tunnel گوش دهید ،root@serverB# tcpdump -i tunnel-atcpdump: verbose output suppressed, use -v or -vv for full protocol decodelistening on tunnel-a, link-type RAW (Raw IP), capture size 262144 bytes15:02:03.217834 IP ip-192-168-5-1.ec2.internal.56547 > 122.195.129.133.33466: UDP, length 3215:02:03.217839 IP ip-192-168-5-1.ec2.internal.56417 > 122.195.129.133.33467: UDP, length 3215:02:03.217871 IP ip-192-168-5-1.ec2.internal.42617 > 122.195.129.133.33468: UDP, length 32در سرور B ، برای هدایت از تونل به رابط p1p1 ، یک مسیر اضافه کنید ،122.195.129.133 192.168.28.17 255.255.255.255 UGH 100 0 0 p1p1مسیر دائمی :برای اینکه مسیر را دائمی نگه دارید ، پرونده مسیر را (در سرور A) اضافه کنید ، این IP شما را به تونل سرور B هدایت می کند.root@serverA# vim /etc/sysconfig/network-scripts/route-tunnel-b122.195.129.133 via 192.168.5.2 metric 50اکنون این مسیر را فعال کنید/etc/sysconfig/network-scripts/ifup-routes route-tunnel-bبررسی کنید که مسیر ( route) شما اکنون در جدول مسیریابی وجود داردroot@serverA# route -nKernel IP routing tableDestination Gateway Genmask Flags Metric Ref Use Iface0.0.0.0 172.31.23.1 0.0.0.0 UG 0 0 0 eth0172.31.23.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0192.168.5.0 0.0.0.0 255.255.255.0 U 0 0 0 tunnel-b122.195.129.133 192.168.5.2 255.255.255.255 UGH 50 0 0 tunnel-bدوباره traceroute (سرور A) و tcpdump (روی سرور B) را اجرا کنید تا مطمئن شوید سرور B بسته های ورودی را دریافت می کند.پاکسازی تونل ها :با استفاده از دستور IP ، رابط تونل را غیرفعال کنیدip link set dev <tunnel name> downاینترفیس را حذف کنیدip link delete <tunnel name>عیب یابیاگر ترافیک را از سرور A به سرور B هدایت کنید ، گاهی اوقات سرور B به جای IP ، اتصال خروجی شما را به عنوان IP تونل هدایت می کند و باعث قطع شدن اتصال می شود.یعنی انجام TCP Dump روی سرور B ، اینترفیس p1p1 ،root@serverB:]# tcpdump -i p1p1 | grep 207.17.44.10223:22:16.157069 IP 192.168.2.1.52896 > 207.17.44.102.41811: Flags [S], seq 804236576, win 14400, options [mss 1440,sackOK,TS val 3076723108 ecr 0,nop,wscale 10], length 0در اینجا IP نشان داده شده IP رابط تونل است ، این درخواست کار نخواهد کرد زیرا نقطه پایانی IP تونل را تشخیص نمی دهد.در این حالت ، شما باید عنوان بسته بسته خروجی (در سرور B) را به IP خود تغییر دهید ، نه IP تانل مقصد.root@serverB> iptables -t nat -A POSTROUTING -d 207.17.44.102 -j MASQUERADEیا توسط سورس یا منبع :root@serverB> iptables -t nat -A POSTROUTING -p tcp -s 192.168.5.1 -j MASQUERADEدر این مثال ، 192.168.38.21 IP رابط p1p1 در سرور B است.اکنون اتصال کار خواهد کرد ،[23:22 root@serverB:]# tcpdump -i p1p1 | grep 207.17.44.102tcpdump: verbose output suppressed, use -v or -vv for full protocol decodelistening on p1p1, link-type EN10MB (Ethernet), capture size 262144 bytes23:28:10.299134 IP serverB.59888 > 207.17.44.102.41811: Flags [F.], seq 19064846, ack 4239206719, win 15, options [nop,nop,TS val 3077077251 ecr 238689707], length 0

ادامه مطلب