SSH 非交互方式远程执行命令 通常,我们用ssh username@IP 来远程连接另外一台LINUX主机,然后执行命令。可是如果想以非交互方式远程执行命令时,用SSH该怎么做? 正确的交互思路是: 客户端机器先生成一对密钥,如采用rsa加密,则可以用命令: ssh-keygen -t rsa;在~/.ssh/的系统隐藏目录下将得到两个密钥文件id_rsa和id_rsa.pub,其中id_rsa.pub为公钥,将此生成的公钥复制到远程主机(需要登陆的远程服务器)~/.ssh/目录下的authorized_keys文件中,若该文件不存在,创建之。 这样便建立了两者之间的对应关系,客户端机器A去访问远程服务器B时,A保有私钥,而B则拿出授权公钥,正好能匹配上,则能实现访问了。 另外还有ssh的版本问题: http://docs.huihoo.com/freebsd/zh_CN.GB2312/openssh.html该文进行了说明,需要开启-t选 项,1版的使用ssh-keygen -t rsa1,2版的使用ssh-keygen -t rsa即可。 配置好以后,只需要在ssh ip ‘command’ 用想要执行的命令代替command即可,还需要注意远程执行的权限问题,如一般不能通过web的方式完成需要具有root权限的命令执行。