git-shell 介绍一下

github 也好, 其他国内的一些 什么云也好, 基本上做私仓的话, 是要收费的。
既然 git 支持 ssh , 所以, 用自己的服务器, 其实也不算难事。
为了让 git 服务器真正成为 只能 远程 git , 不能直接 ssh 登录的话, 我们需要限制用户的 shell,用 /bin/noshell 肯定不行。 git 提供了 git-shell, 可以完成此功能。 所以我们 man git-shell 就可以知道怎么玩了。 很简单。
创建用户, 并 su – user 以后
$ chsh -s /usr/bin/git-shell
$ mkdir $HOME/git-shell-commands
$ cat > $HOME/git-shell-commands/no-interactive-login <<EOF
#!/bin/sh
printf ‘%s\n’ “你好 $USER,欢迎使用 git 管理代码库”
printf ‘%s\n’ “但是你不能使用 ssh 直接登录 git 服务器哦!”
exit 128
EOF
# chmod +x $HOME/git-shell-commands/no-interactive-login

这样用户能依旧通过 ssh 提交代码,但是不能直接登录服务器了。

作者: 甬洁网络

--移动互联网&物联网技术提供商