使用sshkey,可以实现免密码登陆服务器,同时关闭ssh service的使用账号密码登陆功能即可

1、首先在客户机添加sshkey(如果是window系统的话需要安装shell终端工具,例如xshell,gitbash等)

ssh-keygen -t rsa -C 'email@sample.com'

#之后会在用户目录下生成一个.ssh目录,里面有“id_rsa”私钥(之前的命令生成的rsa算法加密的key)、“id_rsa.pub”公钥,私钥保存在客户端,公钥保存到服务端即可

2、在服务端的对应用户目录下的.ssh/authorized_keys文件下添加客户端的公钥,每行一个即可。如果authorized_keys原来不存在,新建该文件将拷贝内容放入即可(或者在其他用户的.ssh目录下看看有没有)

3、修改服务端对应用户的相应文件的权限:(改成一致即可,尽量不要多也不要少)

$ls -la /home/username
drwx--x--x 9 username username 4096 May 11 10:09 username
$ls -la /home/username/.ssh
-rw-r--r-- 1 username username 797 May 11 10:09 authorized_keys
$ls -la /home/username
drwx------ 2 username username 4096 May 11 10:09 .ssh

4、关闭ssh server的使用账号密码登陆功能

修改/etc/ssh/sshd_conf文件,将PasswordAuthentication修改为no

5、重启ssh service

sudo service ssh restart

git库的搭建,以上所做的一切都是为了服务于下面的操作

1、首先,生成一个git仓库

$ sudo git init --bare test.git
Initialized empty Git repository in /home/username/test.git/ #提示初始化了一个空的git仓库
$ ls test.git
branches config description HEAD hooks info objects refs #该目录下的内容
$ sudo chown -R username:username test.git #修改该目录的owner和group为username

2、禁用该用户的shell登陆(前提是这个用户创建就是为了git,不对系统进行登陆)

修改/etc/passwd

username:x:1001:1001:,,,:/home/username:/bin/bash
改为:
username:x:1001:1001:,,,:/home/username:/usr/bin/git-shell

3、正常使用git

$ git clone username@server:/home/username/sample.git

最新文章

  1. UWP深入学习六:Build better apps: Windows 10 by 10 development series
  2. Erlang高阶函数
  3. 重新理解:ASP.NET 异步编程(转)
  4. 滚动光效shader
  5. Eclipse管理Java工程(j2se/j2ee/maven)
  6. 【uva】1220 Party at Hali-Bula
  7. 【网络流24题】No.9 方格取数问题 (二分图点权最大独立集)
  8. A Statistical View of Deep Learning (I): Recursive GLMs
  9. Arduino 数码管LED驱动 数组法
  10. 修改jsonb的属性
  11. JAVA基础--IO流
  12. ASP.NET MVC4在部署IIS后,运行时显示的是整个Web的目录列表
  13. LeetCode - 503. Next Greater Element II
  14. Codeforces Round #531 (Div. 3)
  15. python 文件读写模式r,r+,w,w+,a,a+的区别(附代码示例)
  16. EOS开发基础之二:使用cleos命令行客户端操作EOS(钱包wallet基础操作)
  17. [Module] 03 - Software Design and Architecture
  18. Android事件分发机制源码分析
  19. 矩阵快速幂模板(pascal)
  20. NGUI Tutorial 4 ScrollView

热门文章

  1. Axure RP的基础使用
  2. HDFS案例
  3. ado connection string
  4. C++虚函数与纯虚函数用法与区别(转载)
  5. Linux 常用命令(转)
  6. libevent 源码深度剖析十三
  7. 【总结整理】AXURE原件
  8. 62-U型数字
  9. dpdk中kni模块
  10. while循环 for循环的理解