ssh -l root host.example.com
scp file root@host.example.com:~/
ssh host.example.com w
ssh -L 1025:localhost:5901 vnchost.example.com
ssh客户端监听1025,转发到ssh服务器(即vnchost.example.com)的5901。
本地转发默认在只在lo上监听,若想让其他主机也能连接,
应该使用GatewayPorts功能,即
ssh -g -L 1025:localhost:5901 vnchost.example.com
这样一来,将在ssh客户机上监听0.0.0.0:1025。
ssh -R 1026:localhost:8080 httpclient.example.com
ssh客户端为http服务器,已监听8080,
ssh服务器(即httpclient.example.com)为http客户端,监听1026。
这样,在httpclient.example.com上访问1026即可转发到ssh客户端的8080。
将上面本地转发或远程转发的localhost换成其他主机,就成为了主机外转发。
使用动态转发时,转发的目的端口并非固定端口,而是根据上层协议来确定。
openssh中此功能也实现了SOCKS代理功能。
# 在socks server上执行以下命令
ssh -D 0.0.0.0:8888 ftpserver.example.com
这样,socks server会监听8888。
ftp客户端设置proxy为socks server,ftp到ftpserver.example.com后,
ftp客户端与socks server的8888建立连接,
而在ftpserver上,ssh开启动态端口与ftp服务21及pasv随机端口建立连接。
AllowUsers
DenyUsers
PermitRootLogin no
ssh-keygen
ssh-copy-id
ssh-agent $SHELL
ssh-add
个人理解,ssh-add保存ssh-keygen生成的私钥和密码短语。
而不是登录远程主机是输入的密码。
就是说,想免密码登录,还是必须把公钥部署到远程主机的~/.ssh/authorized_keys中
设置/etc/hosts.allow和/etc/hosts.deny,可以允许或禁止主机或网段或域名建立TCP连接。
使用PUTTYGEN.EXE可以生成密钥对,但并非openssh兼容格式,需要转换。
或者,密钥生成后,或load后,在窗口最靠上的文本框里会显示openssh用的公钥key,
贴到~/.ssh/authorized_keys中即可。
PUTTY.EXE可以设置端口转发,密钥认证等等。
阅读(968) | 评论(0) | 转发(0) |