مشکل fetchmail و offlineimap با gmail

در تلاش بودم با fetchmail و یا offlineimap از اکانت Gmail بک آپ بگیرم. ولی گویا به خاطر سیستم پیچیده Gmail که بخشی از آن شامل Web login هست متصل شدن از طریق این دو ابزار به سرویس imap برای gmail امکان پذیر نیست.

این موضوع را FAQ پروژه fetchmail هم تایید می کنه (مطالعه در اینجا). ولی به هر حال یه کم شک دارم که واقعا راه حلی در خط فرمان وجود نداشته باشه. برای همین اگه کسی در این موضوع تجربه و پیشنهادی داره ممنون می شم، کامنت بزاره.

فایل کانفیگ هر دو نرم افزار هم می زارم که هم اگه کسی به دردش خورد استفاده کنه هم اگه مشکلی دیدید به من بگید

ادامه خواندن مشکل fetchmail و offlineimap با gmail

فهرست مطالعه برای System Administrator ها

مدتها بود که دلم می خواست که یه فهرست مطالعه (Reading List) برای System adminstrator ها و Network Administrator ها در حد تجربه خود بنویسم. هی عقب می افتاد. امروز اولین پستش را میخوام بزنم.

چند نکته و ویژگی در مورد این لیست هست:
۱- در برخی تجربه‌ها در این سالها متوجه شدم که باید خیلی قبل تر مطلبی را می خوندم و یا باید می دونستم، ولی چیزی در موردش نمی دونم. برای همین به این لیست اضافه کردم
۲- این لیست یک تلاش کوچیک برای آکادمیک کردن مسیر رشد و یادگیری یک مدیر سیستم یا System Administrator است.
۳- تصمیم دارم این لیست را تاجایی پیش ببرم که شبیه یک دوره لیسانس سه سال یک نفر را پر کنه و یک نفر بتونه سه سال آموزش خودشو برای ورود و یا پیشرفت در بازار کار برنامه ریزی کنه.
۴- شروع لیست با کتاب‌های فارسی است. شاید انتقاد خیلی‌ها را به همراه داشته باشه، ولی من معتقدم یادگیری پایه‌ها، مبانی و اصطلاحات یک تخصص با زبان مادری کار و پیشرفت را خیلی تسهیل می‌کنه. البته مطمئنا در یک جایی به بعد مطالعه ترجمه ها دیگر کارایی لازم را نداره و مطمئنا در ادامه تغیریبا همه کتابها انگلیسی خواهد بود.
۵- این لیست برای هنرستانی‌های رشته کامپیوتر و کاردانی و کارشناسی کامپیوتر مناسب است.
۶- سعی می‌کنم تاجایی که امکان داره دلیل پیشنهاد مطالعه هر کتاب و توانایی هایی که بعد از اون باید بدست بیارید را مطرح کنم

فهرست اول
هدف: آشنایی با مفاهیم، اصطلاحات و ابزارهای پایه در شبکه

۱- اصول طراحی شبکه های کامپیوتری – احسان ملکیان
یکی از بهترین کتاب‌ها است که دید خوبی در مورد انواع شبکه بهتون می‌ده. برای شروع کتاب خیلی خوبیه

۲- اصول مهندسی اینترنت – احسان ملکیان
در این کتاب از لایه های شبکه، پروتکل ها و سرویس ها صحبت شده. ولی تاکید من تو مطالعه این کتاب برای اینه که جزو معدود کتابهایی هست که مفهوم سرویس را می‌تونه برای یک تازه کار روشن کنه و توضیحات خوبی داره

۳- نفوذگری در شبکه و روشهای مقابله – احسان ملکیان
یکی از کتابهای خوب فارسی هست که یک تازه کار را با زبان فنی امنیت آشنا می‌کنه.

این سه کتاب تئوری،  ذهن شما را برای مطالعه عمیق‌تر آماده می کنه. یکی موانع یادگیری آشنا نبودن به کلمات و اصطلاحات، دقیقا جایی که کلمه مهمی را شما در کتاب یا مقاله ای نمی فهمید، جایی هست که از اونجا به بعد مطلب نمی گیرید و بد می گیرید 😉

فهرست را بعدا ادامه می دیم …

اصل «صحبت با انسان بالغ»

