SSH开启
在osx中开启ssh访问非常简单,只需要打开“系统偏好设置”并且点击“共享”图标即可。
选中下图中的check box即允许远程登陆。server处于下图的这个状态时,处于两个选择,可以远程登陆到所有用户,也可以远程登陆到指定用户。
创建新的git用户,只需返回到“系统偏好设置”并点击“用户与群组”图标即可。
 
如下图所示,点击列表下方的增加,并填写新用户的detail。
 
然后如下图所示仅仅允许可以远程到git用户。
 
简单的测试
客户端:登陆格式为ssh git@服务器机器名称,会被询问是否将这个host加入允许地址,继续,输入密码后即可远程登陆到本server上。
 
更安全的SSH(RSA)
实验三台机器:
  • ubuntu,作为第一台实验机器
         【1】ubuntu下输入:
         >ssh-keygen -t rsa
         不设置密码。默认在~/.ssh下会有一个文件~/.ssh/id_rsa.pub。
        【2】目前假设的是,服务器端从来没有配置成为过SSH服务器,所以自然也没有.ssh目录以及authorized_keys文件。所以ubuntu下输入:
          >ssh git@服务器机器名称 mkdir .ssh
          >scp ~/.ssh/id_rsa.pub git@yourOtherMachineName:.ssh/authorized_keys
        【3】现在重新切回服务器机器工作:
          >cd /etc
          >chmod 666 sshd_config 
          >vim sshd_config
          编辑如下:
          修改#PermitRootLogin yes为PermitRootLogin no
          移除下面几条语句前面的#
          #RSAAuthentication yes
          #PubkeyAuthentication yes 
          #AuthorizedKeysFile     .ssh/authorized_keys          
          #PasswordAuthentication no
          #PermitEmptyPasswords no
          最后修改#UserPAM yes为UsePAM no
        【4】注销ubuntu用户,并重新登陆,运行ssh git@服务器机器名称,不需要密码即可登陆。
  • osx,作为第二台实验机器

【1】osx下输入:

          >ssh-keygen -t rsa
         不设置密码。默认在~/.ssh下会有一个文件~/.ssh/id_rsa.pub。
       【2】由于第一台实验机器的操作,目前已不能直接采用用户名密码方式远程登陆。所以将id_rsa.pub拷贝到了服务器上,并将其内容加入到了服务器上的authorized_keys文件中,测试通过。
  • windows,作为第三台实验机器

【1】cygwin或MinGW。其中cygwin需要安装OpenSSH,MinGW需要安装msys。在cygwin或msys控制台下输入ssh-keygen -t rsa

        【2】同osx的第二步,不同的是有时候windows系统对dns的解析有些问题,所以如果无法登陆,可以git@后面可以输入IP地址实验一下。
 
参考:

转载:http://www.cnblogs.com/whj198579/archive/2013/04/09/3009350.html

