This media is not supported in your browser
VIEW IN TELEGRAM
Linux is everywhere
👾کانال تلگرام IT Guys
👾کانال تلگرام IT Guys
👍9
The fact that container processes are visible from the host is one of the fundamental differences between container and virtual machines.
An attacker who gets access to the host can observe and affect all the containers running on that host, especially if they have root access.
Container Security - Page 52
👾کانال تلگرام IT Guys
👍5
Forwarded from Devops-Notes (Arye AfshAri)
Kubernetes pocket guide.pdf
12.2 MB
Kubernetes pocket guide
Language: English
The Kubernetes Pocket Guide is a small and easy-to-use document that helps you understand Kubernetes better. Inside this booklet, we have taken great care to gather and explain all the important ideas and knowledge about Kubernetes in a simple way
Language: English
The Kubernetes Pocket Guide is a small and easy-to-use document that helps you understand Kubernetes better. Inside this booklet, we have taken great care to gather and explain all the important ideas and knowledge about Kubernetes in a simple way
This media is not supported in your browser
VIEW IN TELEGRAM
تو مسیر برگشت از محل کار🥷
👾کانال تلگرام IT Guys
👾کانال تلگرام IT Guys
👍5
Don't include anything in any layer of image that you aren't prepared to be seen by anyone who has access to the image.
Container Security - Page 71
👾کانال تلگرام IT Guys
👍6
Because tags can be moved from image to image, there is no guarantee that specifying an image by tag today will give you exactly the same result as it does tomorrow. In contrast, using the hash reference will give you the identical image, because the hash is defined from the contents of the image. Any change to the image results in a different hash.
Container Security - Page 73
👾کانال تلگرام IT Guys
👍5
#!/bin/bash # Update package index sudo apt-get update # Install required packages sudo apt-get install -y \ ca-certificates \ curl \ gnupg \ lsb-release # Add Docker GPG key sudo mkdir -m 0755 -p /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg # Add Docker repository to APT sources echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null # Update package index with Docker repository sudo apt-get update # Install Docker and Docker Compose plugins sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose # Print version information echo "Docker version: $(docker --version)" echo "Docker Compose version: $(docker-compose --version)"
👍8
ali
#!/bin/bash # Update package index sudo apt-get update # Install required packages sudo apt-get install -y \ ca-certificates \ curl \ gnupg \ lsb-release # Add Docker GPG key sudo mkdir -m 0755 -p /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg…
اسکریپت Bash برای نصب Docker روی سرور اوبونتو
👍6
This media is not supported in your browser
VIEW IN TELEGRAM
Iranian Computer Engineers🥷
یک زمانی که برخی کشور ها هنوز با قلم و کاغذ مدیریت میشد ، ما میخواستیم اتومیشن انجام بدیم....
👾کانال تلگرام IT Guys
یک زمانی که برخی کشور ها هنوز با قلم و کاغذ مدیریت میشد ، ما میخواستیم اتومیشن انجام بدیم....
👾کانال تلگرام IT Guys
👍6
اگر خواستی روی پورتهای سوییچ Port-Security فعال کنی :
یادت باشه قبلش حتما باید اون پورت هارو اکسس کنی ، هیچوقت هم این موضوع رو :
1- نه روی سوییچ Core
2- نه روی پورت های ترانک نمیزنیم
فقط روی پروت هایی که به کلاینت ها وصل هستند میزنیم.
اگه اکسس نکنی پورت رو چی؟
چون پیشفرض همه پورتهای سوئیچ سیسکو روی حالت Dynamic Desirable یا Dynamic Auto (یعنی Dynamic Trunking Protocol – DTP) هستن و به عنوان پورت ترانک در نظر گرفته میشن.
مکانیزم Port Security فقط روی پورت Access فعال میشه، چون Port Security برای کنترل MAC Addressهای کلاینتهای یک VLAN طراحی شده و در حالت Trunk این منطق معنی نداره (چون چندین VLAN از اون عبور میکنه).
پس برای فعال سازی این موضوع :
👾کانال تلگرام IT Guys
یادت باشه قبلش حتما باید اون پورت هارو اکسس کنی ، هیچوقت هم این موضوع رو :
1- نه روی سوییچ Core
2- نه روی پورت های ترانک نمیزنیم
فقط روی پروت هایی که به کلاینت ها وصل هستند میزنیم.
اگه اکسس نکنی پورت رو چی؟
چون پیشفرض همه پورتهای سوئیچ سیسکو روی حالت Dynamic Desirable یا Dynamic Auto (یعنی Dynamic Trunking Protocol – DTP) هستن و به عنوان پورت ترانک در نظر گرفته میشن.
مکانیزم Port Security فقط روی پورت Access فعال میشه، چون Port Security برای کنترل MAC Addressهای کلاینتهای یک VLAN طراحی شده و در حالت Trunk این منطق معنی نداره (چون چندین VLAN از اون عبور میکنه).
پس برای فعال سازی این موضوع :
switchport mode access
switchport access vlan <VLAN_ID>
switchport port-security
👾کانال تلگرام IT Guys
❤2👍2
Use multi-stage builds
The multi-stage build is a way of eliminating unnecessary contents in the final image. An initial stage can include all the packages and toolchain required to build an image, but a lot of these tools are not needed at runtime. As an example, if you write an executable in Go, it needs the Go compiler in order to create an executable program. The container that runs the program doesn't need to have access to the Go compiler. In this example, it would be a good idea to break the build into a multi-stage build: one stage does the compilation and creates a binary executable; the next stage just has access to the standalone executable. The image that gets deployed has a much smaller attack surface; a nonsecurity benefit is that the image itself will also be smaller, so the time to pull the image is reduced.
Container Security - Page 75
👾کانال تلگرام IT Guys
👍2
Avoid unnecessary code
The smaller the amount of code in a container, the smaller the attack surface. Avoid adding packages, libraries, and executables into an image unless they are absolutely necessary.
Container Security - Page 76
👾کانال تلگرام IT Guys
👍4❤1
This media is not supported in your browser
VIEW IN TELEGRAM
موانع برای شکسته شدن به وجود آمدند...
👾کانال تلگرام IT Guys
👾کانال تلگرام IT Guys
👍3
Forwarded from Linux Labdon
📣 تاریخ انتشار دبیان ۱۳
🗣اخیرا در فهرست پستی دبیان، Emilio Monfort مدیر انتشار دبیان اعلام کرد انتظار میرود دبیان ۱۳ با اسم رمز Trixie در تاریخ ۱۸ مرداد منتشر شود.
دبیان ۱۳ به همراه بستهها و نرمافزارهای زیر منتشر میشود:
🟢 پلاسما ۶٫۳٫۵
🟢 گنوم ۴۸
🟢 لینوکس ۶٫۱۲ LTS
🟢 پایتون ۳٫۳۱
🟢 جیسیسی ۱۴٫۲
🟢 و ....
🗣اخیرا در فهرست پستی دبیان، Emilio Monfort مدیر انتشار دبیان اعلام کرد انتظار میرود دبیان ۱۳ با اسم رمز Trixie در تاریخ ۱۸ مرداد منتشر شود.
دبیان ۱۳ به همراه بستهها و نرمافزارهای زیر منتشر میشود:
🟢 پلاسما ۶٫۳٫۵
🟢 گنوم ۴۸
🟢 لینوکس ۶٫۱۲ LTS
🟢 پایتون ۳٫۳۱
🟢 جیسیسی ۱۴٫۲
🟢 و ....
👍3
تاحالا چیزی به عنوان GitOps شنیدید؟
بیاید خیلی خلاصه و ساده یکمی در موردش بهتون بگم.
درواقع GitOps یک رویکرد جدید برای مدیریت و استقرار (Deploy) زیرساختها و اپلیکیشنهاست که همه چیزو با استفاده از Git کنترل میکنه. در GitOps مخزن Git تبدیل به Single Source of Truth میشه و هر تغییری که بخوایم در محیط اعمال کنیم، باید از طریق ثبت تغییرات در Git انجام بشه.
چندتا دلیل که ازش استفاده میشه و اونو مهم میکنه:
خودکارسازی : نیازی به اعمال مستقیم تغییرات روی سرور نیست. ابزارهایی مثل ArgoCD یا FluxCD بهصورت خودکار تغییرات رو از مخزن Git به محیط عملیاتی منتقل میکنن.
تاریخچه تغییرات: همه تغییرات در Git ذخیره میشه و میتونیم به راحتی بررسی کنیم چه کسی، چه چیزی و چه زمانی تغییر داده.
بازگشت به نسخه قبل یا (Rollback): اگر مشکلی پیش بیاد، میتونیم به راحتی به نسخه ی قبلی برگردیم.
کانفیگ Declarative: درواقع GitOps از روش Declarative Configuration استفاده میکنه که مشابه تعریف فایلهای Kubernetes هست. (حالا توضیحش چیه بماند)
ابزارهای رایج در GitOps
ابزار ArgoCD: یکی از پرکاربردترین ابزارهای GitOps برای Kubernetes.
ابزار FluxCD: ابزار دیگر برای همگامسازی تغییرات از Git به محیط اجرایی.
ابزار Jenkins X: نسخهای از Jenkins که از GitOps پشتیبانی میکنه.
کاربردش به طور خلاصه :
مدیریت و استقرار اپلیکیشنها روی Kubernetes
مدیریت زیرساختها با ابزارهای IaC (مثل Terraform یا Helm)
کنترل نسخه تنظیمات شبکه و محیطهای کانتینری
👾کانال تلگرام IT Guys
بیاید خیلی خلاصه و ساده یکمی در موردش بهتون بگم.
درواقع GitOps یک رویکرد جدید برای مدیریت و استقرار (Deploy) زیرساختها و اپلیکیشنهاست که همه چیزو با استفاده از Git کنترل میکنه. در GitOps مخزن Git تبدیل به Single Source of Truth میشه و هر تغییری که بخوایم در محیط اعمال کنیم، باید از طریق ثبت تغییرات در Git انجام بشه.
چندتا دلیل که ازش استفاده میشه و اونو مهم میکنه:
خودکارسازی : نیازی به اعمال مستقیم تغییرات روی سرور نیست. ابزارهایی مثل ArgoCD یا FluxCD بهصورت خودکار تغییرات رو از مخزن Git به محیط عملیاتی منتقل میکنن.
تاریخچه تغییرات: همه تغییرات در Git ذخیره میشه و میتونیم به راحتی بررسی کنیم چه کسی، چه چیزی و چه زمانی تغییر داده.
بازگشت به نسخه قبل یا (Rollback): اگر مشکلی پیش بیاد، میتونیم به راحتی به نسخه ی قبلی برگردیم.
کانفیگ Declarative: درواقع GitOps از روش Declarative Configuration استفاده میکنه که مشابه تعریف فایلهای Kubernetes هست. (حالا توضیحش چیه بماند)
ابزارهای رایج در GitOps
ابزار ArgoCD: یکی از پرکاربردترین ابزارهای GitOps برای Kubernetes.
ابزار FluxCD: ابزار دیگر برای همگامسازی تغییرات از Git به محیط اجرایی.
ابزار Jenkins X: نسخهای از Jenkins که از GitOps پشتیبانی میکنه.
کاربردش به طور خلاصه :
مدیریت و استقرار اپلیکیشنها روی Kubernetes
مدیریت زیرساختها با ابزارهای IaC (مثل Terraform یا Helm)
کنترل نسخه تنظیمات شبکه و محیطهای کانتینری
👾کانال تلگرام IT Guys
👍4
رفرنس پست قبل به متن کتاب📚
Container Security - Page 80
👾کانال تلگرام IT Guys
GitOps is a methodology in which all the configuration information about the state of a system is held under source control, just as the application source code is. When a user wants to make an operational change to the system, they don't apply commands directly but instead check in the desired state in code form (for example, in YAML files for Kubernetes). An automated system called the GitOps operator makes sure that the system is updated to reflect the latest state as defined under code control.
This impacts security in significantly beneficial ways. Users no longer need direct access to the running system because everything is done at arm's length via the source code control system (typically Git, as the name implies).
Container Security - Page 80
👾کانال تلگرام IT Guys
❤2👍2