banner

[Rule] Rules  [Home] Main Forum  [Portal] Portal  
[Members] Member Listing  [Statistics] Statistics  [Search] Search  [Reading Room] Reading Room 
[Register] Register  
[Login] Loginhttp  | https  ]
 
Forum Index Thảo luận hệ điều hành *nix SSH File tràner client bị lỗi "Most likely the sftp-server is not in "  XML
  [Question]   SSH File tràner client bị lỗi "Most likely the sftp-server is not in " 17/05/2013 22:57:34 (+0700) | #1 | 275793
nguoixanh
Member

[Minus]    0    [Plus]
Joined: 20/03/2010 19:32:23
Messages: 52
Offline
[Profile] [PM]
Chào các anh/chị,
em cài SSH sever trên CentOS 6, lúc dùng SSH File tràner client connect vào sever thì bị lỗi:
Most likely the sftp-server is not in the path of the user on the server-side

Em tìm 1 hồi trên mạng, mày mò cách sửa thì được chỉ là bỏ dòng "echo ..." trong file ~/.bashrc (hồi trước em tự thêm vào)
Vấn đề được giải quyết, tuy nhiên em không hiểu vì sao có dòng "echo ..." thì bị lỗi trên ạ.

Mong các anh chị giúp đỡ.
[Up] [Print Copy]
  [Question]   SSH File tràner client bị lỗi "Most likely the sftp-server is not in " 18/05/2013 06:41:41 (+0700) | #2 | 275794
[Avatar]
ComandC
Member

[Minus]    0    [Plus]
Joined: 09/11/2012 07:48:51
Messages: 40
Offline
[Profile] [PM]
Bạn có thể up file .bashrc lên cho mọi người xem thử. Chứ bạn gõ echo.... thì không ai biết trong đó nó viết thế nào cả
One Trip More Experience
[Up] [Print Copy]
  [Question]   SSH File tràner client bị lỗi "Most likely the sftp-server is not in " 18/05/2013 10:31:01 (+0700) | #3 | 275797
[Avatar]
quangteospk
Member

[Minus]    0    [Plus]
Joined: 20/10/2009 04:05:30
Messages: 123
Offline
[Profile] [PM]
Bồ đang cấu hình cái gì? SSH hay FTP?
Jazz
[Up] [Print Copy]
  [Question]   SSH File tràner client bị lỗi "Most likely the sftp-server is not in " 18/05/2013 14:47:39 (+0700) | #4 | 275802
nguoixanh
Member

[Minus]    0    [Plus]
Joined: 20/03/2010 19:32:23
Messages: 52
Offline
[Profile] [PM]
File .bashrc đây mọi người:




Dòng echo dưới cùng đó.
[Up] [Print Copy]
  [Question]   SSH File tràner client bị lỗi "Most likely the sftp-server is not in " 20/05/2013 08:39:48 (+0700) | #5 | 275830
[Avatar]
quangteospk
Member

[Minus]    0    [Plus]
Joined: 20/10/2009 04:05:30
Messages: 123
Offline
[Profile] [PM]
Dòng echo đó đơn giản chỉ là xuất ra cho bạn một đoạn text khi bạn mở một Terminal lên thôi. Nhưng vẫn chưa rõ là bồ đang muốn hỏi cái gì? Dịch vụ SSH của bồ đã sử dụng được chưa, lỗi trên đã giải quyết được chưa? Bồ thắc mắc ý nghĩa của dòng #echo đó?...
Jazz
[Up] [Print Copy]
  [Question]   SSH File tràner client bị lỗi "Most likely the sftp-server is not in " 20/05/2013 12:21:26 (+0700) | #6 | 275831
[Avatar]
quanta
Moderator

Joined: 28/07/2006 14:44:21
Messages: 7265
Location: $ locate `whoami`
Offline
[Profile] [PM]

quangteospk wrote:
Dòng echo đó đơn giản chỉ là xuất ra cho bạn một đoạn text khi bạn mở một Terminal lên thôi.
 

Bạn ấy biết điều đó.

quangteospk wrote:

Nhưng vẫn chưa rõ là bồ đang muốn hỏi cái gì?
 

Mình thấy bạn ấy đặt câu hỏi rõ ràng mà, bạn thử đọc lại xem.

quangteospk wrote:

