收起左侧

gitea踩坑

5
回复
2142
查看
[ 复制链接 ]

2

主题

11

回帖

0

牛值

江湖小虾

2024-12-21 15:03:25 显示全部楼层 阅读模式

1.问题背景

默认商店下载gitea,配置好mysql数据库,git clone失败,报错为:

git clone gitea@ip:user/test.git
正克隆到 'test'...
gitea@ip's password: 
Permission denied, please try again.
gitea@ip's password: 
Permission denied, please try again.
gitea@ip's password: 
gitea@ip: Permission denied (publickey,password).
致命错误:无法读取远程仓库。

请确认您有正确的访问权限并且仓库存在。

2.解决流程

2.1.配置ssh-key仍失败

首先疑惑全流程就没有配置过gitea的密码,输入密码全失败,很疑惑! 先去配置ssh-key仍然报相同错误

2.2.怀疑用户密码

相关文档比较匮乏,有一篇注意到有执行新增linux用户的操作,结合gitea注册页面的gitea用户名不能自定义修改,猜想git clone密码就是用户密码

// 初始密码为空,此处展示修改后的
user@zaiNas:/vol2/@appdata/Gitea$ sudo cat /etc/shadow | grep gitea
[sudo] password for user: 
gitea:$6$GhOTO7g7sUoGKl.Z$eEX52wTWEBc3oJYF1vjcdYR7yuPageYzoRPEb7CcV8T**M3oGa.Vh9/9COeK91wzJFu6I2pIE/.SGT1aGT.J/:20067::::::
user@zaiNas:/vol2/@appdata/Gitea$ sudo cat /etc/passwd | grep gitea
gitea:x:974:901::/home/gitea:/bin/bash

开始发现gitea用户的密码为空,且设置为不可登陆,实际git clone输入密码是直接回车也失败,此处密码为空存疑 在重置密码后终于输入正确密码,报错:该用户并无对应文件夹

ssh -T gitea@ip

gitea@ip's password: 
Linux zaiNas 6.6.38-trim #73 SMP PREEMPT_DYNAMIC Mon Dec  2 21:56:52 CST 2024 x86_64
Could not chdir to home directory /home/gitea: No such file or directory
This account is currently not available.

顺着此问题,为gitea创建对应的文件夹

// 方法1:确保gitea用户有正确主目录
sudo mkdir -p /home/gitea

sudo chown gitea:gitea /home/gitea
sudo chmod 700 /home/gitea

sudo usermod -d /home/gitea gitea
sudo usermod -s /bin/bash gitea

// 方法2:允许gitea用户登陆
sudo usermod -s /bin/bash gitea

3.端口22抢占

以上操作后,密码终于输入正确,但仍然不能clone仓库

git clone gitea@ip:user/test.git
正克隆到 'test'...
gitea@ip's password: 
fatal: 'user/test.git' does not appear to be a git repository
致命错误:无法读取远程仓库。

请确认您有正确的访问权限并且仓库存在。

此时结合之前gogs配置时切换22端口操作,猜想可能22端口被系统抢占了

// 查看22端口被sshd占用了
sudo lsof -i :22
COMMAND  PID        USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
sshd    1187        root    3u  IPv4  11479      0t0  TCP *:ssh (LISTEN)
sshd    1187        root    4u  IPv6  11481      0t0  TCP *:ssh (LISTEN)
sshd    8323        root    4u  IPv4  65659      0t0  TCP ip:ssh->ip:52215 (ESTABLISHED)
sshd    8354 user    4u  IPv4  65659      0t0  TCP ip:ssh->ip:52215 (ESTABLISHED)

于是寻求切换gitea到其他端口,开始尝试222端口

// 修改方法: gitea/config.ini

[server]
SSH_PORT         = 222
START_SSH_SERVER = true

报错

// gitea log报错222端口不能无权限
2024/12/11 00:00:39 ...s/graceful/server.go:50:NewServer() [I] Starting new SSH server: tcp::222 on PID: 4827
2024/12/11 00:00:39 ...s/graceful/server.go:76:ListenAndServe() [E] Unable to GetListener: listen tcp :222: bind: permission denied
2024/12/11 00:00:39 .../ssh/ssh_graceful.go:25:listen() [F] Failed to start SSH server: listen tcp :222: bind: permission denied

// 1024以下的端口需要管理员权限绑定

讲端口修改为大于1024,正常运行

[server]
SSH_PORT         = 7878  # 修改为大于 1024 的端口
START_SSH_SERVER = true
收藏
送赞 2
分享

0

主题

1

回帖

0

牛值

江湖小虾

2024-12-24 17:26:31 显示全部楼层
说一下我的解法:
修改/etc/passwd,将gitea用户配置更新为gitea:x:990:901::/var/apps/Gitea/home:/bin/bash
好像不行呀 启动软件失败 显示端口被占用,重启飞牛后,软件一直显示 正在启动中  详情 回复
2025-5-15 09:39
不错,最优解  详情 回复
2025-1-2 16:56

0

主题

3

回帖

0

牛值

江湖小虾

2025-1-2 16:55:39 显示全部楼层
@Clx 最优解

0

主题

3

回帖

0

牛值

江湖小虾

2025-1-2 16:56:03 显示全部楼层
不错,最优解

0

主题

2

回帖

0

牛值

江湖小虾

2025-5-15 09:39:16 显示全部楼层
CIx 发表于 2024-12-24 17:26
说一下我的解法:
修改/etc/passwd,将gitea用户配置更新为gitea:x:990:901::/var/apps/Gitea/home:/bin/ba ...

好像不行呀 启动软件失败 显示端口被占用,重启飞牛后,软件一直显示 正在启动中

0

主题

2

回帖

0

牛值

江湖小虾

2025-5-15 09:40:53 显示全部楼层

gitea 配置这么麻烦啊 ssh key 配置成功了 也验证通过,就是死活无法 clone,换其他git 根本没有问题

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则