كيفية إصلاح فشل الطلب على القناة 0

سئل على ١٩ نوفمبر ٢٠١٤  ·  تمت مشاهدة 251.8k مرة  ·  مصدر

user1895268 picture
في ١٩ نوفمبر ٢٠١٤

عندما أريد الاتصال بخادمي مثل هذا

ssh -a [email protected] -p 22

يعطيني رسالتين خطأ:

PTY allocation request failed on channel 0
shell request failed on channel 0

عندما أستخدم المعلمة -T تختفي رسالة الخطأ الأولى. ولكن كيف تصلح الثانية؟ لا أستطيع الاتصال. إلى الخوادم الأخرى يمكنني الاتصال دون أي مشاكل.

أنا على نظام التشغيل MAC OS 10.9.

تعرض المعلمة -v ناتج التصحيح هذا:

OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: Connecting to xxx.your-server.de [188.40.3.15] port 22.
debug1: Connection established.
debug1: identity file /Users/xxx/.ssh/id_rsa type -1
debug1: identity file /Users/xxx/.ssh/id_rsa-cert type -1
debug1: identity file /Users/xxx/.ssh/id_dsa type -1
debug1: identity file /Users/xxx/.ssh/id_dsa-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.2
debug1: Remote protocol version 2.0, remote software version mod_sftp/0.9.8
debug1: no match: mod_sftp/0.9.8
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Server host key: RSA 55:f5:ca:ca:01:45:0f:7b:71:0a:1f:ba:9e:25:17:fb
debug1: Host 'xxx.your-server.de' is known and matches the RSA host key.
debug1: Found key in /Users/xxx/.ssh/known_hosts:1
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Trying private key: /Users/xxx/.ssh/id_rsa
debug1: Trying private key: /Users/xxx/.ssh/id_dsa
debug1: Next authentication method: password

بعد أن أدخل كلمة المرور ، أحصل على هذا:

debug1: Authentication succeeded (password).
Authenticated to xxx.your-server.de ([xxx.xxx.3.15]:22).
debug1: channel 0: new [client-session]
debug1: Entering interactive session.
debug1: Sending environment.
debug1: Sending env LANG = de_DE.UTF-8
shell request failed on channel 0

الإجابات

vharron picture
في ٢٣ يناير ٢٠١٥
25

فشل طلب تخصيص PTY على القناة 0

يوجد حد لـ 256 محطة طرفية زائفة على النظام. ربما لديك تطبيق يقوم بتسريب محطات زائفة. استعمال

lsof /dev/pts/*

لمعرفة العمليات التي تحتوي على محطات زائفة مفتوحة

فشل طلب shell على القناة 0

لقد تلقيت هذا الخطأ (بدون خطأ تخصيص PTY). اتضح أن أحد تطبيقاتي (QtCreator 3.0.؟) كان يسرب عمليات الزومبي. تمكن المستخدمون الآخرون من تسجيل الدخول ، لذا ربما أكون قد وصلت إلى حصتي العملية لكل مستخدم (إذا كان هناك شيء من هذا القبيل). لقد قمت بالتحديث إلى QtCreator 3.3. حتى الان جيدة جدا.

rajagopalx picture
في ٩ مايو ٢٠١٧
21

فك وتركيب /dev/pts عملت معي

umount /dev/pts

mount devpts /dev/pts -t devpts

المرجع: http://www.iitk.ac.in/LDP/LDP/lfs/5.0/html/chapter06/proc.html

ThreeCheeseHigh picture
في ١ يناير ٢٠١٨
7

كان لدي نفس الخطأ بالضبط أثناء محاولة الاتصال عبر ssh بخادمي. كما أرى ، فأنت تستخدم خادمًا مقدمًا من Hetzner يتصل به على المنفذ 22:

debug1: الاتصال بمنفذ xxx.your-server.de [188.40.3.15] 22.

يقول الويكي الرسمي / التوثيق من Hetzner :

بروتوكول للتشخيصات عن بعد المشفرة للخوادم / أجهزة الكمبيوتر (وحدات التحكم). منفذ SSH الذي سيتم استخدامه هو 222.

لذلك عليك الاتصال عبر المنفذ 222:

ssh -p 222 [email protected]
Ondrej Homolka picture
في ٧ فبراير ٢٠١٧
6

لقد قمت بحل مشكلة مماثلة مع أحد مستخدمينا الذي تم استخدامه فقط لإعادة توجيه منفذ ssh لذلك لا يحتاج إلى الوصول إلى PTY وكان محظورًا في ملف .ssh / author_keys:

no-pty ssh-rsa AAA...nUB9 someuser

لذلك عندما حاولت تسجيل الدخول إلى هذا المستخدم ، أرسل فقط رسالة

PTY allocation request failed on channel 0

وقد عاد. لذا تحقق من ملف Author_keys الخاص بالمستخدم.

Mansur Ali picture
في ١٢ مايو ٢٠١٥
5

ما عليك سوى إضافة هذه الأسطر إلى /etc/mtab و /etc/fstab ، ثم أعد تشغيل النظام.

none    /dev/pts    devpts    defaults    0    0
xmduhan picture
في ٢ أغسطس ٢٠١٨
4

جرب هذا:

vi /etc/security/limits.d/20-nproc.conf
*          soft    nproc     4096   # change to 65535 
root       soft    nproc     unlimited
feli_x picture
في ١٧ مارس ٢٠١٩
4

اكتشفت للتو ، ما هي المشكلة في حالتي (مزود ستراتو): لقد واجهت نفس المشكلة مع الإخراج "فشل طلب قذيفة على القناة 0" في النهاية.

لا بد لي من استخدام كلمة المرور الرئيسية مع اسم مجال الويب لتسجيل الدخول. (باللغة الألمانية www.wunschname.de ، حيث wunschname هو عنوان الويب الخاص بك.)

لم ينجح تسجيل الدخول إلى ssh بأسماء مستخدمين sftp وكلمات المرور المقابلة. (على الرغم من أن scp و sftp يعملان مع مستخدمي sftp هؤلاء!)

Ian Koerich Maciel picture
في ١٢ يوليو ٢٠١٨
2

إنه سؤال قديم ، لكن إذا جاء شخص ما مثلي ...

قد يكون هذا نتيجة لتاريخ خاطئ في الخادم. إذا كنت تعمل مع نظام مضمن ، فقد يكون هذا هو السبب ... لذا تحقق من تاريخك:

$ date
randhir singh picture
في ١٥ يناير ٢٠١٨
1

عملت إعادة تشغيل المثيل من وحدة تحكم AWS بالنسبة لي. كانت هناك خدمة تقوم بتسريب اتصالات الملفات التي ساعد lsof في العثور عليها.

ewwink picture
في ٣١ يوليو ٢٠١٨
1

shell request failed on channel 0

يعني أنه ليس لديك وصول إلى أوامر shell أو عن بُعد ، أو إصلاح إذن المستخدم الخاص بك على الخادم للوصول إلى shell أو إذا كنت تريد فقط إنشاء نفق ، فاستخدم خيارات -N و -T