Dịch vụ SSH của bồ đã sử dụng được chưa,
 

Rồi.

quangteospk wrote:

lỗi trên đã giải quyết được chưa?
 

Rồi.

quangteospk wrote:

Bồ thắc mắc ý nghĩa của dòng #echo đó?... 

Không.

@nguoixanh: bạn thử tìm hiểu mấy khái niệm: standard input, tty, interactive shell, ... xem.
Let's build on a great foundation!
[Up] [Print Copy]
  [Question]   SSH File tràner client bị lỗi "Most likely the sftp-server is not in " 20/05/2013 15:07:21 (+0700) | #7 | 275835
nguoixanh
Member

[Minus]    0    [Plus]
Joined: 20/03/2010 19:32:23
Messages: 52
Offline
[Profile] [PM]
Cảm ơn anh quanta, cách trả lời kiểu gợi ý tìm hiểu của anh và 1 số anh khác ở HVA (như anh conmale) em rất thích.

Now, let's me see !
[Up] [Print Copy]
  [Question]   SSH File tràner client bị lỗi "Most likely the sftp-server is not in " 20/05/2013 15:51:57 (+0700) | #8 | 275837
[Avatar]
quangteospk
Member

[Minus]    0    [Plus]
Joined: 20/10/2009 04:05:30
Messages: 123
Offline
[Profile] [PM]

quanta wrote:

quangteospk wrote:
Dòng echo đó đơn giản chỉ là xuất ra cho bạn một đoạn text khi bạn mở một Terminal lên thôi.
 

Bạn ấy biết điều đó.

quangteospk wrote:

Nhưng vẫn chưa rõ là bồ đang muốn hỏi cái gì?
 

Mình thấy bạn ấy đặt câu hỏi rõ ràng mà, bạn thử đọc lại xem.

quangteospk wrote:

Dịch vụ SSH của bồ đã sử dụng được chưa,
 

Rồi.

quangteospk wrote:

lỗi trên đã giải quyết được chưa?
 

Rồi.

quangteospk wrote:

Bồ thắc mắc ý nghĩa của dòng #echo đó?... 

Không.

@nguoixanh: bạn thử tìm hiểu mấy khái niệm: standard input, tty, interactive shell, ... xem. 


Hi anh quanta,

Không rõ là cách trao đổi của em trên diễn đàn có làm phiền lòng gì đến anh không, nhưng em "có cảm giác" là anh có gì không hài lòng lắm với cách trao đổi của em (em chỉ phỏng đoán chứ ko chỉ trích gì đâu nhé).

Kiến thức về Linux của em vẫn còn hạn chế nên em coi cách trao đổi trên HVA là con đường mà em tiếp thu thêm kiến thức, tất nhiên có những lúc em giải quyết vấn đề không đúng, nhưng em nghĩ nghe chỉ trích mình sai ở đâu thì tốt hơn là cách trao đổi của anh. Những bài viết của anh em vẫn đọc và tiếp thu được nhiều kiến thức. smilie

Có gì không hài lòng anh có thể trao đổi trực tiếp, chứ trao đổi kiểu trả lời dùm em cũng không rõ mình sai ở đâu.

Thân.
Jazz
[Up] [Print Copy]
  [Question]   SSH File tràner client bị lỗi "Most likely the sftp-server is not in " 20/05/2013 16:19:05 (+0700) | #9 | 275838
[Avatar]
quanta
Moderator

Joined: 28/07/2006 14:44:21
Messages: 7265
Location: $ locate `whoami`
Offline
[Profile] [PM]
@quangteospk: mình chỉ chưa rõ là bạn không hiểu câu hỏi của @nguoixanh ở chỗ nào thôi.
Let's build on a great foundation!
[Up] [Print Copy]
  [Question]   SSH File tràner client bị lỗi "Most likely the sftp-server is not in " 21/05/2013 09:49:22 (+0700) | #10 | 275858
nguoixanh
Member

[Minus]    0    [Plus]
Joined: 20/03/2010 19:32:23
Messages: 52
Offline
[Profile] [PM]
Chào các anh em, mình vừa tìm tòi và đúc kết 1 số kiến thức về interactive shell. Mọi người có thể xem giúp mình sai sót chỗ nào không với nhé.

