资讯专栏INFORMATION COLUMN

结对编程利器:SSH和Tmux

joywek / 1671人阅读

摘要:大部分的结对编程和远程办公的人对和的组合并不陌生,网上也有很多好的文章,这里我来为大家介绍一个简单的解决方案。设置远程用户因为我们将配置成了只允许公共密钥验证,我们需要将小伙伴们的公共密钥添加到验证密钥文件中。创建会话创建一个以命名的会话。

大部分的结对编程和远程办公的人对SSH和Tmux的组合并不陌生,网上也有很多好的文章,这里我来为大家介绍一个简单的解决方案。

创建一个账户别名(Alias)

第一步是为你的主要用户账户创建一个别名。这一步是可选的,选了这一步你就不必去了解每个开发者的实际用户名了。
从系统偏好设置中的“用户&群组”面板中,右击你的用户账户,然后点击高级选项。

从高级选项面板中,添加一个别名来让你的小伙伴们连接你的电脑时用。

配置SSH

接下来我们从系统偏好设置中的共享面板中打开远程登录。

然后更新我们的SSH登录设置来关掉密码验证,只允许公共密钥(public-key)验证。

# /etc/sshd_config
PasswordAuthentication no
...
ChallengeResponseAuthentication no

注意:为了时上面的设置生效,你需要重启sshd。在Mac上,只需要在系统偏好设置中的共享面板中重置一下远程登录的选中状态就可以了。

设置远程用户

因为我们将SSH配置成了只允许公共密钥验证,我们需要将小伙伴们的公共密钥添加到验证密钥(authorized_keys)文件中。

> cat pair_rsa.pub >> ~/.ssh/authorized_keys

接下来我们需要编辑这个文件来保证任何连接我们电脑的用户都会被自动添加到我们的Tmux会话(session)中。

# ~/.ssh/authorized_keys

command="/usr/local/bin/tmux attach -t pair" ABCDEFGHIJKLMNOPQRSTUVXYZ pair@user.com

这样一来,任何通过SSH连接的人都会被添加到以pair为别名的tmux绘画中。

创建pair会话

1.创建一个以pair命名的tmux会话。

> tmux new-session -s pair

2.创建你电脑中的pair SSH

> ssh pair@hostname

3.优点
这样设置完,只有你的电脑中存在一个名为pair的tmux会话时别人才可以连接到你的电脑。你关闭名为pair的tmux会话时已经存在的连接会自动断开。另一个好处是当你的私人密钥被使用时你会被提示输入密码,这样可以提防那些居心不良的小伙伴。

福利

为了方便完成以上的步骤,我写了一个shell脚本。不过你需要将”GitHub-auth”改为你的pair对应在github上的用户名。

免责声明:代码中用到了sudo,自己注意

#!/bin/sh

# create an account alias
sudo dscl . -append /Users/$USER RecordName Pair pair

# configure sshd to only allow public-key authentication
sudo sed -E -i.bak "s/^#?(PasswordAuthentication|ChallengeResponseAuthentication).*$/1 no/" /etc/sshd_config

# add pair user public key(s)
touch ~/.ssh/authorized_keys
gh-auth add --users githubuser --command="$( which tmux ) attach -t pair"

原文:A Simple Pair Programming Setup with SSH and Tmux
转载自:伯乐在线 - 杨帅

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/110877.html

相关文章

  • Tmux使用手册

    摘要:关于我的博客掘金专栏路易斯专栏原文链接使用手册链接程序员使用手册极客头条全文共字,阅读需分钟。使用快捷键组合,三次按键就可以断开当前会话。新增面板中,使用最多的功能之一就是新增一个面板。 本文首发于CSDN网站,下面的版本又经过进一步的修订。 关于 我的博客:louis blog 掘金专栏:路易斯专栏 原文链接:Tmux使用手册 CSDN链接:程序员Tmux使用手册 - 极客头...

    Half 评论0 收藏0
  • Maximum Awesome:移动支付 Square 团队开源的 Vim 配置文件

    摘要:译者注文章的我们指的团队,本文描述了他们开源在上的一份非常流行的配置文件和都是非常流行的软件。插件浏览一个项目的文件结构移动文件新建文件等等,全都不需要离开。使用可以调用抽屉,或者使用打开当前文件。来源于一个终端的代替品,一个的配置,还有。 译者注:文章的我们指 Square 的团队,本文描述了他们开源在 Github 上的一份非常流行的 Vim 配置文件 Xcode 和 Vim 都...

    terro 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<