Merhaba, uzak bir bilgisayarda ant sshexec task'ini kullanarak komut çalıştırmak istiyorum. Target'im aşağıdaki gibi :

<target id="9" name="connectrun">
<sshexec host="192.168.1.34"
   username="myusername"
   password="mypassword"
   trust="true" 
   verbose="true"
   command="cmd /c dir C:\\">
   </sshexec>
</target>

Ant version 1.8.2 ve jsch-0.1.48.jar library kullanıyorum. Kendi bilgisayarım da uzaktaki bilgisayar da Windows 7. Güvenlik duvarları da kapalı ancak yinede hata alıyorum. Yardımcı olanlara şimdiden minnettarım. Hata da şu şekilde :

com.jcraft.jsch.JSchException: java.net.ConnectException: Connection refused: connect
at com.jcraft.jsch.Util.createSocket(Util.java:341)
at com.jcraft.jsch.Session.connect(Session.java:182)
at com.jcraft.jsch.Session.connect(Session.java:150)
at org.apache.tools.ant.taskdefs.optional.ssh.SSHBase.openSession(SSHBase.java:223)
at org.apache.tools.ant.taskdefs.optional.ssh.SSHExec.execute(SSHExec.java:190)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:390)
at org.apache.tools.ant.Target.performTasks(Target.java:411)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399)
at org.apache.tools.ant.Project.executeTarget(Project.java:1368)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1251)
at org.apache.tools.ant.module.bridge.impl.BridgeImpl.run(BridgeImpl.java:284)
at org.apache.tools.ant.module.run.TargetExecutor.run(TargetExecutor.java:539)
at org.netbeans.core.execution.RunClassThread.run(RunClassThread.java:153)
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:69)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:157)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:391)
at java.net.Socket.connect(Socket.java:579)
at java.net.Socket.connect(Socket.java:528)
at java.net.Socket.<init>(Socket.java:425)
at java.net.Socket.<init>(Socket.java:208)
at com.jcraft.jsch.Util.createSocket(Util.java:335)

soruldu: 21 Haz '12, 08:35

hasanfellah's gravatar image

hasanfellah
16225
cevap kabul oranı: 100%

değiştirildi: 21 Haz '12, 08:56

%C3%B6zcanacar's gravatar image

özcanacar ♦♦
17.2k59183183


Konuda yeni olduğum için vakit kaybettim ama çözümü buldum. Remote server olarak kullanılacak bilgisayarda SSH server kurulumu olması gerekiyor. Ve ayarlarından, yeni bir user oluşturulup, SSH, SFTP ve telnet gibi izinleri verebiliyorsunuz user için. Bu oluşturulan user, client tarafındaki ant task'i içerisinde kullanılacak olan user oluyor. Windows'un kendi local user larını kullanıp, Auth Fail hatalarıyla uğraşmayın bir de. SSH client tarafında, ant dosyasında eğer özel olarak ayrı bir port kullanmıyorsanız, default olarak port 22 kullanılıyor olacaktır. Bunun için, SSH server'da port 22 için, gerekli izinleri verin.(Any diyeceksiniz IP spesifikasyonları için) Konuyu araştıranlar için, benm tavsiyem non-commercial, aşağıdaki freeSSHd olacak. Tabi bu windows için. Linux kullananlara tavsiyem Putty'e bir göz atın. Ama mantık aynı olacaktır. İyi çalışmalar.

http://www.techmalaya.com/2009/08/05/setup-ssh-server-for-windows-freesshd/

permanent link

cevaplandı: 21 Haz '12, 19:12

hasanfellah's gravatar image

hasanfellah
16225
cevap kabul oranı: 100%

Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×1,079
×7
×1

Soruldu: 21 Haz '12, 08:35

Görüntüleme: 769 kez

Son güncelleme: 21 Haz '12, 19:12

powered by BitNami OSQA