群晖 NAS 搭建 Git Server,免密登录全攻略

2025-09-05 16:46:09 0点赞 4收藏 0评论

最近在笔记本上开发一些项目,担心Git管理的项目没有及时备份,想到家里有一台群晖NAS,用NAS部署 Git 的文章有一些,有些把GItlab都部署好了,Gitlab功能虽然强大,但配置过多其实家用同步用不上,另外NAS还是老旧的DS216Play,性能有限,没必要上那种大家伙。

网上读到一篇搭建Git Server的文章,比较简单,迅速搭好了,总结如下:

Windows + Git bash + SSH工具(Windows自带也可以) + 群晖

群晖控制界面操作:(DSM 7.1.1)

  1. 群晖套件,安装Git Server

群晖 NAS 搭建 Git Server,免密登录全攻略

2. 创建共享文件夹,用于存放所有代码库

群晖 NAS 搭建 Git Server,免密登录全攻略

3. 创建用户,给Git代码文件夹权限

群晖 NAS 搭建 Git Server,免密登录全攻略群晖 NAS 搭建 Git Server,免密登录全攻略

4. 打开Git Server,加入新增用户:

群晖 NAS 搭建 Git Server,免密登录全攻略

5. 打开SSH:

群晖 NAS 搭建 Git Server,免密登录全攻略

转入客户端操作:

客户端SSH:(root用户登录)

sudo -i

cd /volume1/gitserver/

mkdir code

cd code

git init --bare

cd ..

chown -R gitester:users code

chmod -R 770 code

群晖 NAS 搭建 Git Server,免密登录全攻略

客户端Git bash:

git clone ssh://gitester@192.168.31.16/volume1/gitserver/code

cd code

git remote -v

群晖 NAS 搭建 Git Server,免密登录全攻略

然后我们本篇的重点来了,现在我们每次git操作都必须输入一遍密码,特别的繁琐,那就应该加认证,做成免密码使用,本来以为可以分分钟搞定,结果因为群晖和主流开源Linux有点区别,花了好一会儿才摸索出来:

客户端SSH:(root用户登录)

mkdir -p /var/services/homes/gitester/.ssh

touch /var/services/homes/gitester/.ssh/authorized_keys

ls -la /var/services/homes/gitester/

sudo chown gitester -R /var/services/homes/gitester/.ssh/

# 这里被群晖给git user分配直接用git-shell登录迷惑了,试验各种方案花了些时间,最后发现直接修改下面这一项就够,最简单的方案

sudo vi /etc/ssh/sshd_config

# 把下面这行的注释取消后保存,

-----------------------------------------------------------------------

PubkeyAuthentication yes

-----------------------------------------------------------------------

sudo systemctl restart sshd

群晖 NAS 搭建 Git Server,免密登录全攻略群晖 NAS 搭建 Git Server,免密登录全攻略

客户端Git bash:

# 这条命令紧跟三个回车即可生成密钥文件

ssh-keygen -t ecdsa

# 这条命令是把公钥文件的内容写到群晖服务器的对应位置,由于群晖没开SSH文件传输,干脆直接贴过去

cat ~/.ssh/id_ecdsa.pub | ssh farseer@192.168.31.16 "cat >> /var/services/homes/gitester/.ssh/authorized_keys"

# 这时再执行Git操作可以不用密码了

git pull

群晖 NAS 搭建 Git Server,免密登录全攻略

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起
0评论

当前文章无评论,是时候发表评论了
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章

明王明王

Ta还没有介绍自己

关注 打赏
相关好价
最新文章 热门文章
4
扫一下,分享更方便,购买更轻松