Home php教程 php手册 GITLAB Fingerprint cannot be generated

GITLAB Fingerprint cannot be generated

Jun 06, 2016 pm 08:11 PM
gitlab

坑1: 在个人上传公钥的时候,提示生成指纹失败,没有什么能够阻挡俺们运维的脚步,gitlab web端是基于 On Rails的,也是个MVC典型框架, 看他这么像是一个flash效果 根据这点蛛丝马迹找处理方法去 log: Started POST /profile/keys for 127.0.0.1 at 2013-

坑1:

QQ图片20131118125307

在个人上传公钥的时候,提示生成指纹失败,没有什么能够阻挡俺们运维的脚步,gitlab web端是基于 On Rails的,也是个MVC典型框架,

看他这么像是一个flash效果

根据这点蛛丝马迹找处理方法去

log:

Started POST “/profile/keys” for 127.0.0.1 at 2013-11-15 12:37:36 +0800
Processing by Profiles::KeysController#create as HTML
Parameters: {“utf8″=>”?”, “authenticity_token”=>”a3SQrp7gXosUavont2fQajVYLHQh0C1NXVQEVGNYTEM=”, “key”=>{“title”=>”pcoffice”, “key”=>”ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEA75YFeVv2T0MxPlEcqYz2ajueinVwB/tbvgC1t5mFngkegPKbMyXU7zI5eqnZYDqLGcaf7rL7BwvkFjY++fvQCm7ohwHZi9ZEcU0xGH1izUvPLlHHGYsJG1FgBSYzHZvNw4KL5fo8STuC3JN96rtLkbhKtpOuc9AZ8o7tpAqpr6E= rsa-key-20131115″}}
Rendered profiles/keys/_form.html.haml (4.8ms)
Rendered profiles/keys/new.html.haml within layouts/profile (5.8ms)
Rendered layouts/_head.html.haml (2.4ms)
Rendered layouts/_search.html.haml (16.5ms)
Rendered layouts/_head_panel.html.haml (22.8ms)
Rendered layouts/_flash.html.haml (0.2ms)
Rendered layouts/nav/_profile.html.haml (3.2ms)
Completed 200 OK in 91ms (Views: 35.1ms | ActiveRecord: 3.1ms)

在app/model/key.rb模型类里找处理:

validates :fingerprint, uniqueness: true, presence: { message: ‘cannot be generated.. because of uniqueness!’ }

是这个validates触发了flash提示,

生成指纹的方法:

这个模型中有一个生成的方法,在校验的时候就会生成不了指纹,打印

?def generate_fingerpint
self.fingerprint = nil
return unless key.present?

cmd_status = 0
cmd_output = ”
Tempfile.open(‘gitlab_key_file’) do |file|
file.puts key
file.rewind
cmd_output, cmd_status = popen(“ssh-keygen -lf #{file.path}”, ‘/home/git/.ssh’)
end
puts cmd_output
puts cmd_status
if cmd_status.zero?
cmd_output.gsub /([\d\h]{2}:)+[\d\h]{2}/ do |match|
self.fingerprint = match
end
end
end

/tmp/gitlab_key_file20131115-26416-4buuyk is not a public key file.

结果最后!!

是因为selinux开着,需要setenforce=0即可。。。

因为selinux开着的话,中间的?popen(“ssh-keygen -lf #{file.path}”, 这个ssh-keygen -lf #{file.path}? 过程在服务器上怎么测试都不对,而服务器自身生成的默认的id_rsa.pub是可以打印出指纹的,后来发现,在selinux开着的情况下,路径只能是 ~.ssh/下的才能进行校验,关闭之后就可以根据其他路径的公钥来生成指纹了

QQ图片20131118125550

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to restore a project to the previous version number in gitlab How to restore a project to the previous version number in gitlab Mar 27, 2023 pm 07:09 PM

GitLab is a version management and collaboration tool for developers. Its historical versions allow users to easily retrieve previous code. Sometimes we may accidentally update a wrong code, or accidentally delete some files. At this time, we need to restore to a previous version in order to start working again. This article mainly introduces how to restore to the previous version number on GitLab.

How to log in for the first time on GitLab and change your password How to log in for the first time on GitLab and change your password Mar 24, 2023 pm 05:46 PM

GitLab is a web-based Git version control library management software designed to help development teams work better together and improve work efficiency. When you log in to GitLab for the first time, you will be prompted to change your initial password to ensure account security. This article will introduce how to log in for the first time and change the password on GitLab.

Let's talk about how to set up a protected branch and submit a PR in Gitlab Let's talk about how to set up a protected branch and submit a PR in Gitlab Mar 30, 2023 pm 09:01 PM

This article is about learning Gitlab, talking about how to set up a protected branch and submit a PR to your leader. I hope it will be helpful to everyone!

How to use GitLab for project document management How to use GitLab for project document management Oct 20, 2023 am 10:40 AM

How to use GitLab for project document management 1. Background introduction In the software development process, project documents are very important information. They can not only help the development team understand the needs and design of the project, but also provide reference to the testing team and customers. In order to facilitate version control and team collaboration of project documents, we can use GitLab for project document management. GitLab is a version control system based on Git. In addition to supporting code management, it can also manage project documents. 2. GitLab environment setup First, I

Centos offline installation of Chinese version of GitLab Centos offline installation of Chinese version of GitLab Feb 19, 2024 am 11:36 AM

1. Download the gitlab installation package. Download the latest Chinese version of the gitlab installation package from [Tsinghua University Open Source Software Mirror Station]. The installation package comes with a simplified Chinese localization package. Download the latest gitlab installation package from [gitlab official website]. 2. Install gitlab, take gitlab-ce-14.9.4-ce.0.el7.x86_64 as an example, upload it to the centos server and use yum to install gitlabyum-yinstallgitlab-ce-14.3.2-ce.0.el7.x86_64. rpm uses yum to install gityum-yinstallgit#Install git and modify the gitlab configuration file vi

What is the use of the gitlab library in python? What is the use of the gitlab library in python? May 16, 2023 pm 06:01 PM

Installation first requires installing the python-gitlab library pip installation sudopip install --upgradepython-gitlab source code installation gitclone https://github.com/python-gitlab/python-gitlabcdpython-gitlabsudopythonsetup.pyinstall Usage CLI Usage First, you need to configure the environment to use cli. You need to provide a configuration file to indicate gitlabserver information and connection parameters. The configuration file format is INI. The sample is as follows: [global]defau

How to download code from GitLab server to local How to download code from GitLab server to local Mar 24, 2023 pm 05:45 PM

Downloading the code on the GitLab server locally allows you to modify and manage the code more conveniently. This article will introduce how to download the code on the GitLab server to local.

GitLab permission management and single sign-on integration tips GitLab permission management and single sign-on integration tips Oct 21, 2023 am 11:15 AM

GitLab's permission management and single sign-on integration tips require specific code examples Overview: In GitLab, permission management and single sign-on (SSO) are very important functions. Permission management can control users' access to code repositories, projects, and other resources, while single sign-on integration can provide a more convenient user authentication and authorization method. This article will introduce how to perform permission management and single sign-on integration in GitLab. 1. Permission Management Project Access Permission Control In GitLab, projects can be set to private

See all articles