SSH 连接方式
ssh -p 22 user@192.168.1.209 # 从linux ssh登录另一台linux
ssh -p 22 root@192.168.1.209 CMD # 利用ssh操作远程主机
scp -P 22 文件 root@ip:/目录 # 把本地文件拷贝到远程主机
sshpass -p ‘密码‘ ssh -n root@$IP "echo hello" # 指定密码远程操作
ssh -o StrictHostKeyChecking=no $IP # ssh连接不提示yes
ssh -t "su -" # 指定伪终端 客户端以交互模式工作
scp root@192.168.1.209:远程目录 本地目录 # 把远程指定文件拷贝到本地
ssh -N -L2001:remotehost:80 user@somemachine # 用SSH创建端口转发通道
ssh -t host_A ssh host_B # 嵌套使用SSH
ssh -t -p 22 $user@$Ip /bin/su - root -c {$Cmd}; # 远程su执行命令 Cmd="\"/sbin/ifconfig eth0\""
ssh-keygen -t rsa # 生成密钥
ssh-copy-id -i xuesong@10.10.10.133 # 传送key
vi $HOME/.ssh/authorized_keys # 公钥存放位置
sshfs name@server:/path/to/folder /path/to/mount/point # 通过ssh挂载远程主机上的文件夹
fusermount -u /path/to/mount/point # 卸载ssh挂载的目录
ssh user@host cat /path/to/remotefile | diff /path/to/localfile - # 用DIFF对比远程文件跟本地文件
su - user -c "ssh user@192.168.1.1 \"echo -e aa |mail -s test mail@163.com\"" # 切换用户登录远程发送邮件
SSH 反向连接
# 外网A要控制内网B ssh -NfR 1234:localhost:2223 user1@123.123.123.123 -p22
# 将A主机的1234端口和B主机的2223端口绑定,相当于远程端口映射
ss -ant # 这时在A主机上sshd会listen本地1234端口 # LISTEN 0 128 127.0.0.1:1234 *:*
ssh localhost -p1234
# 在A主机连接本地1234端口