V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
fqy12300
V2EX  ›  程序员

家里的 Mac 如何通过 SSH 连接公司的 Win?

  •  
  •   fqy12300 · 2023-02-17 23:53:38 +08:00 · 1117 次点击
    这是一个创建于 671 天前的主题,其中的信息可能已经有所发展或是发生改变。

    前前后后折腾好几天,还是没搞定。只能来求助 V 友了。

    1. 公司用的是 secoclient 来连接公司内网的。
    2. 连接上之后,已经可以正常 ping 公司的 Win 了。
    3. 用 telnet 测试端口,显示以下结果。
    FanydeMac-mini:~ root# telnet 10.23.110.4 22
    Trying 10.23.110.4...
    Connected to 10.23.110.4.
    Escape character is '^]'.
    SSH-2.0-OpenSSH_for_Windows_8.1
    
    1. 公司 Win 的 OpenSSH 的客户端和服务端都已安装,也都设置为自启动。
    2. 公钥和私钥都已设置,我是在 Win 上生成了公钥和私钥,然后把公钥放在了 Win 上,私钥放在了 Mac 上。不知道这样对不对。
    3. 最后通过 SSH 连接的时候,显示以下结果,密码是对的,但是就是连接不上。
    FanydeMac-mini:~ root# ssh [email protected]
    [email protected]'s password: 
    Permission denied, please try again.
    [email protected]'s password: 
    Permission denied, please try again.
    [email protected]'s password: 
    [email protected]: Permission denied (publickey,password,keyboard-interactive).
    

    Win 的 C:\Windows\System32\drivers\OpenSSH\sshd_config_default 配置如下

    # This is the sshd server system-wide configuration file.  See
    # sshd_config(5) for more information.
    
    # The strategy used for options in the default sshd_config shipped with
    # OpenSSH is to specify options with their default value where
    # possible, but leave them commented.  Uncommented options override the
    # default value.
    
    #Port 22
    #AddressFamily any
    #ListenAddress 0.0.0.0
    #ListenAddress ::
    
    #HostKey __PROGRAMDATA__/ssh/ssh_host_rsa_key
    #HostKey __PROGRAMDATA__/ssh/ssh_host_dsa_key
    #HostKey __PROGRAMDATA__/ssh/ssh_host_ecdsa_key
    #HostKey __PROGRAMDATA__/ssh/ssh_host_ed25519_key
    
    # Ciphers and keying
    #RekeyLimit default none
    
    # Logging
    #SyslogFacility AUTH
    #LogLevel INFO
    
    # Authentication:
    
    #LoginGraceTime 2m
    #PermitRootLogin prohibit-password
    #StrictModes yes
    #MaxAuthTries 6
    #MaxSessions 10
    
    #PubkeyAuthentication yes
    
    # The default is to check both .ssh/authorized_keys and .ssh/authorized_keys2
    # but this is overridden so installations will only check .ssh/authorized_keys
    AuthorizedKeysFile	.ssh/authorized_keys
    
    #AuthorizedPrincipalsFile none
    
    # For this to work you will also need host keys in %programData%/ssh/ssh_known_hosts
    #HostbasedAuthentication no
    # Change to yes if you don't trust ~/.ssh/known_hosts for
    # HostbasedAuthentication
    #IgnoreUserKnownHosts no
    # Don't read the user's ~/.rhosts and ~/.shosts files
    #IgnoreRhosts yes
    
    # To disable tunneled clear text passwords, change to no here!
    #PasswordAuthentication yes
    #PermitEmptyPasswords no
    
    # GSSAPI options
    #GSSAPIAuthentication no
    
    #AllowAgentForwarding yes
    #AllowTcpForwarding yes
    #GatewayPorts no
    #PermitTTY yes
    #PrintMotd yes
    #PrintLastLog yes
    #TCPKeepAlive yes
    #UseLogin no
    #PermitUserEnvironment no
    #ClientAliveInterval 0
    #ClientAliveCountMax 3
    #UseDNS no
    #PidFile /var/run/sshd.pid
    #MaxStartups 10:30:100
    #PermitTunnel no
    #ChrootDirectory none
    #VersionAddendum none
    
    # no default banner path
    #Banner none
    
    # override default of no subsystems
    Subsystem	sftp	sftp-server.exe
    
    # Example of overriding settings on a per-user basis
    #Match User anoncvs
    #	AllowTcpForwarding no
    #	PermitTTY no
    #	ForceCommand cvs server
    
    Match Group administrators
           AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys
    
    

    我其实是想用 VScode 远程开发服务,希望 V 友能帮帮我。

    第 1 条附言  ·  2023-02-22 00:04:36 +08:00

    感谢各位,已经解决了。 是因为用户名写错了,我电脑开机登录的用户名是 0830fqy,但是终端里显示的用户名是 admin,然后我用 admin 试了一下,成功了,也不清楚这是为什么。

    smy1999
        1
    smy1999  
       2023-02-18 08:44:24 +08:00
    是客户端 mac 生成公私钥吧,公钥发到服务端 win 上
    lelandsu
        2
    lelandsu  
       2023-02-18 10:27:24 +08:00 via iPhone
    既然密码登录,为什么还要 key ?
    Windows 如果用的微软在线账户,那账户名是邮箱,密码是在线账户的密码,不是方便登录用的 PIN 码
    lelandsu
        3
    lelandsu  
       2023-02-18 10:34:53 +08:00 via iPhone
    如果使用密钥访问,Windows 要设置好公钥 authorized_keys 文件的权限,否则文件被忽略。
    验证配置问题也可以 Windows 上 ssh 命令 账户 @127.0.0.1 进行验证,没问题再 Mac 远程访问。
    Windows 上配置 ssh server 微软文档很详细,照着做就行了 authorized_keys
    gdefw
        4
    gdefw  
       2023-02-20 23:21:35 +08:00 via Android
    允许 root 登录,把最后两行注了,公钥内容粘到 authorized 里
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1016 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 20:57 · PVG 04:57 · LAX 12:57 · JFK 15:57
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.