V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zzzain46
V2EX  ›  程序员

hexo 部署到自己的 ECS 后每次 push 都需要输入 root 密码,怎么解

  •  
  •   zzzain46 · 2020-09-18 11:24:22 +08:00 · 2011 次点击
    这是一个创建于 1526 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在自己的 ECS 上弄好了 git,写了个钩子,每次都可以在本地通过 hexo g -d 将本地生成的静态资源 push 到 ECS 上,但是因为是通过 root 的方式,所以每次都需要输入密码,如何可以记住密码,避免每次 push 的时候都需要输一遍密码? deploy:

    • type: git #git 仓库路径 repo: [email protected]:/www/blog.git #分支 branch: master
    11 条回复    2020-09-19 15:35:59 +08:00
    Love4Taylor
        1
    Love4Taylor  
       2020-09-18 11:26:39 +08:00   ❤️ 1
    ssh_config
    12101111
        2
    12101111  
       2020-09-18 11:30:39 +08:00   ❤️ 2
    ssh 开 root 登陆是很不安全的
    开了 root 密码登陆就更不安全了,暴力无限试下去密码就破了.
    应该换用非 root 账户+密钥登陆+fail2ban, 这样自己可以免密码登陆且他人无法暴力破解账户密码, 只需要让 /www/blog.git 允许非 root 账户可写就行
    zzzain46
        3
    zzzain46  
    OP
       2020-09-18 11:32:36 +08:00
    @12101111 感谢老哥的提醒!
    asmmt
        4
    asmmt  
       2020-09-18 11:33:53 +08:00
    使用 git 账户配置 ecs 的仓库,然后使用 rsa 密钥连接。
    KuroNekoFan
        5
    KuroNekoFan  
       2020-09-18 11:52:45 +08:00
    deploy token with write access
    bandian
        6
    bandian  
       2020-09-18 12:57:16 +08:00 via Android
    ssh-copy-id ?
    zoyua
        7
    zoyua  
       2020-09-18 13:00:18 +08:00   ❤️ 1
    把本机的 ~/.ssh/id_rsa.pub 加到 esc 的 ~/.ssh/authorized_keys 里
    ryanlid
        8
    ryanlid  
       2020-09-18 15:06:09 +08:00
    使用 SSH 密钥对认证
    eromangame
        9
    eromangame  
       2020-09-18 15:14:30 +08:00
    公钥认证
    laev
        10
    laev  
       2020-09-18 17:27:57 +08:00
    顺便搞个一键自动部署呗,上次掘金看到一篇,还简单的!
    xxotjm
        11
    xxotjm  
       2020-09-19 15:35:59 +08:00
    使用密钥解决,如果嫌麻烦,可以使用 sshpass 指令,真的是屡试不爽
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5001 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 03:49 · PVG 11:49 · LAX 19:49 · JFK 22:49
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.