Mac搭建Git服务器—开启SSH的更多相关文章

  1. mac 搭建git服务器

      一.简单搭建,不提供复杂的权限管理: 远程建立git用户,并打开ssh服务:见http://www.cnblogs.com/whj198579/archive/2013/04/09/3009350 ...

  2. CentOS下搭建Git服务器(基于SSH协议)

    1,安装Git所需依赖包      # yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel      # ...

  3. 使用Gitosis搭建Git服务器

    使用Gitosis搭建Git服务器 作者: JeremyWei | 可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明 网址: http://weizhifeng.net/build- ...

  4. CentOS搭建Git服务器及权限管理

    声明:本教程,仅作为配置的记录,细节不展开,需要您有一点linux的命令基础,仅作为配置参考. 1. 系统环境 系统: Linux:CentOS 7.2 64位 由于CentOS已经内置了OpenSS ...

  5. (转)初学Git及简单搭建git服务器和客户端

    终于搞定,mac自己作为git服务器,mac也是客户端,如何免登 从另外一个linux服务器的上传公钥得到提示 ssh-copy-id -i ~/.ssh/id_rsa.pub git@192.168 ...

  6. CentOS7搭建git服务器

    在CentOS7上搭建git服务器, 1.在Linux上安装git yum install -y git 验证是否安装成功,出现版本号即成功 git --version 2.创建版本库和用户 创建用户 ...

  7. 在服务器搭建git服务器

    服务端操作 安装Git及创建用户组.用户 123 yum install gitgroupadd gitadduser git -g git 禁止用户git登录 修改/etc/passwd文件: 找到 ...

  8. 搭建Git服务器

    在远程仓库一节中,我们讲了远程仓库实际上和本地仓库没啥不同,纯粹为了7x24小时开机并交换大家的修改. GitHub就是一个免费托管开源代码的远程仓库.但是对于某些视源代码如生命的商业公司来说,既不想 ...

  9. 向 Git 服务器添加 SSH 公钥

    . . . . . 在网上很少找到文章有提到如何将自己的 Git 远程仓库配置成可以通过 SSH 公钥方式认证的,而几乎清一色都是告诉你怎么通过 web 界面向 GitHub 添加 SSH 公钥.LZ ...

随机推荐

  1. 制造运营管理 (MOM) 的工作流驱动方法

    介绍 "在企业中使用的任何技术的第一条规则是,应用于高效运营的自动化将放大效率.第二个是自动化应用于低效率的操作会放大低效率." - 比尔盖茨 . 工作流是结构化的活动,主要涉及人 ...

  2. IPv6地址格式

    1.说明 IPv6是互联网协议的第六版, 现有IPv4只支持大概40亿个网络地址, 而IPv6支持3.4e38个网络地址. IPv4的地址长度是32位(bit), IPv6的地址长度是128位. 尽管 ...

  3. x86-2-保护模式(protect mode)

    x86-2-保护模式(protect mode) 引入保护模式的原因: 操作系统负责计算机上的所有软件和硬件的管理,它可以百分百操作计算机的所有内容.但是,操作系统上编写的用户程序却应当有所限制,比如 ...

  4. Linux中ssh登陆慢的两种原因

    useDNS配置导致登陆慢 如果ssh server的配置文件(通常是 /etc/ssh/sshd_config )中设置 useDNS yes ,可能会导致 ssh 登陆卡住几十秒.将该配置项设为 ...

  5. 初识python 之 mysql数据库基本操作

    import pymysql 注:所有插入.修改.删除操作都必须要提交(conn.commit()) 连接数据库: conn = pymysql.connect( host = '127.0.0.1' ...

  6. kafka时间轮的原理(一)

    概述 早就想写关于kafka时间轮的随笔了,奈何时间不够,技术感觉理解不到位,现在把我之前学习到的进行整理一下,以便于以后并不会忘却.kafka时间轮是一个时间延时调度的工具,学习它可以掌握更加灵活先 ...

  7. Selenium_python自动化跨浏览器执行测试

    Selenium_python自动化跨浏览器执行测试(简单多线程案例)  转:https://www.cnblogs.com/dong-c/p/8976746.html 跨浏览器测试是功能测试的一个分 ...

  8. leetcode 28. 实现 strStr()

    问题描述 实现 strStr() 函数. 给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始).如果不 ...

  9. MySql服务器逻辑架构

    一.MySql服务器逻辑架构图         每个虚线框都是一层: 第一层:最上层的服务器不是MySql所独有的,大多数基于网络的客户端/服务器工具或者服务都有类似的系统.比如链接处理,授权认证,安 ...

  10. Linux下进程线程,Nignx与php-fpm的进程线程方式

    1.进程与线程区别 进程是程序执行时的一个实例,即它是程序已经执行到课中程度的数据结构的汇集.从内核的观点看,进程的目的就是担当分配系统资源(CPU时间.内存等)的基本单位. 线程是进程的一个执行流, ...