Trên hệ thống Linux, shell là chương trình thực thi các lệnh từ người dùng (gõ vào thông qua dòng lệnh) hay đọc từ file script, nó làm trung gian chuyển lệnh từ người dùng vào kernel, bao gồm các công đoạn đọc lệnh, chạy file thực thi tương ứng với lệnh đó.
Có nhiều shell, ta có thể liệt kê 1 số shell phổ biến:
- SH shell: là shell ban đầu của các hệ thống UNIX, rất phổ biến, được phát triển bởi Stephen Bourne tại Bell Labs vào 1974. Đây là shell nhỏ và ít tính năng, chủ yếu phù hợp với điều khiển I/O chứ không mạnh mẽ với tương tác người dùng.
- Bash shell: tên khác là Bourne-Again, là shell mặc định trên hệ thống Linux, phát triển từ SH shell nên mạnh mẽ hơn nhiều.
- C shell, tức CSH: phát triển bởi Bill Joy tại ĐH Berkeley, cú pháp và phương pháp sử dụng giống với ngôn ngữ C
- TCSH: phiên bản phát triển của CSH, hoàn thiện hơn CSH.

Có thể xem các shell trong máy mình tại /etc/shells
Interactive / Non-interactive shell script
Các script có 2 loại :
- Interactive script là những script mang tính tương tác với người dùng, kiểu như các lệnh được nhập vào từ bàn phím, đặc biệt là các lệnh chờ các phản hồi của người dùng.
- Non-interactive: ngược lại, loại này chạy âm thầm và không tương tác với người dùng, kiểu như các lệnh được viết sẵn trong các file script.
Login shell và Nologin shell
Một khái niệm cần hiểu rõ của shell là việc phân loại thành Login và Non-login shell.
Khi login thành công, tiến trình login sẽ được thay thế bởi shell, (thông thường theo mặc định là bash shell), shell này là LOGIN shell. Khi LOGIN shell chạy, nó sẽ đọc và thực thi trước hết các STARTUP file sau theo thứ tự:
- /etc/profile
- ~/.bash_profile
- ~/.bash_login (nếu có)
- ~/.profile (nếu có)

Các NON-LOGIN shell là các shell không phải LOGIN shell, khi khởi chạy, nó đọc file ~/.bashrc
Tại dấu nhắc dòng lệnh, gõ tên shell để khởi chạy shell mới thay cho shell cũ, nếu dùng lệnh ps như trên hình, PPID shell mới chính là PID của shell cũ.
Shell mới này là interactive non-login shell (là NON-LOGIN shell). Các biến môi trường tự đinh nghĩa, history lệnh của các shell khác nhau thì độc lập với nhau.
Một cái khác nữa giữa NOLOGIN và LOGIN shell là khi ở NON-LOGIN shell, không thể gõ logout để thoát mà phải gõ exit.
Chú ý rằng biến SHELL (echo $SHELL) KHÔNG hiển thị đúng shell hiện hành.
[Up] [Print Copy]
  [Question]   SSH File tràner client bị lỗi "Most likely the sftp-server is not in " 21/05/2013 13:37:41 (+0700) | #11 | 275859
explorer88
Member

[Minus]    0    [Plus]
Joined: 06/11/2010 22:32:47
Messages: 75
Offline
[Profile] [PM]
Hi bạn nguoixanh,

Mình tò mò là tại sao dòng echo đặt ở cuối file .bashrc lại gây lỗi đó nhỉ ? Mình thử tái hiện trên máy ảo Centos (bản 6.4): Thêm dòng echo đó vào cuối /root/.bashrc nhưng mình vẫn login ssh, chạy lệnh bình thường. Trong trường hợp của mình, bản Centos đã có sẵn ssh server và client.
[Up] [Print Copy]
  [Question]   SSH File tràner client bị lỗi "Most likely the sftp-server is not in " 21/05/2013 15:07:44 (+0700) | #12 | 275862
nguoixanh
Member

[Minus]    0    [Plus]
Joined: 20/03/2010 19:32:23
Messages: 52
Offline
[Profile] [PM]
to @explorer88:

Connect SSH bình thường không sao, nhưng "ftp over SSH" như scp hay sftp thì bị lỗi.
[Up] [Print Copy]
  [Question]   SSH File tràner client bị lỗi "Most likely the sftp-server is not in " 21/05/2013 17:47:06 (+0700) | #13 | 275869