مدتهاست دلم می خواد علاوه بر فنی، بیشتر در مورد طرز فکرم و چیزایی که توش می گذره بنویسم. برای این کار چندین دلیل دارم. یکی اینکه نوشتن باعث می شه اون فکر جابیافته. خوب یعنی چی جا بیافته؟ یعنی اینکه برای اولین بار از بیرون ذهن خودت بهش نگاه می‌کنی. این موضوع پایبند بودن به نتیجه ای که در فکرت بهش رسیدی را ساده تر می‌کنه. چون شما خیلی مواقع موضوعی را برای خودت تحیلیل می‌کنی، مشکلی را در ذهنت بر طرف می‌کنی. ولی در صورت برخورد مجدد با مشکل، مجددا همان اشتباه قبلی را انجام می‌دی. چون موضوع برات جا نیافتاده، هنوز نپذیرفتیش. حتی خیلی موقع‌ها، در موضوعی خودت را صاحب نظر نمی‌دونی و به نتیجه ات شک می کنی. در حدی که حتی آزمایشش نمی‌کنی. نوشتن فکر خیلی به جا افتادن اون موضوع برای خود آدم کمک می‌کنه و در جایی باعث پخته تر شدن اون هم می شه.

ادامه خواندن اصل «صحبت با انسان بالغ»

اصل اتوبوس جهانگردی

هر کدام از ما برای عیب یابی یک مشکل در سرویس سیاست خاصی داریم. بعضی مثل من از بررسی چیزای کوچیک و پایه مثل ارتباط شبکه و بررسی مصرف منابع شروع می کنند. بعضی هم یهو می پرند وسط سرویس. الان قصد ندارم متدولوژی عیب یابی را توضیح بدم. ولی یکی از نقاطی که خیلی هامون شروع می کنیم، بررسی آخرین تغییراتی هست که دادیم و شروع می کنیم برگرداندن یا rollback تغییرات تا ببینیم مشکل از اونها نباشه.

یه موضوع دیگه که هم موقع عیب یابی و هم موقع پیاده سازی و تغییرات خیلی هامون به عنوان پیشفرض در نظر می‌گیریم این هست که فرض می‌کنیم، وضعیت در همین چیزی که هست می مونه، فرض می کنیم، که خوب سخت افزار سالمه، فرض می کنیم دسترسی برقراره، فرض می کنیم اینترنت وصله و …

نکته مهم اینه که وقتی بر روی یک سرور عملیاتی شده داری کار می‌کنی اگه یک مرتبه هم این شرایط برقرار نباشه، ممکنه کل سرویس شما بر باد بره و برای همین من برای خودم اصل «اتوبوس جهانگردی» را گذاشتم و سعی می کنم بهش پایبند باشم. یعنی یه اتفاق شاید سالی یه بار بیفته و احتمال داره همین الان باشه. (اشاره به اتوبوس جهانگردی تو کارتن «مورچه و مورچه خوار»)

یعنی شما یک سال قطعی اینترنت نداشتید، دقیقا یک دقیقه بعد از تغییر IP سرور اینترنت قطع می شه. اینجاست که شما اگه به این اصل «آگاه نباشی» به جای تماس به دیتاسنتر، یکی دوساعت را صرف بررسی مجدد تنظیمات IP سرور می کنی. چون می گی من اینو تغییر دادم اینترنت قطع شد. در صورتی که فقط یه همزمانی اتفاق افتاده ، لامصب سالی یه دفعه هم این همزمانی اتفاق می افته.

چند روز پیش ما حمله ای را روی سرور تجربه کردیم، و به دلیل فراموشی همین اصل عیب یابی ما به بیراهه می رفت (البته یکی از دلایل بود). نمودار سرور وقتی افتاده بود که دقیقا من تغییری را در سرور اعلام کرده بودم. به فاصله پنج دقیقه. خوب من و بقیه در درجه اول به این اعتقاد داشتیم که به احتمال زیاد مربوط به اون تغییرات هست. درصورتی که فقط یک همزمانی مسخره و دقیق بود.

محدود کردن دسترسی کاربران معمولی

وقتی یک تیم روی یک پروژه کار می‌کنه و هر کدام از بخش ها دارای وظایف کلیدی هستند و نیاز به دسترسی داده‌ها دارند. خیلی از این نیاز‌ها با ایجاد یک mirror از داده ها در داخل شرکت برآورده می‌شوند. مشکل از زمانی آغاز می‌شود که هر کدام از بخش‌ها نیاز پیدا میکنه که به داده‌های آنلاین دسترسی داشته باشه.

مطمئنا دادن کاربر root کار احمقانه ای است. نه به دلیل عدم اعتماد و دلنگرانی از سوء استفاده از دسترسی ها (که البته بهتره به این هم فکر کنیم)، بلکه به دلیل اینکه همه کاربر‌ها حساسیت مدیر سیستم را در کار با دستورات و خط فرمان ندارند و یه سهل انگاری کوچک ممکنه یک فاجعه به وجود بیاره. بهتره همیشه دسترسی ها در حداقل نیاز خودش حفظ بشه، تا نگرانی از یکپارچگی داده ها و سلامت آنها کمتر بشه.

اولین قدم این هست که به ازای هر نفر یک کاربر بر روی سرور ساخته بشه تا مشخص بشه، چه کسی به سرور متصل شده است.

ادامه خواندن محدود کردن دسترسی کاربران معمولی