منع انتهاء مهلة اتصال SSH / الأنبوب المكسور

كيفية منع جلسة SSH من قطع الاتصال بالخادم. انتهت مهلة الاتصال أو كسر الأنبوب

كلاهما كمستخدم Windows فضلا عن Mac (في السنوات العشر الماضية) قضيت الكثير من الوقت فيها اتصالات SSH إلى خوادم الويب وخوادم البريد الإلكتروني والسحابة وحزم النسخ الاحتياطي الأخرى. التوزيع المفضل لنظام Linux هو بلا شك CentOS.

أحد أكثر الأشياء التي تسبب ضغوطًا لمشرفي الخادم هو لمقاطعة اتصالات SSH. إما فجأة أثناء الضغط على المعجون أو المحطة الطرفية (غالبًا ما تكون مشكلة اتصال محلي) ، أو بعد فترة من الوقت "الخمول”- الفترة الزمنية التي لا يتفاعل خلالها مع الخادم البعيد من خلال جلسة SSH.

إذا كنت تستخدم Mac واستخدم الأداة الطرفية للاتصال عن بُعد عبر SSH ، ثم بالتأكيد بعد فترة من عدم النشاط تم قطع اتصالك بالرسالة: "client_loop: إرسال قطع الاتصال: أنبوب مكسور". أعطيت الحل في المقال هنا، حيث قلت أنه يمكن إضافته "/etc/ssh/ssh_config" الخط:

Host *
ServerAliveInterval 120

الحل أعلاه صالح لمستخدمي Mac، وبصراحة أن تكون آخر التحديثات لـ macOS لا مانع restart التغييرات التي تم إجراؤها على الملف "ssh_config"، ومشكلة فصل جلسة الخمول تعود.

حل يمكننا من خلاله منع انقطاع جلسة SSH على مسافة محددة محطة (macOS) أو المعجون (Windows) ، يشبه إلى جانب "ServerAliveIntervalمن جهاز الكمبيوتر الخاص بنا ، لتحديد الخادم البعيد للتواصل بشكل دوري مع تطبيق / عميل SSH.
لهذا السبب يتعين علينا وضع التوجيه "ClientAliveInterval"في"sshd_config"على الخادم الذي نتصل به.

منع انتهاء مهلة اتصال SSH / الأنبوب المكسور (نصائح ssh_config)

1. نقوم بالاتصال بالخادم الذي نريد تنشيطه وتعيين فاصل زمني لـ "ClientAliveInternal". نفتح SSH في Putty أو Terminal أو أداة أخرى مماثلة ونقوم بالمصادقة مع المستخدم root.

ssh root@server.hostname

2. قم بتنفيذ سطر الأوامر للبحث في ملف "sshd_config" إذا كان "ClientAliveInterval" نشطًا وما هي الفترة الزمنية المحددة.

sudo grep "ClientAliveInterval" /etc/ssh/sshd_config

في السيناريو الخاص بنا ، يتم تعطيل "ClientAliveInterval" وقيمة الفاصل الزمني هي صفر.

[root@buffy ~]# sudo grep "ClientAliveInterval" /etc/ssh/sshd_config
#ClientAliveInterval 0
[root@buffy ~]# 

الهاشتاج "#"إذا تم وضعه أمام السطر ، فإنه يلغيه. هي غير نشطة.

3. نفتح مع المحرر "nano"أو"vim"ملف"sshd_config". أنا أفضل "نانو".

sudo nano /etc/ssh/sshd_config

4 - تحذف عبارة "#"أمام الخط"ClientAliveInterval"وحدد عدد الثواني: 60 ، 120 ...

ClientAliveInterval 120
ClientAliveCountMax 10

5. احفظ التغييرات و restartلدي الخدمة "sshd".

sudo systemctl restart sshd

ClientAliveInterval : هو الفاصل الزمني بالثواني الذي يرسل فيه الخادم حزمة بيانات فارغة إلى العميل / التطبيق الذي نتصل من خلاله بالخادم. هذه الممارسة ستبقي الاتصال نشطًا / نشطًا

ClientAliveCountMax : عملاء SSH لا يستجيبون في 10 دورات كل 120 ثانية (تم تعيينه بواسطة "ClientAliveInterval") سيتم قطع الاتصال. أي بعد 20 دقيقة لم يستجب فيها عميل SSH للحزم الفارغة التي أرسلها الخادم.

مع هذه التغييرات ، سيكون اتصال SSH أكثر استقرارًا وسيظل آمنًا تمامًا.

اترك تعليق

بريدك الالكتروني addلن يتم نشر ress. الحقول المشار إليها إلزامية *

المبلغ الإجمالي
0
سهم
المادة السابقة

كيف نرى ما يبحث عنه المستخدمون على موقع WordPress أو متجر WooCommerce عبر الإنترنت (استعلام مربع البحث)

المادة المقبلة

ألا يمكنك سماع صوت "إفراغ سلة المحذوفات"؟ [كيفية الإصلاح]