explorer88
Member

[Minus]    0    [Plus]
Joined: 06/11/2010 22:32:47
Messages: 75
Offline
[Profile] [PM]
Mình thử tái hiện lại lỗi bằng cách echo trong ~/.bashrc, không gặp lỗi như bạn nhưng lại gặp lỗi Received message too long 1920017777 Và khi mình bỏ dòng echo đi thì cũng giải quyết được.

sftp/scp có vẻ không thích output trong shell initialization. Mình tìm thấy thông báo này trong mục FAQ:
http://www.openssh.org/faq.html#2.9

Đọc trong man bash thì có đoạn sau:

Bash attempts to determine when it is being run with its standard input connected to a network connection, as when executed by the remote shell daemon, usually rshd, or the secure shell daemon sshd. If bash determines it is being run in this fashion, it reads and executes commands from ~/.bashrc 


--> Khi chạy sftp một remote bash được mở ra nhận data input từ network connection. Bash này là một non-interactive, non-login shell và chỉ đọc ~/.bashrc. Khi đọc đến file này, gặp các output từ echo, stfp thấy bối rối nên nó ném exception và kết thúc. Còn lý do tại sao nó bối rối thì chắc nằm trong mã nguồn của nó.

Vài thông tin bổ sung hi vọng giúp ích cho bạn.
[Up] [Print Copy]
  [Question]   SSH File tràner client bị lỗi "Most likely the sftp-server is not in " 21/05/2013 22:44:36 (+0700) | #14 | 275874
[Avatar]
quanta
Moderator

Joined: 28/07/2006 14:44:21
Messages: 7265
Location: $ locate `whoami`
Offline
[Profile] [PM]
@nguoixanh: có cách nào để check một shell là interactive, sau đó mới `echo` không nhỉ?

explorer88 wrote:
Mình thử tái hiện lại lỗi bằng cách echo trong ~/.bashrc, không gặp lỗi như bạn nhưng lại gặp lỗi Received message too long 1920017777
 

4 chữ cái đầu tiên trong đoạn text mà bạn `echo` có phải là: rq%q smilie?

explorer88 wrote:

--> Khi chạy sftp một remote bash được mở ra nhận data input từ network connection. Bash này là một non-interactive, non-login shell và chỉ đọc ~/.bashrc. Khi đọc đến file này, gặp các output từ echo, stfp thấy bối rối nên nó ném exception và kết thúc. Còn lý do tại sao nó bối rối thì chắc nằm trong mã nguồn của nó.
 

Chưa cần mở source ra đọc đâu. Bạn thử chạy `tcpdump` trong 2 trường hợp rồi so sánh xem.

Let's build on a great foundation!
[Up] [Print Copy]
  [Question]   SSH File tràner client bị lỗi "Most likely the sftp-server is not in " 22/05/2013 16:25:36 (+0700) | #15 | 275911
explorer88
Member

[Minus]    0    [Plus]
Joined: 06/11/2010 22:32:47
Messages: 75
Offline
[Profile] [PM]
4 chữ cái đầu tiên trong đoạn text mà bạn `echo` có phải là: rq%q ?  


Hì 1920017777 = 0x72712571 = tra ASCII -> rq%q đúng không ạ smilie

Chưa cần mở source ra đọc đâu. Bạn thử chạy `tcpdump` trong 2 trường hợp rồi so sánh xem.  


Anh có phải decrypt ssh payload ra không ạ ? Em tcpdump cả hai trường hợp rồi nhìn từ tầng tcp xuống thấy không có gì đặc biệt, data trong ssh bị mã hoá hết em không đọc được. Khác duy nhất giữa hai lần tcpdump là với trường hợp có thông báo Received message too long thì client sẽ send FIN để kết thúc phiên. Anh bật mí thêm được không, em bí rồi smilie
[Up] [Print Copy]
[digg] [delicious] [google] [yahoo] [technorati] [reddit] [stumbleupon]
Go to: 
 Users currently in here 
1 Anonymous

Powered by JForum - Extended by HVAOnline
 hvaonline.net  |  hvaforum.net  |  hvazone.net  |  hvanews.net  |  vnhacker.org
1999 - 2013 © v2012|0504|218|