در این مطلب میخوانیم که چگونه یک کابل شبکه مناسب، همراه با خصوصیات آن را بشناسیم، برای پروژه شبکه محلی کدام کابل شبکه را انتخاب کنیم. همچنین برندهای برتر بازار ایران را معرفی خواهیم کرد و راهنمایی برای خرید انواع کابل شبکه را در اختیار شما قرار میدهیم.
کابل شبکه چیست؟
کابل شبکه یکی ازمهم ترین سخت افزارشبکه است که وظیفه انتقال داده را بصورت محلی برعهده دارد.هدف اصلی ایجاد یک شبکه ، ایجاد ارتباط بین اجزای شبکه، اشتراک گذاری منابع وانتقال داده است. اگردقت کرده باشید هدف اصلی شبکه بدون کابل شبکه تامین نمیشود.
انواع کابل شبکه و طبقهبندی چگونه است ؟
رایجترین کابل شبکه زوج به هم تابیده است که دارای چهارجفت سیم است. این سیمها به دور یکدیگر میپیچند تا اثر نویزو تداخل خارجی را کاهش دهند.
کابل شبکه در انواع مختلف وجود دارد که دو نوع دارای شیلد و فویلد محافظتی (SFTP) یا بدون شیلد محافظتی (UTP) از پرمصرفترین آنها میباشد. تفاوت این دو در این است که کابل دارای محافظ یا SFTP دارای دو لایه عایق اضافی محافظتی است و از دادهها در برابر نویز و تداخلات خارجی محافظت میکند.
کابلهای شبکه در رده و دستههای مختلف تولید میشوند، ردههای بالاتر پهنای باند بالاتری دارند و با سرعت بالاتری داده ارسال میکنند.
درجدول زیر، مشخصات سرعت و پهنای باند هریک ازدسته کابل شبکه و وضعیت محافظ یا بدون محافظ بودن آنها آمده است.
پهنای باند
سرعت درصد متر وضعیت محافظ دسته
100MHz
10/100Mbps بدون محافظ Cat 5
100MHz
1000Mbps / 1Gbps بدون محافظ Cat 5e
250MHz>
1000Mbps / 1Gbps بامحافظ یا بدون محافظ Cat 6
500MHz
10000Mbps / 10Gbps با محافظ Cat 6a
600MHz
10000Mbps / 10Gbps با محافظ Cat 7
2000MHz
*25Gbps or 40Gbps با محافظ Cat 8
انواع کابل شبکه لگراند و طبقهبندی آنها
لگراند کابلهای شبکه خود را در طبقهبندیهای مختلف با توجه به استانداردهای موجود تولید کرده است.
از جمله کابل شبکه لگراند میتوان به Cat5e ,Cat6, Ca6a , Cat7, Cat7A , Cat8 اشاره کرد. همچنین در نظر بگیرید که از لحاظ ساختاری نیز این تنوع بیشتر خواهد شد.
به طور مثال کابل شبکه cat6 در انواع بدون شیلد و فویلد (UTP) ، دارای فویلد (FTP) ، دارای فویلد و شیلد (SFTP) و... وجود دارد.
راههای تشخیص کابل شبکه لگراند
شرکت لگراند برای هریک از دسته کابلهای خود، رنگی را در نظر گرفته است. خاکستری مختص Cat 5، آبی برای Cat6 و زرد برایCa6a تعریف شده است. پوشش بیرونی کابل شبکه لگراند Cat7 نیز به رنگ زرد است.
برندهای دیگرهم در دارای تنوع رنگ هستند، پس برای تشخیص کابل شبکه لگراند نمیتوان تنها روی رنگ آن اکتفا کرد. ازاین رو میتوان گفت تنها راه تشخیص کابل شبکه لگراند رنگ پوشش کابل نیست. یکی از راههای تشخیص این کابل وزن آن است، وزن تمامی محصولات این شرکت توسط این شرکت اعلام شده است، مثلاUTP Cat5e در بسته بندی کارتن و با روکش PVC و متراژ305 متر باید وزنی معادل 9kg داشته باشد.
یکی دیگر از راههای تشخیص کابل شبکه لگراند توجه به جنس مغزی است، جنس مغزی باید از جنس مس با خلوص صد درصدی است همین عامل سبب مرغوبیت و انتقال سریع داده در کابل شبکه برند لگراند شدهاست.
آشنایی با انواع کابل شبکه نگزنس
کابل شبکه نگزنس یکی ازمرغوبترین کابلهای شبکه است. کابلهای این برند ازلحاظ سرعت، تکنولوژی واستاندارد دردستههای مختلفی قرار میگیرند.
کابل شبکه نگزنس در دو نوع روکش از جنس PVCو LSZH تولید میشود. تفاوت این دو در این است که روکشهای LSZH فاقد هالوژن هستند و درموقع آتش گرفتن از خود دود سمی تولید نمیکنند.
انواع کابل شبکه نگزنس
کابل شبکه نگزنس دردستههایCAT6 UTP , CAT6 SFTP, CAT6a, CAT6a SFTP, CAT6a UTP, CAT7 تولید و راهی بازار میشوند. نکته قابل توجه درمورد کابل شبکه نگزنس این است که دستههای پرکاربرد برای مصارف درونی و بیرونی بهینه شدهاند. این به این معنی است که کابلهای پرکاربرد دردو نوع خارجی و داخلی تولید میشوند، نوع خارجی دارای پوشش اضافی است و طوری طراحی شده که در برابرشرایط محیطی مقاوم باشد.
راههای تشخیص کابل شبکه نگزنس
درمیان انبوهی ازبرندهای کابل شبکه چگونه میتوان کابل شبکه نگزنس را تشخیص داد؟ این سوال کاملا به جاست، درست است روی پوشش تمامی کابلهای شبکه نگزنس نام آن درج شده است ولی برای تشخیص آن کافی نیست.
اولین شاخصه، شاخصه ظاهری است. کابل شبکه نگزنس در دو رنگ مشکی و نارنجی تولید میشود. روکش مشکی برای محیط بیرونی است و در برابر شرایط آب وهوایی خارجی مقاوم است و رنگ نارنجی برای شرایط درونی طراحی و ساخته شده است.
ولی این تمام ماجرا نیست، ظاهر کابل شبکه نگزنس برای تشخیص آن کافی نیست، برای تشخیص کابل شبکه نگزنس باید سرعت، وزن، قطر و پیچش استاندارد کابل شبکه نگزنس را بدانید.
راهنمای خرید کابل شبکه
خرید کابل شبکه مانند گذشته آسان نیست. درگذشته یک گزینه برای خرید کابل شبکه وجود داشت آن هم CAT5 بود، اکنون گزینههای دیگری مانند Cat5e، Cat6، CAT7 حتی CAT8 وجود دارد.
ازطرف دیگررقابت بین برندها هرروز بیشتر و بیشترمیشود وبرندها مجبورند برای این که از بازار رقابت حذف نشوند، به روز شوند. همه اینها کار انتخاب کابل برتر را سخت تر میکند.
بنابراین اگر قصد خرید کابل شبکه را دارید، اولین قدم این است که وقت بگذارید و نیازمندی شبکه خود را ارزیابی کنید تا ازمیان انبوهی ازبرندها بهترین را انتخاب کنید، مثلا اگر سرعت سایر تجهیزات شبکه شما بالاست انتخاب کابل شبکه پرسرعت انتخاب خوبی خواهد بود درغیراین صورت، این سرعت برای شما تامین نخواهد شد.
همچنین میتوانید برای انتخاب هرچه بهتر و خرید کابل شبکه با مشاورین فروشگاه تجهیزات شبکه کارن ارتباط برقرار کنید ومناسبترین کابل شبکه خود را خریداری کنید.
جمله معروفی میگوید: «ماجراجویی از نقطهای آغاز میشود که تصمیم میگیرید از منطقه امن خود خارج شوید.» اگر به مقالات منتشرشده در وبسایتهای پارسی نگاه کنید، متوجه میشوید که بخش عمدهای از آنها اشاره به این نکته دارند که برنامهنویسان دستمزدهای خوبی دریافت میکنند و در مقایسه با دیگر همتایان خود در صنعت فناوری اطلاعات بهلحاظ مالی زندگی نسبتا بهتری دارند.
اگر چند سالی است یک کار مشخص در حوزه فناوری اطلاعات انجام میدهید و دوست دارید کار هیجانبرانگیز جدیدی را امتحان کنید، اما مسیر جذابی در این زمینه نمیشناسید، توصیه من برنامهنویسی است؛ زیرا فرصتهای شغلی زیادی در اختیارتان قرار میدهد و اجازه میدهد با صنایع مختلفی در ارتباط باشید و از نزدیک با چالشها و مشکلات مختلف آشنا شده و راهکاری برای آنها ارائه دهید. علاوه بر این، برنامهنویسی مزیت بزرگی در اختیارتان قرار میدهد و اجازه میدهد بهعنوان یک آزادکار با شرکتها قراردادهایی منعقد کنید و در وقت آزاد خود روی پروژهها کار کنید. اگر کاربری هستید که ایدهای در زمینه ساخت یک برنامه کاربردی یا بازی کامپیوتری برای پلتفرمهای همراه مثل اندروید دارد، باید بگویم که برنامهنویسی حرفه مناسبی برای شما است. همچنین، یادگیری برنامهنویسی در مقایسه با دیگر مهارتهای موردنیاز صنعت فناوری اطلاعات مثل امنیت و شبکه نسبتا سادهتر است. همانگونه که اشاره کردم، برنامهنویسان این انتخاب را دارند که برای خود یا بهعنوان فریلنسر کار کنند و در هر ساعت از شبانهروز و هر مکانی کدنویسی کنند. بهطور مثال، میتوانید به خارج از شهر بروید و همزمان با لذت بردن از طبیعت بکر، کدنویسی انجام دهید. تنها ابزاری که به آن نیاز دارید یک لپتاپ و در صورت لزوم یک ارتباط اینترنتی است.
تقریبا تمامی صنایع و سازمانها نیازمند توسعهدهندگان وب و برنامهنویسان هستند. بد نیست بدانید که اگر در این زمینه استعداد ذاتی داشته باشید، در کوتاهترین زمان جایگاه خود را پیدا خواهید کرد و حتا این شانس را پیدا میکنید که در زمینههای تخصصی مثل هوش مصنوعی، برنامهها و سرویسهایی بنویسید که سود کلانی عایدتان کند. اما چگونه باید یک برنامهنویس شویم؟ شاید پرسش بهتر این است که چه کسی میتواند برنامهنویس شود؟ یک برنامهنویس، فردی است که کدهایی را مینویسد که به کامپیوترها یا دستگاههای دیگر اعلام میدارد چه کاری انجام دهد. برنامهنویس شدن هیچ قانون صریح و روشنی ندارد؛ از اینرو، یادگیری نحوه برنامهنویسی، تمرین زیاد و اشتیاق مداوم کمک میکنند در این مسیر موفق شوید. در نتیجه، باید بگوییم هر فردی این شانس را دارد تا برنامهنویسی را بیاموزد.
اگر میخواهید یک برنامهنویس شوید، ابتدا باید دلیل یادگیری این مهارت را برای خودتان مشخص کنید و از خود بپرسید که چقدر در این راه مصمم هستید. آیا دوست دارید آنرا یاد بگیرید یا فقط میخواهید بهعنوان مهارتی در رزومه به آن اشاره کنید، دوست دارید بهعنوان یک حرفه شغلی به آن نگاه کنید یا تنها برای یک پروژه (دانشگاهی) بهدنبال یادگیری آن هستید. نکته بعدی که باید به آن دقت کنید این است که بهتر است صنعتی که قصد ورود به آنرا دارید مشخص کنید تا شرکتها بدانند تخصص شما چیست. شما میتوانید یک توسعهدهنده وب، توسعهدهنده برنامههای سازمانی، دانشمند داده یا توسعهدهنده اپلیکیشنهای موبایل شوید. هر نقش به مجموعهای از مهارتهای منحصربهفرد نیاز دارد.
برنامهنویس نرمافزار، فردی است که ایدههای ارائهشده توسط معمار نرمافزار را به نمونه واقعی و قابل اجرا تبدیل میکند.
توسعهدهندگان وب به دو گروه فرانتاند و بکاند تقسیم میشوند. توسعهدهندگان بکاند با کدنویسیهای پیچیده سروکار دارند و به مدیران سایت تضمین میدهند که وبسایت یا برنامههای وبمحور بهشکل روانی اجرا میشوند. توسعهدهندگان فرانتاند روی جنبههای بصری سایتها متمرکز هستند.
دانشمند داده، فردی مسلط به یک زبان برنامهنویسی مثل پایتون است که عاشق تحقیق و تجزیهوتحلیل دادهها است.
توسعهدهنده اپلیکیشن موبایل، فردی است که اجازه میدهد به بهترین شکل از قابلیتهای کاربردی گوشی خود استفاده کنید.
هنگامی که حوزه تخصصی خود را انتخاب کردید، در مرحله بعد باید زبان برنامهنویسی مرتبط را انتخاب کنید. توصیه من این است که سراغ یادگیری زبانهای برنامهنویسی آیندهدار بروید که قابلیتهای کاربردی خوبی ارائه میکنند و ترکیب نحوی سادهای دارند. در مرحله بعد بهفکر بهبود مهارتهای برنامهنویسی از طریق کدنویسی مستمر باشید. دقت کنید هیچگاه تنها با مطالعه دهها یا صدها کتاب، یک برنامهنویس حاذق نخواهید شد و باید بهطور عملی کدنویسی کنید. بهتر است روی کدنویسی پروژههای کوچک کار کنید تا مهارتهای اولیه را بیاموزید. در ادامه رزومهای برای خود بسازید. برای بهدست آوردن تجربه بهتر، همیشه میتوانید روی پروژههای فریلنسری کوچک کار کنید که پیچیدگی زیادی ندارند، اما در مقابل اجازه میدهند رزومه خود را بهبود ببخشید.
نکته مهم دیگری که باید به آن دقت کنید این است که کارفرمایان از یک برنامهنویس انتظار دارند تا کدنویسی و اشکالزدایی کند تا عملکرد نرمافزارها مطلوب شود. در حالت کلی، یک برنامهنویس مسئول شناسایی باگها و بهروزرسانی کدها، شناسایی و رفع مشکلات عملکردی برنامهها، ویرایش کدهای منبع، استقرار نرمافزارهای بزرگ سازمانی و پشتیبانی فنی است. در نهایت، بهعنوان تجربه شخصی باید به این نکته اشاره کنم که یک برنامهنویس میتواند در ابتدای راه شغلی بهعنوان یک تحلیلگر سیستم داشته باشد و بعدها از نردبان ترقی بالا برود تا به توسعهدهنده نرمافزار/وبسایت، تحلیلگر داده و غیره تبدیل شود. فراموش نکنید که برنامهنویسی شغلی سودآور است، بهشرطی که آموزش و مطالعه را متوقف نکنید.
اگر به مقالات منتشرشده در حوزه امنیت نگاهی داشته باشید، مشاهده میکنید بخش عمدهای از این مقالات پیرامون مباحث فنی و کار با ابزارها هستند، در حالی که برای موفقیت در دنیای امنیت مسائل مهم دیگری مثل حاکمیت، ریسک و انطباق وجود دارد. چگونه این سه اصل مهم را در قالب یک فرآیند عملی پیادهسازی کنیم؟ پاسخ در مفهومی بهنام چارچوب (Framework) خلاصه میشود که زیرساختی منسجم برای مدیریت مخاطره یا کنترلهای امنیتی در اختیارمان قرار میدهد. مزیت بزرگ چارچوب این است که آزادی عمل زیادی ارائه میدهد تا خطمشیها را هماهنگ با نیازهای کاری پیادهسازی کنید. بهطور کلی، چارچوبها به سه گروه مهم چارچوبهای مخاطره، چارچوبهای امنیت اطلاعات و چارچوبهای معماری سازمانی تقسیم میشوند. چارچوب مدیریت مخاطره اهمیت بیشتری نسبت به دو نمونه دیگر دارد، زیرا امکان پیادهسازی موفق هر برنامه امنیت اطلاعاتی را بهوجود میآورد و اجازه میدهد دو چارچوب دیگر را بر مبنای آن بدون مشکل پیادهسازی کنیم.
مروری بر چارچوبها
چارچوب یک ساختار اساسی در بطن معماریهای بزرگ امنیتی است که راهحلها بر مبنای آن پیادهسازی میشوند. بنابراین، چارچوبها در فناوری اطلاعات و امنیت سایبری با هدف ارائه ساختاری مورد استفاده قرار میگیرند تا بتوانیم بر مبنای آن مخاطرات را مدیریت کنیم، معماریهای سازمانی را توسعه دهیم و همه داراییهای خود را ایمن کنیم. چارچوبها نقشه راهی هستند که کارشناسان فناوری اطلاعات و امنیت سایبری یک سازمان بر آن اتفاق نظر دارند و با در نظر گرفتن مسائل مختلف تدوین میشوند. چارچوبها دارای مولفههای مختلفی هستند که از مهمترین آنها به موارد زیر باید اشاره کرد:
مخاطره (Risk)
در زیرمجموعه مخاطره چهار استاندارد مهم زیر وجود دارد:
NIST RMF: چارچوب مدیریت مخاطرهای است که توسط موسسه ملی استانداردها و فناوری ایجاد شده است و خود ماحصل همگرایی سه خطمشی ارائهشده توسط موسسه NIST Special Publications به نامهای 800-39، 800-37 و 800-30 است.
ISO/IEC 27005: چارچوبی است که روی رفع مخاطره متمرکز است و توسط سازمان International Organization for Standardization در زیرمجموعه استاندارد ISO/IEC 27000 انتشار پیدا کرده است.
OCTAVE: چارچوب ارزیابی تهدید، دارایی و آسیبپذیری در عملیات حیاتی است که دانشگاه کارنگی ملون آنرا توسعه داده و بر ارزیابی ریسک متمرکز است.
FAIR : چارچوب تحلیل مخاطره اطلاعات است که توسط موسسه FAIR منتشر شده و بر اندازهگیری دقیقتر احتمال بروز حوادث و تاثیرات آنها بر فعالیتهای تجاری تمرکز دارد.
برنامه امنیتی (Security Program)
سری ISO/IEC 27000: مجموعهای از استانداردهای بینالمللی در مورد نحوه توسعه و نگهداری سیستم مدیریت امنیت اطلاعات (ISMS) است که توسط دو سازمان ISO و IEC ایجاد شده است.
NIST Cybersecurity Framework: چارچوب امنیت سایبری NIST با هدف ایمنسازی سامانههای مورد استفاده در موسسات دولتی تدوین شده است. این چارچوب پرکاربرد و جامع بر روی تامین امنیت اطلاعاتی که مخاطره زیادی دارند، متمرکز است.
کنترلهای امنیتی (Security Controls)
NIST SP 800-53: فهرستی از کنترلها و فرآیندهای انتخابی است که برای محافظت از سیستمهای فوق حساس به آن استناد میشود.
کنترلهای CIS: سازمان غیرانتفاعی Center for Internet Security یکی از سادهترین رویکردها برای محافظت از داراییها و اطلاعات حساس سازمانی را ارائه کرده که قابل پیادهسازی در شرکتهای بزرگ و کوچک هستند.
COBIT 2019: یک چارچوب تجاری است که تمرکزش بر نحوه مدیریت و حاکمیت فناوری اطلاعات در شرکتها است.
Zachman Framework: مدلی برای توسعه معماریهای سازمانی است که توسط جان زاچمن (John Zachman) توسعه پیدا کرده است.
Open Group Architecture Framework: مدلی برای توسعه معماریهای سازمانی است.
SABSA: معماری امنیت کسبوکار کاربردی شروود سرنام Sherwood Applied Business Security Architecture مدل و روشی برای توسعه معماری امنیت اطلاعات سازمانی ریسکمحور و مدیریت خدمات است. ویژگی اصلی مدل SABSA این است که تمرکز زیادی روی تجزیهوتحلیل الزامات تجاری با هدف تامین امنیت آنها دارد.
چارچوبهای ریسک
چارچوب مدیریت مخاطره (RFM) سرنام Risk Management Framework را باید بهعنوان یک فرآیند ساختاریافته تعریف کرد که به سازمان اجازه میدهد مخاطره را شناسایی و ارزیابی کند و آنرا تا حد قابل قبول کاهش دهد و اطمینان حاصل کند مخاطره در سطح قابل قبول و کنترلشدهای وجود دارد. در اصل، RMF یک رویکرد ساختاریافته برای مدیریت مخاطره (ریسک) است.
همانگونه که مشاهده میکنید، طیف گستردهای از چارچوبهای مدیریتی در دسترس قرار دارند، آنچه برای شما بهعنوان یک متخصص امنیت اطلاعات باید مهم باشد این است که اطمینان حاصل کنید سازمان دارای یک RMF است که بدون مشکل کار میکند. برخی چارچوبها در مقایسه با نمونههای دیگر مورد پذیرش بیشتر سازمانها قرار دارند، زیرا کارکرد مثبت خود در طول سالهای گذشته را نشان دادهاند. از اینرو، هنگام انتخاب یک چارچوب باید تحقیق کاملی انجام دهید و گزینه هماهنگ با استراتژیهای تجاری سازمان را انتخاب یا در صورت لزوم ویرایش و پیادهسازی کنید. یکی از چارچوبهای موفق و مهم در این حوزه NIST RMF است که قصد داریم در ادامه با مفهوم و مولفههای آن آشنا شویم.
NIST RMF
چارچوب NIST برای کمک به سازمانهایی با ابعاد مختلف و عمدتا بزرگ تنظیم شده و روی حفظ حریم خصوصی هنگام تهیه یک محصول، خدمات یا اطلاعات متمرکز است. هدف اصلی این دستورالعمل، ارتقاء امنیت زیرساختهای حیاتی سازمانهای بزرگ در برابر حملههای داخلی و خارجی است. بهطور خاص،NIST پنج رویکرد اصلی را برای مدیریت ریسکهای موجود در امنیت دادهها و اطلاعات پیشنهاد میکند. این عملکردها عبارتند از: شناسایی، محافظت، تشخیص، پاسخگویی و بازیابی. توضیح اجمالی هر یک از عملکردها بهشرح زیر است:
شناسایی (Identify): به سازمانها در شناسایی مخاطرات امنیتی پیرامون داراییها، محیط کسبوکار و حاکمیت فناوری اطلاعات از طریق فرآیندهای جامع ارزیابی و مدیریت ریسک کمک میکند.
محافظت (Protect): کنترلهای امنیتی مورد نیاز برای حفاظت از سیستمهای اطلاعاتی و دادهها را تعریف میکند و شامل کنترل دسترسی، آموزش و آگاهسازی، امنیت دادهها، روشهای حفاظت از اطلاعات و نگهداری از فناوریهای محافظتی است.
تشخیص (Detect): دستورالعملهایی برای تشخیص ناهنجاریها در سیستمهای امنیتی، نظارتی و شبکهها برای تفکیک حوادث امنیتی از حوادث غیرامنیتی مثل خرابی تجهیزات ارائه میدهد.
پاسخ (Repones): شامل توصیهها و تکنیکهایی در جهت برنامهریزی با هدف پاسخگویی به رویدادهای امنیتی، کاهش ریسک و فرایندهای پاسخگویی به حوادث است.
بازیابی (Recovery): دستورالعملهایی را ارائه میدهد که سازمانها میتوانند از آنها برای بازگشت به شرایط پایدار در هنگام بروز حملههای سایبری استفاده کنند.
این چارچوب شامل عناصر کلیدی مدیریت ریسک است که باید بهعنوان یک متخصص امنیتی در مورد آنها اطلاع داشته باشید. ذکر این نکته ضروری است که چارچوب فوق برای سازمانهای بزرگ طراحی شده و ممکن است برای پیادهسازی در سازمان مجبور به اعمال تغییراتی در ساختار کلی آن باشید. NIST RMF بر مبنای یک فرآیند هفت مرحلهای کار میکند
به این نکته مهم دقت کنید که چرخه نشاندادهشده در شکل ۱ بیپایان است، زیرا سیستمهای اطلاعاتی دائما در حال تغییر هستند. هر تغییری باید تجزیهوتحلیل شود تا مشخص شود که آیا نیازی به اعمال تغییر در مراحل دیگر ضروری است یا خیر. توضیح هر یک از مراحل نشاندادهشده در شکل 1 بهشرح زیر است:
شکل 1
آمادهسازی (Prepare)
اولین قدم حصول اطمینان از این مسئله است که فعالیتهای مدیران ارشد (در هر دو سطح استراتژیک و عملیاتی) در یک سازمان هماهنگ باشد. این موضوع شامل توافق بر سر نقشها، اولویتها، محدودیتها و تحمل مخاطره است. یکی دیگر از فعالیتهای کلیدی در مرحله آمادهسازی، انجام ارزیابی مخاطره سازمانی است که دید روشنی در اختیار تیم امنیتی قرار میدهد تا بتوانند مخاطرات را بهخوبی درک کنند. یکی از نتایج این ارزیابی، شناسایی داراییهای باارزش است که باید به بهترین شکل از آنها محافظت شود.
طبقهبندی (Categorize)
گام بعدی این است که سیستمهای اطلاعاتی را بر مبنای حساس بودن و میزبانی اطلاعات حساسی که قرار است توسط تجهیزات کلاینت مورد دستیابی قرار گرفته، پردازش شوند یا انتقال پیدا کنند، طبقهبندی کنیم. هدف این است که برای سیستمهای خود طبقهبندیهایی بر مبنای میزان حساسیت و مهم بودن آنها ایجاد کنیم تا بتوانیم از ابزارهای امنیتی مناسبی برای محافظت از آنها استفاده کنیم. امروزه بیشتر سازمانهای اروپایی و آمریکایی ملزم به پیادهسازی چارچوب NIST SP 800-60 هستند. NIST SP 800-60 با تمرکز بر میزان حساسیت و اهمیت داراییهای سازمانی (محرمانگی، یکپارچگی و دسترسپذیری) سعی میکند میزان خطرپذیری سامانهها را تعیین کند. بهطور مثال، فرض کنید یک سیستم مدیریت ارتباط با مشتری (CRM) دارید. اگر محرمانگی آن در معرض خطر قرار گیرد، آسیب قابل توجهی به شرکت وارد میشود، بهخصوص اگر اطلاعات به دست رقبا بیفتد، اما در مقابل نقض یکپارچگی و دسترسپذیری سیستم احتمالا برای کسبوکار پیامدهای بحرانی و جدی نخواهد داشت و از اینرو، به دارایی با مخاطره کم طبقهبندی میشود. بر مبنای این تعریف، طبقهبندی امنیتی برای یک سیستم مدیریت ارتباط با مشتری از طریق فرمول زیر محاسبه میشود:
SCCRM= {(محرمانگی، بالا)، (یکپارچگی، کم)، (دسترسپذیری، کم)} SP 800-60 از سه سطح طبقهبندی امنیتی کم، متوسط و زیاد استفاده میکند. برچسب کم اشاره به سیستمهای اطلاعاتی دارد که اطلاعات مهمی روی آنها قرار ندارد و در نتیجه نقض اصول سهگانه محرمانگی، یکپارچگی و دسترسپذیری کسبوکار را با چالش جدی روبهرو نمیکند. برچسب متوسط اشاره به سیستمهایی دارد که نقض حداقل یکی از اصول سهگانه باعث ایجاد اختلال در عملکرد فعالیتهای تجاری میشود. برچسب بالا، به سیستمهایی اشاره دارد که نقض هر یک از این اصول باعث متوقف شدن عملیات تجاری میشود. در مثال ما، نقض اصل محرمانگی اهمیت زیادی دارد، زیرا به اعتبار برند خدشه وارد میکند.
انتخاب (Select)
هنگامی که سیستمها را دستهبندی کردید، نوبت به انتخاب و احتمالا تنظیم کنترلهایی میرسد که برای محافظت از داراییها از آنها استفاده میکنید. NIST RMF سه نوع کنترل امنیتی مشترک، خاص و ترکیبی را تعریف میکند.
کنترل مشترک، کنترلی است که برای چند سیستم تعریف و اعمال میشود. بهطور مثال، در سناریو CRM اگر یک فایروال برنامه کاربردی وبمحور (WAF) را برای CRM پیادهسازی کنیم از مکانیزم کنترل امنیتی مشترک استفاده کردهایم، زیرا امکان استفاده از دیوارآتش در ارتباط با دیگر مولفههای نرمافزاری و سرویسهای سازمان وجود دارد. WAF فراتر از نظارت بر یک سیستم CRM کار میکند و قادر به محافظت از CRM دیگر سامانههای تحت شبکه است.
کنترلهای خاص در محدوده سیستمها پیادهسازی میشوند و بدیهی است که تنها از یک سیستم خاص محافظت میکنند. بهطور مثال، صفحه ورود به سیستم CRM را تصور کنید که از پروتکل امنیت لایه انتقال (TLS) برای رمزگذاری اطلاعات محرمانه کاربر استفاده میکند. اگر زیرسیستم احراز هویت بخش جداییناپذیر CRM باشد، آنگاه مورد مذکور نمونهای از یک کنترل خاص است.
در نگاه اول بهنظر میرسد در چارچوب NIST همهچیز به رنگ سیاه یا سفید هستند، اما دنیای امنیت پیچیدهتر از آن است و اغلب اوقات، کنترلها در حد فاصل کنترلهای مشترک و خاص قرار میگیرند. یک کنترل ترکیبی تا حدی اشتراکی و تا حدی مختص یک سیستم است. در مثال CRM، یک کنترل ترکیبی میتواند آموزش و آگاهیرسانی امنیتی باشد.
پیادهسازی (Implement)
در این مرحله دو وظیفه کلیدی وجود دارد که باید انجام شود؛ پیادهسازی و مستندسازی. قسمت اول خیلی سرراست است. بهطور مثال، اگر در مرحله قبل تشخیص دادید که باید یک قانون به WAF اضافه کنید تا حملاتی مانند تزریق زبان پرسوجو ساختاریافته (SQL) را فیلتر کنید، آن قانون را اجرا میکنید. کار ساده است. بخشی که بیشتر ما با آن مشکل داریم، مستندسازی تغییراتی است که اعمال میکنیم.
مستندسازی به دو دلیل اهمیت دارد. اول آنکه اجازه میدهد تا متوجه شویم چه کنترلهایی وجود دارند، در چه مکانی قرار دارند و چرا تعریف و پیادهسازی شدهاند. آیا تا بهحال مسئولیت سیستمی به شما محول شده که پیکربندی آن در وضعیت بحرانی قرار داشته باشد؟ شما سعی میکنید بفهمید چه پارامترها یا قوانین خاصی وجود دارند، اما در تغییر آنها تردید دارید، زیرا ممکن است عملکرد سیستم مختل شود. این مشکل به دلیل نبود یا تنظیم اشتباه اسناد بهوجود میآید که در نهایت باعث میشود هکرها از آسیبپذیریهای مستتر یا پیکربندیهای اشتباه بهرهبرداری کرده و یک حمله سایبری را با موفقیت پیادهسازی کنند. دلیل دوم اهمیت مستندسازی این است که امکان میدهد کنترلها را بهطور کامل در برنامه ارزیابی و نظارت کلی ادغام کنیم و اطلاع دقیقی در ارتباط با کنترلهایی داشته باشیم که در طول زمان منسوخ و بیاثر شدهاند.
ارزیابی (Assess)
کنترلهای امنیتی که قصد پیادهسازی آنها را داریم، تنها در صورتی مانع بروز حملههای سایبری میشوند که توانایی ارزیابی آنها را داشته باشیم. ارزیابی کنترلها، نقش مهمی در مدیریت درست مخاطرات دارد. برای سازمانها ضروری است که یک برنامه جامع داشته باشند که تمام کنترلهای امنیتی (مشترک، ترکیبی و خاص سیستم) را با توجه به خطراتی که قرار است به آنها رسیدگی کنند، ارزیابی کند. این طرح باید توسط مقام یا مقامات مربوطه بررسی و تایید شود تا قابلیت اجرایی پیدا کند.
ارزیابی باید نشان دهد که چارچوب تدوینشده توانایی مقابله با مخاطرات را دارد و قادر است از داراییهای سازمانی به بهترین شکل محافظت کند. از اینرو، تیم توسعهدهنده چارچوب نباید آنرا ارزیابی کنند و این مسئولیت باید به کارشناس امنیتی امین سازمان سپرده شود تا اثربخشی کنترلها را ارزیابی کند و اطمینان دهد ابزارهای درستی انتخاب شدهاند و اسناد بهدرستی تدوین شدهاند. به همین دلیل، ارزیابی تمامی فرآیندها، ابزارها و خطمشیهایی که قرار است پیادهسازی شوند اهمیت زیادی دارد.
ارزیابی باید تعیین کند آیا پیادهسازی کنترلها موثر هستند یا خیر. از اینرو، نتایج در گزارشها باید مستندسازی شوند تا بهعنوان مرجعی برای ارزیابیهای بعدی قابل استفاده باشند. اگر کنترلها موثر نیستند باید اقدامات اصلاحی برای رفع کاستیها انجام شود و نتیجه ارزیابی دومرتبه مستندسازی شود. در نهایت، طرحهای امنیتی بهروزرسانی میشوند تا یافتهها و توصیههای ارزیابی در آنها اعمال شود. ارزیابی کنترلهای امنیتی «ممیزی» نامیده میشود.
مجوزدهی (Authorize)
همانگونه که میدانید، هیچ سیستمی در جهان بدون مخاطره نیست. یکی از بزرگترین مشکلاتی که کارشناسان امنیتی در یک سازمان با آن روبهرو هستند، دریافت مجوزهای مختلف از مدیران ارشد است تا بتوانند خطمشیهای امنیتی در معماری شبکه سازمانی را پیادهسازی کنند.
در این مرحله، نتایج ارزیابی ریسک و کنترلها باید به فرد تصمیمگیرنده تحویل داده شود تا تاییدیه اتصال کنترلهای امنیتی به سیستمهای اطلاعاتی را صادر کند. این شخص (یا گروه) از نظر قانونی مسئول و پاسخگو هستند که پس از پیادهسازی کنترلها، سیستمها بدون مشکل به کار ادامه میدهند. از اینرو، باید اطلاعات معتبر و قابل استنادی در اختیار آنها قرار گیرد، زیرا مسئولیت هرگونه اختلال در عملکرد شبکه بر عهده این افراد و نه مسئول پیادهسازی مکانیزمهای امنیتی خواهد بود.
به همین دلیل، افرادی که چارچوب امنیتی را آماده میکنند باید برای مدیرعامل این مسئله را به روشنی شرح دهند که چه مخاطراتی برای سازمان چالشآفرین هستند و در صورت عدم توجه به مخاطرات، سازمان با چه زیانهایی روبهرو میشود. گاهیاوقات پس از تدوین چارچوب امنیتی مجبور به بازنگری در برنامه عملیاتی میشوید تا بتوانید در صورت بروز یک حمله سایبری بهسرعت واکنش نشان دهید و هکرها موفق نشوند بهراحتی از نقاط ضعف و کاستیهای مستتر در سیستمهای اطلاعاتی بهرهبرداری کنند. در بیشتر سازمانها مجوزهای پیادهسازی چارچوبهای امنیتی برای یک دوره زمانی مشخص و در قالب برنامه اقدام و نقطه عطف (POAM یا POA&M) صادر میشوند.
نظارت (Monitor)
ما باید بهصورت دورهای تمام کنترلها را بررسی کنیم و مشخص کنیم که آیا هنوز موثر هستند یا خیر. آیا تغییراتی در الگوی تهدیدات تاکتیکی و تکنیکی بهوجود آمده است، آیا آسیبپذیریهای جدیدی کشف شدهاند، آیا یک تغییر غیرمستند یا تاییدنشده در پیکربندی باعث شده تا اثربخشی کنترلهای امنیتی کمتر شده و سطح مخاطرات پیرامون داراییهای سازمانی به درجه بحرانی نزدیک شده باشند؟ اینها تنها برخی از مسائلی هستند که ما از طریق نظارت مستمر و بهبود مستمر قادر به پاسخگویی به آنها هستیم.
کلام آخر
چارچوب NIST RMF یکی از مهمترین چارچوبهای مدیریت ریسک امنیت اطلاعات است که بهطور گسترده مورد استفاده قرار میگیرد. این چارچوب دستورالعملهایی برای مدیریت ریسک امنیت اطلاعات در یک سازمان را تعریف میکند، اما رویکرد خاصی را برای اجرای آن دیکته نمیکند. به عبارت دیگر، چارچوب به ما میگوید که چه کارهایی را باید انجام دهیم، نه اینکه چگونه آنها را انجام دهیم.
افزایش امنیت سرور مجازی ویندوز
با پیشرفت سریع دنیای فناوری و استفاده روز افزون از خدمات آنلاین مانند: سرور مجازی ویندوز و یا لینوکس توسط مردم بدون دانش فنی مدیریت سرور، مبحث با اهمیت امنیت سرور مطرح میشود.
هر کدام از سرویسهای ویندوز و لینوکس کاربرد مشابه اما روش کار متفاوت دارند، یکی از مواردی که به تازگی اهمیت بالایی پیدا کرده است، امنیت سرور مجازی ویندوز است.
برای اتصال به یک سرور مجازی ویندوز باید از ریموت دسکتاپ استفاده شود، که یک پروتکل ارتباطی اولیه مایکروسافت است، در ادامه به شما آموزش خواهیم داد که چگونه امنیت اتصال ریموت دسکتاپ خودتان را افزایش دهید.به زبان ساده در پروتکل ریموت دستکاپ عموما برای مشاهده تصویر سرور و یا دیگر کامپیوترهای تحت شبکه استفاده خواهد شد.
برای انتقال فایل با حجم کم استفاده شود و نیز پرینتر را به اشتراک بگذارید، وبکم را در سرور استفاده کنید، حتی میتوانید درایو هارد خودتان را در سرور ویندوز مشاهده کنید.
در یک سرور ویندوزی صدایی که در سرور پخش میشود را در کامپیوتر خودتان داشته باشید که همه از طریق پروتکل ریموت دسکتاپ انجام میشود.
با وجود همه این کاربردها، سرور مجازی ویندوز برای معاملات مالی و وب گردی بدون شناسایی هویت اصلی نیز کاربردی است.
امنیت سرور مجازی ویندوز
بدانید همیشه افرادی وجود دارند که دستیابی به اطلاع درون سرور شما برای آنها ممکن است با اهمیت باشد، مخصوصا زمانی که شما یک کار مالی مانند: فعالیت در بازار ارز دیجیتال میکنید به عنوان مثال: با یک سرور ترکیه اقدام به ترید در بایننس و یا دیگر صرافیها میکنید.
در این حالت شما یک دیتا با ارزش مالی بالا در سرور مجازی ویندوز خودتان دارید و کسی که دنبال سوء استفاده باشد سعی خود را میکند که به هر شکلی وارد سرور شما شود.
برای اینکه بتوانید امنیت سرور خودتان را تامین کنید باید به نکات ریز توجه زیادی داشته باشید، مانند:
● تغییر پورت ریموت دسکتاپ سرور
● آپدیت کردن دوره ای سیستم عامل و مرورگر
● عدم استفاده از نرم افزار کرک در سرور حتی آنتی ویروس کرک
● دانلود نکردن هیچ نوع فایلی که از هر جایی برای شما ارسال میشود.
● اطمینان از روشن بودن فایروال سرور
● بررسی داشتن فایروال در شرکت میزبان برای جلوگیری از حملات Burt-force
● اطمینان از اورجینال بودن سیستم عامل و عدم استفاده از کرک سیستم عامل توسط شرکت میزبان
● پنل مدیریت سرور برای خاموش کردن سرور در زمانی که طولانی مدت نیاز به سرور ندارید.
● انتخاب شرکت با سابقه کاری بالا و معتبر در حوزه میزبانی
● امنیت سیستم یا کامپیوتر مبدا که به سرور متصل میشود.
تغییر پورت ریموت دسکتاپ سرور
حداقل کار ممکن برای بالا بردن امنیت سرور مجازی تغییر پورت ریموت دسکتاپ است که باعث میشود سرور شما از دید اسکنرهای خودکار در پورت 3389 که به دنبال اسکن و Burt-force پسورد هستند در امان بماند، ولی اگر تارگت مستقیم باشد پیدا کردن پورت واقعی ریموت کار چندان سختی نیست پس یک عمل اولیه و ساده است.
در مجموعه میزبانی دیاکو وب به علت داشتن فایروال جلوگیری از حملات به پورت ریموت نیازی به تغییر وجود ندارد.
آپدیت کردن دوره ای سیستم عامل و مرورگر
یکی از مشکلاتی که همیشه وجود دارد، مشکلات امنیتی مربوط به سیستم عامل اصلی است که ممکن است با یک باگ نرم افزاری موجب نشت اطلاعات شود و براحتی راه نفوذ ایجاد کند.
به صورت خودکار و یا دوره کوتاه مدت حتما اقدام به آپدیت سیستم عامل سرور از داخل سرور کنید و بعد از آپدیت سیستم عامل اجازه دهید سرور ریستارت شود.
آپدیت شدن مرورگر نیز اهمیت بسیار بالایی دارد پس همیشه آپدیت کردن آن را فراموش نکنید.
باید و نبایدهای امنیتی مبدا و مقصد ریموت دسکتاپ
توجه به امنیت سیستم مبدا که به سرور به صورت ریموت دسکتاپ متصل خواهد شد.
نرم افزارهای مورد استفاده در وی پی اس
متاسفانه این نکته فراموش میشود که اگر یک نرم افزار از هر نوعی باشد به طور مثال: آنتی ویروس، دانلود منیجر یا فتوشاپ و…، که از سایت آسان دانلود یا soft98 یا هر سایت دیگری دانلود شده باشد، در هر صورت این نرم افزار اگر رایگان نباشد، کرک شده است و توسط یک برنامه نویس انجام شده است.
سوال اینجاست؟ که آیا آن برنامه نویس برای عموم مردم که حاضر به پرداخت هزینه لایسنس نرم افزار مورد نظر نیستند کار رایگان انجام میدهد؟ قطعا خیر، پس بی هدف انجام نمیشود.
در نتیجه برای همیشه استفاده از هر نوع نرم افزار کرک را فراموش کنید. حتی اگر در کامپیوتر شخصی خودتان در حال استفاده هستید و فکر میکنید که تا الان مشکلی پیش نیامده است!
عدم دریافت فایل از هر منبع انتشار فایل
هک کردن یک سرور و یا کامپیوتر با ارسال فقط یک عکس، یک فایل PDF و یا ورد و یا حتی یک ویدئو بسیار ساده است، به طورکلی هرگونه فایلی که شما برای تماشا و یا باز شدن آن فقط یک کلیک کنید کافی است تا شما در قلاب هکر گیر بیفتید.
فایل مخرب هر کاری که در محیط سیستم انجام میشود را به راحتی به منبعی خاص ارسال میکند و همچنین توانایی ضبط همه پسووردها و یا حتی ایجاد تغییرات در سرور را دارد.
اطمینان از روشن بودن فایروال سرور
سیستم ویندوز یک فایروال دیفالت دارد که پورتهای غیر ضروری را به صورت کامل مسدود کرده است و اجازه ورود و خروج هر نرم افزاری را نخواهد داد، مطمئن شوید که این فایروال خوب و کاربردی روشن باشد و آن را به هیچ عنوان برای طولانی مدت خاموش نکنید.
داشتن فایروال جلوگیری از Burt-force
از متداول ترین راه های نفوذ به سرورها تست پسوردهای مختلف برای ورود به سرور هست، در این حالت یک لیست میلیونی از پسوردها وجود دارد و یک ربات شروع به تست پسورد بر روی سرور میکند، در ثانیه چند ده پسورد را تست میکنند تا پسورد سرور شما را پیدا کنند.
شرکتهای انگشت شماری برای امنیت بالای کاربران خود هزینه میکنند. در خدمات ابری دیاکو وب امکان اسکن پسورد روی سرورها وجود ندارد و هرکسی اقدام به اسکن سرورها کند به صورت خودکار توسط فایروال بلاک خواهد شد.
بدون دستکاری بودن سیستم عامل سرور مجازی
اورجینال بودن سیستم عامل سرور مجازی ویندوز که شما را میزبانی میکند از آن جهت که هیچ نوع دستکاری و یا کرک شدن لایسنس سیستم نداشته باشد، بسیار مهم است به این دلیل که تمامی کرکهایی که برای لایسنس انجام میشود قطعا مخرب هستند و مطمئنا برای کسانی که از سرور مجازی ترید برای ارزهای دیجیتال بدون امکان پیگیری استفاده میکنند، مشکل ساز خواهند شد.
پنل مدیریت سرور مجازی
خدمات میزبانی که به صورت ابری ارائه شود همه چیز را دردسترس شما قرار میدهد و قابل ایجاد هر نوع تغییرات توسط شما است.
مدیریت سرور مجازی به صورت کامل توسط شما باید انجام شود به گونه ای که کنترل پنل وی پی اس باید به شما این امکان را بدهد که بدون نیاز به پشتیبانی، حتی سیستم عامل سرور را تعویض کنید، و یا در صورتی که میخواهید مدتی از سرور به صورت روزانه استفاده نکنید سرور را خاموش کنید و در زمان نیاز اقدام به روشن کردن مجدد آن کنید.
امنیت سیستم مبدا به مقصد (سرور)
آلوده نبودن سرور مبدا شما بسیار با اهمیت است. باید از ایمن بودن کامپیوتر شخصی و گوشی خودتان اطمینان 100% حاصل کنید، این صحبت که چندین سال هست از این ویندوز استفاده کرده ام تا الان مشکلی پیش نیامده است را فراموش کنید!
تا این لحظه دیتا شما ارزش مادی نداشته و حداکثر پسورد بانکهای داخل ایران بوده و امکان پیگیری وجود داشته بنابراین برای افراد سودجو ارزشی چندانی ندارد، در واقع بانک های ما به سیستم بانکداری جهانی متصل نیست و امکان جابه جایی پول به خارج از ایران وجود ندارد، پس تا این لحظه شکار خوبی محسوب نمیشدید.
اما حالا شما یک سرور ترید را تهیه میکنید که در صرافی ارز دیجیتال مانند بایننس کار معاملات ارز دیجیتال انجام دهید، حال اگر هکر بتواند پسورد سرور یا دیگر اطلاعات مورد نیاز را از داخل سیستم شما برداشت کند کار تمام است.
در چند سال گذشته، دنیای زبانهای برنامهنویسی تغییرات قابل توجهی داشته است. این تغییرات باعث شدهاند تا برخی از زبانهای برنامهنویسی با استقبال بیشتری از سوی کاربران روبهرو شوند، و در عین حال از محبوبیت برخی دیگر کاسته شود. با اینحال، زبانهای برنامهنویسی قدیمی همواره مورد توجه سازمانهای بزرگ قرار دارند. یکی از این زبانهای برنامهنویسی پراقتدار جاوا است که برای ساخت طیف گستردهای از برنامههای کاربردی در حوزههای مختلف استفاده میشود.
در بازار کار ایران، جاوا و سیشارپ رقبای سرسختی هستند و تقریبا بازار کار به یک اندازه به هر دو تخصص نیاز دارد، اما در خارج از ایران جاوا بیشتر مورد توجه شرکتها قرار دارد. هنگامیکه نسخه جدیدی از یک زبان برنامهنویسی منتشر میشود، مهم است درباره تغییرات اعمالشده در نسخه جدید اطلاعات کافی داشته باشیم، زیرا برخی قابلیتها حذف میشوند، برخی دیگر تغییر میکنند و قابلیتهای جدیدی به آن زبان افزوده میشوند. جاوا از این قاعده مستنثا نیست و در سالهای گذشته قابلیتهای خوبی همگام با پیشرفتهای دنیای فناوری در اختیار برنامهنویسان قرار داده است. از نسخه 9 به بعد، اوراکل هر 6 ماه یکبار ویژگیها و قابلیتهایی به جاوا اضافه کرده که همین مسئله دنبال کردن تغییرات جدید را کمی سخت میکند. بهطور مثال، نسخه 17 جاوا اوایل مهرماه 1400 با قابلیتهای جدید منتشر شد و درست شش ماه بعد نسخه 18 اوایل فروردینماه 1401 منتشر شد و همچون گذشته قابلیتهای جذابی در اختیار برنامهنویسان قرار داد. در نسخه 18 شاهد ویژگیها و تغییرات نسبتا مهمی بودیم که در این مقاله با 9 مورد از آنها آشنا میشویم.
در شرایطیکه جاوا 17 یک نسخه پشتیبانی بلندمدت (LTS) است و اوراکل حداقل 8 سال از آن پشتیبانی میکند، نسخه 18 جاوا یک نسخه با پشتیبانی کوتاهمدت است که اوراکل در یک بازه زمانی کوتاه از آن پشتیبانی میکند. توسعهدهندگان میتوانند برای نصب کیت توسعه JDK18 جاوا روی سیستمعاملهای لینوکس، ویندوز و مک به سایت رسمی اوراکل به نشانی https://www.oracle.com/java/technologies/downloads/ مراجعه کنند و نسخه هماهنگ با سیستمعامل خود را دانلود و نصب کنند.
1. منسوخ شدن finalization برای حذف در نسخه بعدی جاوا
Finalizer دارای نقصهایی است که مشکلات مختلفی در ارتباط با امنیت، عملکرد، قابلیت اطمینان و نگهداری از برنامههای کاربردی بهوجود میآورد. از اینرو جای تعجب نیست که تیم پشتیبانی جاوا بهدنبال حذف آن باشند. علاوه بر این باید دقت کنید که Finalizer نیازمند برنامهنویسی نسبتا پیچیدهای است و همین مسئله کار کردن با آنرا سخت میکند. در حال حاضر، قابلیت مذکور بهطور پیشفرض فعال است، اما میتوان آنرا غیرفعال کرد تا آزمایشهای اولیه سادهتر شوند. این ویژگی بهطور پیشفرض در نسخه آینده زبان برنامهنویسی جاوا حذف خواهد شد. در نسخه 18 جاوا ویژگی مذکور غیرفعال شده تا برنامهنویسان آمادگی لازم را داشته باشند و تا فرصت باقی است برنامههای کاربردیای را که از قابلیت فوق استفاده میکنند ویرایش کنند.
در صفحه رسمی Openjdk در خصوص ویژگی مذکور آمده است: «کارهای اولیه برای حذف Finalization انجام شده است. Finalization در حال حاضر (نسخه 17) بهطور پیشفرض فعال است، اما میتوان آنرا غیرفعال کرد تا انجام آزمایشهای اولیه تسهیل شوند. ویژگی مذکور در نسخه 18 بهطور پیشفرض غیرفعال است و در نسخه بعد حذف خواهد شد. طراحان کتابخانهها و برنامههایی که از finalization استفاده میکنند باید بهسراغ تکنیکهای دیگر مدیریت منابع مانند دستورات try-with-resources و نمونههای مشابه بروند. پیشنهاد میشود یک گزینه خط فرمان برای غیرفعال کردن finalization و منسوخ کردن تمام finalizerها و متدهای finalization در API استاندارد جاوا افزوده شود. هدف از انجام اینکار کمک به توسعهدهندگان برای درک بهتر مخاطرات finalization و آمادگی توسعهدهندگان برای حذف نهایی آن است».
یکی دیگر از اهداف کنار گذاشتن ویژگی فوق در نسخه 18 جاوا آماده کردن ابزارهای کاربردی برای کمک به شناسایی میزان وابستگی به finalization است. این ویژگی که در نسخه اول جاوا معرفی شده بود با هدف پیشگیری از بروز مشکل نشت منابع استفاده میشد. ویژگی مذکور شامل یک کلاس است که میتواند یک finalizer را تعریف کند که بدنه متد داخل آن میتواند هر منبعی را آزاد کند. garbage collector میتواند finalizer یک شیء غیرقابلدسترس را بهراحتی زمانبندی کند تا قبل از اینکه حافظه شیء را اصلاح کند آنرا فراخوانی کند. با اینحال، در هنگام استفاده از متد finalize باید به این نکته دقت کنید که عملیاتی مانند فراخوانی قابلیت close در اشیاء انجام میشود. در ظاهر اینگونه بهنظر میرسد که رویکرد فوق یک راهکار موثر برای پیشگیری از بروز مشکل نشتی منابع است، اما نقصهایی دارد که از آن جمله باید به تاخیرهای غیرقابلپیشبینی اشاره کرد. این نقص باعث میشود تا فاصله زیادی بین زمانیکه یک شیء غیرقابلدسترس میشود تا زمانی که finalizer آنرا فراخوانی میکند بهوجود آید. این مسئله در برخی از برنامهها و بهویژه برنامههای حساسبهزمان مشکل جدی است. به همین دلیل است که به توسعهدهندگان توصیه شده از تکنیکهای جایگزین برای جلوگیری از نشت منابع استفاده کنند که از جمله باید به دستورات try-with-resources اشاره کرد.
2. تعریف یک SPI برای میزبان در نسخه 18 جاوا
در نسخه 18 جاوا، یک SPI برای میزبان و تبدیل آدرس اینترنتی (Name Address Resolution) تعریف شده تا Inet.Address بتواند از resolverهایی بهجز resolver داخلی پلتفرمها استفاده کند. اینکار با هدف فعالسازی بهتر Project Loom برای همزمانی و پشتیبانی بهتر از پارادایمهای جدید برنامهنویسی در جاوا، یکپارچهسازی بهتر جاوا با پروتکلهای جدید شبکه، سفارشیسازی و فعال کردن ساده آزمایشها انجام شده است. به این نکته دقت کنید که قرار نیست یک resolver جایگزین برای کیت توسعه جاوا ارائه شود.
3. پیشنمایش دوم از قابلیت تطبیق الگو در دستورات switch
با اضافه شدن ویژگی جدید به نسخه 18 جاوا تطبیق الگو برای عبارات و دستورات switch که همراه با آیتمهای گسترشی مرتبط با الگوهای این زبان هستند سادهتر میشود؛ رویکردی که باعث بهبود عملیات تطبیقی میشود. اولین پیشنمایش همراه با نسخه 17 کیت توسعه جاوا معرفی و در اختیار توسعهدهندگان قرار گرفت. فرآیند تطبیق الگوی گسترشی که برای دستور switch ارائه شده، به یک دستور اجازه میدهد الگوهای مختلف را ارزیابی کند، در حالیکه هر یک از این الگوها عملکرد مخصوص به خود را خواهند داشت. از اینرو، محاورههای پیچیده مبتنی بر دادهها میتوانند بهشکل کوتاه و ایمن اجرا شوند. ویژگی مذکور از پروژه Project Amber به جاوا وارد شده که یک پروژه OpenJDK است که بر ویژگیهای کوچکتر جاوا و بهرهوری متمرکز است. جورج ساب، معاون گروه پلتفرم جاوا در اوراکل، در این ارتباط میگوید: «تطبیق الگو برای switch چیزی است که هر برنامهنویس جاوا باید در مورد آن اطلاع داشته باشد و از آن استفاده کند». این قابلیت بهشکل گستردهای از فرآیند تطبیق الگوها در جاوا پشتیبانی خواهد کرد و در آینده به یکی از سبکهای مهم برنامهنویسی در جاوا تبدیل خواهد شد.
4. پیادهسازی مجدد core reflection
Core reflection Java.lang.reflect.Method، Constructor و Field در کنترلکننده java.lan.invoke دومرتبه کدنویسی شدهاند. از این پس کنترلکنندههای متد بهعنوان یک مکانیزم اساسی در عملیات reflection هزینه مربوط به نگهداری و توسعه واسطهای برنامهنویسی کاربردی java.lang.reflect و java.lang.invoke را به میزان زیادی کاهش میدهند. به بیان دیگر، دو مکانیسم داخلی برای فراخوانی متدها و سازندهها در اختیار توسعهدهندگان قرار میگیرد که برای اجرای سریعتر دستورات از روشهای بومی در HotSpot VM برای اولین فراخوانی شیء سازنده یا متد بازتابی استفاده میکند. برای بهبود عملکرد، پس از فراخوانیهای متعدد، بایتکد برای عملیات بازتابی تولید میشود و از کد فوق در فراخوانیهای بعدی استفاده میشود. به همین دلیل است که اضافه شدن ویژگی فوق به نسخه 18 جاوا میتواند مزایای زیادی در اختیار توسعهدهندگان قرار دهد.
5. اضافه شدن یک وبسرور ساده به نسخه 18 جاوا
در نسخه 18 یک وبسرور ساده به جاوا افزوده شده که یک ابزار خط فرمان برای راهاندازی یک وبسرور کوچک در اختیار توسعهدهندگان قرار میدهد که تنها قادر به نگهداری از فایلهای ایستا است. دقت کنید در اینجا هیچ عملکرد CGI یا عملکردی مشابه servlet در دسترس نیست. ابزار فوق میتواند برای نمونهسازی، کدگذاری ad-hoc و آزمایشها، بهویژه در محیطهای آموزشی مفید و کاربردی باشد. هدف از ارائه قابلیت جدید ارائه یک فایلسرور HTTP out-of-the-box ایستا است که راهاندازی آن ساده است. این فایلسرور میتواند به توسعهدهندگان کمک کند بهشکل سریعتری وظایف خود را انجام دهند و علاوه بر این، کیت توسعه جاوا را در اختیار آنها قرار میدهد. همچنین، به این نکته دقت کنید که یک پیادهسازی پیشفرض از طریق خط فرمان همراه با یک واسط برنامهنویسی کوچک در اختیار برنامهنویسان قرار دارد که در صورت نیاز میتوانند از آن استفاده کنند. با استفاده از تکنیک فوق، میتوانید برنامههای خود را بهراحتی ایجاد و سفارشیسازی کنید. لازم به توضیح است که قرار نیست یک سرور با قابلیتهای فوقالعاده پیشرفته در اختیار شما قرار گیرد.
6. یک تابع خارجی و یک واسط برنامهنویسی کاربردی برای تعامل بهتر با حافظه
در نسخه 18 جاوا یک واسط برنامهنویسی کاربردی معرفی شده که از طریق آن برنامههای جاوا میتوانند با دادههای خارج از زمان اجرای جاوا تعامل داشته باشند. با فراخوانی توابع خارجی (در واقع کد خارج از موتور مجازی جاوا) و با دسترسی ایمن به حافظه خارجی (حافظهای که توسط موتور مجازی جاوا مدیریت نمیشود) این واسط برنامهنویسی کاربردی به برنامههای جاوا اجازه میدهد تا کتابخانههای محلی را فراخوانی کنند و دادههای محلی را بدون مشکل JNI (رابط بومی جاوا) پردازش کنند. هدف از افزودن ویژگی فوق این است که JNI را با یک مدل توسعه جاوا بهتر جایگزین کنیم. دقت کنید این واسط برنامهنویسی کاربردی در نسخه 17 جاوا نیز در دسترس بود، اما در نسخه 18 جاوا تغییراتی روی آن اعمال شده و برخی مشکلات آن برطرف شده است. با فراخوانی توابع خارجی، کدهایی که خارج از ماشین مجازی جاوا قرار دارند قادر هستند بهشکل ایمن به حافظه خارجی و حافظهای که توسط ماشین مجازی جاوا مدیریت نمیشود دسترسی پیدا کنند.
7. vector API در نسخه 18 زبان برنامهنویسی جاوا
vector API را نباید از ویژگیهای شاخص نسخه 18 جاوا برشمرد، زیرا قبل از این در JDK 16 و JDK 17 آنرا مشاهده کردهایم. ویژگی مذکور برای انجام محاسبات برداری ارائه شده و در زمان اجرا به دستورالعملهای برداری که پردازنده مرکزی از آنها پشتیبانی میکند کامپایل میشود تا عملکرد برنامهها بهبود پیدا کند. ویژگی فوق عملیات برداری را بهشکل موازی انجام میدهد. در این حالت یک سیکل بیشتر از پردازنده مرکزی استفاده میشود، اما در مقابل عملکرد کلی برنامه بهبود پیدا کند. vector API راهحلی برای نوشتن الگوریتمهای پیچیده در جاوا با استفاده از HotSpot auto-vectorizer و یک مدل کاربری است تا عملیات بردارسازی بهشکل قابلپیشبینیتری انجام شود. در نسخه جدید JDK از پلتفرم ARM Scalar Vector Extension نیز پشتیبانی میشود تا بتوان از ویژگیهای سختافزاری پردازنده بهشکل بهتری استفاده کرد تا عملیات بردارسازی بهبود پیدا کند.
8. تعیین UTF-8 به عنوان سیستم کدگذاری پیشفرض و استاندارد واسطهای برنامهنویسی کاربردی
UTF-8 یک استاندارد کدگذاری کاراکترها در دنیای ارتباطات است که امروزه بهعنوان مجموعه کاراکترهای استاندارد وب شناخته میشود. charset مکانیزم کدگذاری تمامی کاراکترهای وب است. با توجه به تغییر اعمالشده در نسخه 18 جاوا واسطهای برنامهنویسی کاربردی این زبان که بر مبنای charset پیشفرض کار میکردند، در تمام پیادهسازیها، سیستمعاملها، پیکربندیها و غیره بدون مشکل کار میکنند. البته دقت کنید که قرار نیست شاهد عرضه استاندارد جدید یا واسطهای برنامهنویسی کاربردی خاص JDK باشیم. در شرایط عادی، برنامههای کاربردی که توسعه دادهاید بدون مشکل کار خواهند کرد و سیستم کدگذاری پیشفرض مشکلی در عملکرد آنها بهوجود نمیآورد. علاوه بر این، تیم توسعهدهنده بر این باور هستند که قابلیت جدید روی عملکرد برنامههای کاربردی نوشتهشده با جاوا در سیستمعامل مک، برخی از توزیعهای لینوکس و برنامههای سمت سرور که از UTF-8 پشتیبانی میکنند تاثیر منفی نخواهد گذاشت. این قابلیت بیشتر برای کمک به کاربران سیستمعاملهای ویندوزی در مناطق آسیایی و محیطهای سروری است که در مناطق آسیایی مستقر هستند.
9. قطعه کدها در مستندات واسطهای برنامهنویسی کاربردی
این ویژگی مهم و جذاب در نسخه 18 جاوا شامل یک تگ @snippet برای JavaDoc’s Standard Doclet است که برای ساده کردن درج نمونه مثالهایی در ارتباط با واسطهای برنامهنویسی جاوا در مستندات استفاده میشود. از کاربردهای این قابلیت باید به تسهیل اعتبارسنجی کد منبع با فراهم کردن دسترسی واسط برنامهنویسی به این قطعه کدها اشاره کرد. از دیگر کاربردهای قابلیت جدید باید به فعالسازی قابلیت سبکدهی مدرن مانند هایلایت کردن ترکیب نحوی، اتصال خودکار نامها به تعاریف، پشتیبانی بهتر محیط توسعه یکپارچه برای ایجاد و ویرایش snippetها و غیره اشاره کرد. ویژگی فوق را باید از مهمترین ویژگیهای نسخه 18 زبان برنامهنویسی جاوا دانست که توسعهدهندگان میتوانند از آن برای سادهسازی داکیومنتنویسی پروژهها استفاده کنند.
برگرفته از مجله شبکه
شرکت پیشران صنعت ویرا با اساس نامه اتوماسیون صنعتی و کنترل ابزار دقیق و ساخت تابلوهای برق فشار قوی و ضعیف از سال 92 تاسیس گشت و ازهمان ابتدا در حوزه کاربرد ابزار دقیق در bms و سپس تولید و ساخت آنها قدم نهاد و در ادامه مسیر توانست با اتکا به تجربیات چندین ساله و استخدام نیروهای متخصص برق عملا جزو شرکتهایی باشد که محصولات قابل اتکایی با عناوین مانیتورینگ شرایط محیطی اتاق سرور -کنترلرهای دمای دیتا سنتر -دیتالاگرهای سردخانه و انبار -هشدار دهنده های دمای یخچال و فریزر و شمارشگرهای نمایشگاهی و فروشگاهی و تابلوهای برق متنوع با کاربردهای مختلف روانه بازار نماید در حال حاضر سیستمهای کنترل دما و رطوبت اتاق سرور این شرکت تنها سیستم مبتنی بر سخت افزار صنعتی plc-hmi در ایران است.