2012-06-29 2 views
0

안녕하세요, controllernet:ssh 연결이 있습니다. 연결을 설정하는 동안 host name을 동적으로 변경할 수 있습니다. 하지만 처음 로그인 할 때 쉘은 연결 여부를 묻습니다. iam이 웹을 통해 연결하기 때문에 나에게 묻는 팝업을 볼 수 없었습니다. 따라서 나는 https://groups.google.com/group/comp.lang.tcl/browse_thread/thread/ca0cd6ec905eb702 을 읽고이 태그를 호스트에 연결하는 동안 "-oStrictHostKeyChecking=no"을 추가하고 싶습니다. 우리가 아래가 연결을 설정하는 동안 내가이 추가 매개 변수 "-oStrictHostKeyChecking=no"을 통과 할 레일ruby ​​on rails net ssh strickhostkeychecking = no

 @HOST = 'hostname' 
    @USER = 'username' 
    @PASS = 'password' 

    Net::SSH.start(@HOST, @USER, :password => @PASS) do|ssh| 

의 표준 네트의 형식 : ssh를 알고으로?

는 이미
@HOST = 'hostname -oStrictHostKeyChecking=no' 

을 시도했지만 작동하지 않습니다. 도와주세요

답변

0

호스트를 기억하고 연결을 다시 시도하여 호스트 키 불일치를 처리하는 다음과 같이 ruby의 begin/rescue를 사용할 수 있습니다.

begin 
    Net::SSH.start(@host, @user, :password => @pass) do |ssh| 
    ... #what ever you want to do 
    end 
rescue Net::SSH::HostKeyMismatch => e 
    e.remember_host! 
    retry 
end