远程执行命令(command remote execution)主要可以使用如下几个命令

1.rexec
2.rsh & rlogin
3.ssh

1.rexec
顾名思义,就是remote execute。windows下面也有这个命令。能够远程执行的关键是在HOME目录下面修改.netrc 文件。.netrc通常用来ftp的自动登录,里面记录了远程主机的IP和用户名与密码。为了保密,该文件的访问权限通常被建议设置成600.

2.rsh & rlogin
rsh的通信机制和telnet类似,因此也不是很安全,有的时候甚至可以被认为是危险的。它的命令格式通常是
rsh -l usename hostname [command]
或者
rsh username@hostname [command]
如果后面的command为空,则会登录远程主机。
rsh能够远程执行的关键是要修改远程注意的HOME目录下面的.rhosts文件,在里面添加一条如下的记录
yourhost.yourdomain yourname

3. ssh
ssh是一种安全的通信机制,因此将会代替rsh。要使用ssh与远程主机通信,需要
a)在本地产生公钥和私钥。ssh-keygen命令可以用来完成这一目的
b)将公钥的内容添加至远程主机的HOME目录下面的.ssh/authorized_keys文件
这样完成之后,我们就可以使用如下的格式远程执行命令
ssh -l username hostname [command]
或者
ssh username@hostname [command]
如果command为空,则会自动登录远程主机,再也不需要输入密码

你可能感兴趣的:(windows,ssh)