Saya memiliki Linux-VPS, menggunakannya sebagai GIT- dan HTTP-Server.
HTTP: Apache
Git-server: git-http-backend melalui vhost
Ketika saya masuk saya melalui SSH, semuanya baik-baik saja. Tetapi jika saya membuka SSH-Connection kedua, saya mendapatkan kesalahan ini:
stdin: bukan tty
Saya menggunakan ssh selama bertahun-tahun dan belum pernah melihat kesalahan seperti itu .. Saya mencari-cari lebih dari 1,5 jam ..
** Sementara saya menulis ini, kesalahan semakin aneh - sekarang kesalahan datang pada setiap koneksi!
Saya belum menemukan solusi yang membantu saya ..
Saya menggunakan..
- Windows
- Secure Shell Client (cukup outdatet, tetapi jauh lebih bagus daripada dempul)
linux
ssh
apache-http-server
git
Mijago
sumber
sumber
ssh -t
atau bahkanssh -tt
.plink
memiliki-t
opsi untuk memaksa pseudo-tty, yang menjelaskan mengapa itu tidak berhasil. Jika semuanya semakin buruk, apakah Anda sudah mempertimbangkan untuk me-reboot?putty
saja. Rupanya, ada pohon SSH di sebelah kiri di mana Anda dapat mengontrol alokasi pseudo-tty. Saya tidak menggunakannya sendiri, jadi tidak dapat mengkonfirmasi / menyangkal :-)Jawaban:
Apakah Anda "chaining" koneksi ssh? Itu mungkin penyebabnya. Saya pikir https://unix.stackexchange.com/questions/48527/ssh-inside-ssh-fails-with-stdin-is-not-a-tty relevan.
sumber
Untuk alasan yang saya tidak mengerti (tapi lihat nanti), shell Anda tidak diatur ke interaktif; hanya masalah, di server jauh,
ini akan membuat shell menjadi interaktif dan Anda akan baik-baik saja. Pada titik ini Anda mungkin harus sumber file .bashrc Anda, karena yang standar sering diberikan dengan baris berikut, terletak tepat di bagian atas file:
Ini memeriksa apakah di antara flag shell ($ -) ada i , untuk interaktif ; jika tidak ada, ia melompati sumber file. maka kebutuhan untuk sekarang dijalankan
yang akan memberi Anda lingkungan standar Anda. Saya sangat menyarankan Anda untuk mengeksekusi bash -i secara otomatis, misalnya di dalam file .bashrc Anda: mengeksekusi skrip otomatis yang mengatur shell menjadi interaktif adalah sebuah oxymoron, dan setara dengan mengarahkan pistol yang dimuat ke pelipis Anda.
Mengapa pesan kesalahan ini muncul, saya hanya bisa berspekulasi:
ISP Anda memungkinkan sejumlah kecil PTY simultan dialokasikan untuk setiap pengguna; misalnya kebijakan GitHub (memungkinkan nol PTY), tetapi tidak dapat benar-benar melihat keuntungan dengan mengizinkan angka kecil, tetapi tidak nol. Tapi kemudian, mungkin ada seseorang yang lebih pintar daripada aku yang bisa menjelaskan ini ...
Anda mencoba ssh dari dalam shell terbalik , masalah yang terkenal untuk pentester. Ada beberapa cara untuk mengatasinya.
ini adalah sesuatu yang berkaitan dengan Secure Shell Client versi lama yang Anda gunakan, atau Windows, tetapi dalam kedua kasus itu saya tidak banyak membantu.
sumber