SSH相关

  1. sudo service ssh
  2. sudo nano /etc/ssh/sshd_config 修改(参考)
    Port 2222#Windows的22端口已经被占用了, 最新版本用不着, 但是要加防火墙入站规则
    AllowUsers yourusername#允许登陆的用户名, 就是WSL的用户名, 不写就不指定, 最新版本用不着
    PermitRootLogin no#最新版本用不着
    UsePrivilegeSeparation no#这一句话需要改一下, 看看能否避免出现bash->ssh->bash出现错误提示的情况(据说是因为无法获取权限).最新版本用不着
    PasswordAuthentication yes#最新版本也用不着
    
  3. Windows防火墙设置允许2222端口, 或者用提权的cmd命令netsh advfirewall firewall add rule name="SSHServer" dir=in action=allow localport=2222 protocol=tcp
  4. 如果找不到RSA key, 要在bash中sudo ssh-keygen -A
  5. sudo service ssh --full-restart
  6. ssh密钥添加
    alias: nano ~/.bash_aliases,alias command='complicated command'
    ssh-keygen -t rsa
    ssh-copy-id -i ~/.ssh/id_rsa.pub username@$ip
  7. 权限要求
    $ chmod go-w $HOME $HOME/.ssh#要求这两个文件夹group和other不能有写权限
    $ chmod 600 $HOME/.ssh/authorized_keys
    $ chown `whoami` $HOME/.ssh/authorized_keys
    
  8. 当设置好了id_rsa之后, 会发现打开命令行输入ssh登陆不需要密码, 但是双击sh文件的方式仍然需要密码
    通过ssh -v模式可以看出, sh文件查找id_rsa文件不是在~/.ssh路径下, 而是%HOMEPATH%\.ssh中, 所以把文件复制过来就可以不用输入密码登陆ssh了.
  9. 输入~.可以退出远程服务器.
  10. 遇到REMOTE HOST IDENTIFICATION HAS CHANGED!提示, 说明服务器端的.pub文件更改了.
    相关文件在/etc/ssh(.pub)或者~/.ssh(known_hosts)文件夹中(参考), 替换的时候注意权限
    对于Windows自带的OpenSSH, 应用程序(ssh.exe)在%windir%\System32\OpenSSH; sshd_config和
    .pub在%ProgramData%\ssh; known_hosts在%USERPROFILE%\.ssh.

隧道

  • 貌似ssh直接就可以, 不需要从WSL里面弄…
  • ssh -t brainor@隧道电脑 -p 2222 ssh ouwk@服务器
  • ref
    ssh username@目标机器IP -p 22 -o ProxyCommand='ssh -p 22 username@跳板机IP -W %h:%p'
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值