7 Replies Latest reply: Dec 14, 2012 6:51 AM by varjak paw
AppleJason Level 1 Level 1 (10 points)

If another person is connected to our server via ARD (likely ME, but forgot to close the connection, and I don't remember where from) is there a way to kill or override the ARD session?  SSH?

 

The only way I know how is to force reboot the computer (hold button down) but that is not ideal...


iMac, Mac OS X (10.6.8), i5 with Thunderbolt
  • varjak paw Level 10 Level 10 (169,810 points)

    If you can SSH into the server from Terminal, try the kickstart command to restart the ARD client:

     

    /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/ki ckstart -restart -agent

     

    Regards.

  • AppleJason Level 1 Level 1 (10 points)

    Thanks for the reply, but I did a test:  I opened an ARD connection to a machine (A)  from one system (B).  On another system (C), I ssh into A, and ran:

     

    $sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -restart -agent

     

    while it worked, and did *something* (see below), it did not kill my ARD remote connection.  I had full control still from B.

     

    I saw:

     

    Starting...

    Stopped ARD Agent.

    Stopped VNC Server.

    Stopped RFB Register MDNS

    Done.


  • varjak paw Level 10 Level 10 (169,810 points)

    That would be how it's supposed to work, if I understand your description correctly. "B" will of course reconnect to "A" when you run ARD on "B". You said, again unless I misunderstood, that you had some other system, "D", holding the connection and blocking you from connecting from "B", in which case using the killall command should get that to release from "D" unless ARD on system "D" is still running in which case it will probably reconnect.

     

    Have I misunderstood your scenario?

     

    Regards.

  • AppleJason Level 1 Level 1 (10 points)

    Ok, now I'm confused!  hehe

     

    Let me start over.

     

    I have a server (S).  An unknown client (C-U) is connected to it.  Another client, me, (C-Me) wants to connect to S but can't.  I can see in the ARD scanner on C-Me that something is connected to S.  I want to disconnect C-U so C-Me can connect.

     

    In my test, I simulated C-U connecting to S.  Then from C-Me, I attempt to connect to S, but can't.

    Then from C-Me, I ssh to S, and I run the Kickstart restart on S, but I still can not connect to S from C-Me.

     

    On the C-U system, I see the connection is still fully connected, and was never disconnected.  Therefore, it looks as if the kickstart command did not do anything (in my limited knowledge of what is happening!)

  • varjak paw Level 10 Level 10 (169,810 points)

    Forgive what may be a dumb question on my part, but have you actually tried the kickstart command on the actual server itself? Or have you just been trying this in the "simulation"?

  • AppleJason Level 1 Level 1 (10 points)

    valid question! Esp coming from someone with as much experience as you... covering the bases.

     

    Yes, it's all real.

     

    My "simulation" only refers to the fact that as I've already hard-rebooted the server to clear the real 'unknown" client...I am now testing the "unknown client (C-U)" with a known computer  - so I can see what's happening on it when I issue the command from the server via ssh

  • varjak paw Level 10 Level 10 (169,810 points)

    It may be that, as in my previous suggestion, the ARD app on "C-U" is immediately reconnecting, but without setting up a similar test setup, I can't be certain. Perhaps someone else here will have some insight into the situation.

     

    Regards.