CentOS中安装subversion,并使用svn+ssh访问

简介:

一、Subversion的传输协议
Subversion可以支持以下多种传输协议,以便客户端和仓库之间进行数据版本控制:
 

引用

file:// 本地数据传输
http:// 基于Apache的HTTP协议(明文)
https:// 基于Apache+SSL的HTTPS协议
svn:// 基于svnserve的SVN协议(明文)
svn+ssh:// 基于SSH的svnserve协议


可见,正如telnet与ssh方式的差别一样,Subversion也可以采用加密的传输方式。
那该选择哪种加密方式呢?在 这里 会告诉你两种方式的差异。

二、实现SVN over SSH方式
要使用svn+ssh://方式前,我们先列举一些该方式的优缺点:
 

引用

1、网络协议是有状态的,svn+ssh比WebDAV快很多;
2、该方式可以利用现有的ssh帐号和用户基础;
3、只有一个认证方法可选择,并且需要用户在同一个系统组,使用共享ssh密钥;
4、没有任何类型的日志,甚至是错误,如果使用不正确,会导致文件许可问题。


另外,在使用该方式的注意事项是:
 

引用

1、svn客户端在访问远端时,默认除保存验证信息外,还会保留协议类型,以方便下次提交版本更新时不需再次定义;
但这就是说,你不能这次使用svn+ssh://,而下次用svn:// ;
2、该方式会同时进行两重验证,一是ssh的密钥验证,二是svnserve设置的访问权限认证,缺一不可;
3、该方式是依赖于ssh来发起一个svnserve进程,然后网络断开后终止进程,所以,远端是不需要单独启动svnserve服务的;
4、因此,连接是需要直接指向版本仓库在远端的实际物理路径,而不是svnserve给出的映射路径


1. 服务器安装

(1) 安装ssh服务器和subversion服务器

    yum install -y subversion 

(2)创建登陆的用户(一定是要能登陆的账号,如果设置为不能登陆,就会报错)

    useradd im

    passwd im

(3)创建svn仓库

    mkdir /data/svn

    svnadmin create /data/svn

(4)修改权限

    chown -R root.im /data/svn/

(5)修改配置文件(都在你的工程目录下)

    1.修改svnserver.conf文件

        anon-access = none // 未认证的用户没有任何访问权限  

        auth-access = write // 认证的用户有写权限  

        authz-db = authz // 认证文件为conf目录下的authz文件

        realm = /data/svn/ //工程所在的目录

    2.修改authz文件

        [/]

        svnserver = rw //读写

        im =r  //只读

        * =  //除了以上用户或组都不能使用

(6)访问(服务端不需要启动)

       svn co svn+ssh://im@210.14.155.87/data/svn im

    ps:这样是需要输入密码的,如果想免密钥登陆,需要通过ssh-kengen生成密码

 

         

    本文转自wangfeng7399 51CTO博客,原文链接:http://blog.51cto.com/wangfeng7399/1686162,如需转载请自行联系原作者


相关文章
|
6月前
|
存储 Ubuntu Linux
VMware-安装CentOS系统教程及安装包
虚拟机相当于是一个独立于你电脑的环境,在这个环境上面,你可以安装Linux、Windows、Ubuntu等各个类型各个版本的系统,在这个系统里面你不用担心有病读等,不用担心文件误删导致系统崩溃。 虚拟机也和正常的电脑系统是一样的,也可以开关机,不用的时候,你关机就可以了,也不会占用你的系统资源,使用起来还是比较方便 这里也有已经做好的CentOS 7系统,下载下来解压后直接用VMware打开就可以使用
1245 69
|
5月前
|
存储 分布式计算 Linux
安装篇--CentOS 7 虚拟机安装
VMware 装 CentOS 7 不知道从哪下手?这篇超详细图文教程手把手教你在 VMware Workstation 中完成 CentOS 7 桌面系统的完整安装流程。从 ISO 镜像下载、虚拟机配置,到安装图形界面、设置用户密码,每一步都有截图讲解,适合零基础新手快速上手。装好之后无论你是要搭 Hadoop 集群,还是练 Linux ,这个环境都够你折腾一整天!
2251 3
|
6月前
|
Ubuntu Linux 索引
Centos 7、Debian及Ubuntu系统中安装和验证tree命令的指南。
通过上述步骤,我们可以在CentOS 7、Debian和Ubuntu系统中安装并验证 `tree`命令。在命令行界面中执行安装命令,然后通过版本检查确认安装成功。这保证了在多个平台上 `tree`命令的一致性和可用性,使得用户无论在哪种Linux发行版上都能使用此工具浏览目录结构。
567 78
|
5月前
|
安全 关系型数据库 MySQL
CentOS 7 yum 安装 MySQL教程
在CentOS 7上安装MySQL 8,其实流程很清晰。首先通过官方Yum仓库来安装服务,然后启动并设为开机自启。最重要的环节是首次安全设置:需要先从日志里找到临时密码来登录,再修改成你自己的密码,并为远程连接创建用户和授权。最后,也别忘了在服务器防火墙上放行3306端口,这样远程才能连上。
1177 16
|
6月前
|
存储 关系型数据库 MySQL
在CentOS 8.x上安装Percona Xtrabackup工具备份MySQL数据步骤。
以上就是在CentOS8.x上通过Perconaxtabbackup工具对Mysql进行高效率、高可靠性、无锁定影响地实现在线快速全量及增加式数据库资料保存与恢复流程。通过以上流程可以有效地将Mysql相关资料按需求完成定期或不定期地保存与灾难恢复需求。
538 10
|
6月前
|
运维 网络协议 Linux
CentOS下Bind服务的安装与故障排查
通过以上的步骤,您应该能够在CentOS系统上安装并配置BIND DNS服务,并进行基本的故障排查。
582 0
|
6月前
|
存储 Ubuntu Linux
安卓手机免root安装各种Linux系统:Ubuntu, Centos,Kali等
此外还可以安装Slackware、Archstrike等系统,还可以通过github查找方法安装更多有趣的东西。 昨日小编就是通过Termux安装的Kali Linux工具包。
|
4月前
|
Linux 网络安全 Docker
盘古栈云,创建带ssh服务的linux容器
创建带ssh服务的linux容器
374 146
|
7月前
|
监控 Linux 网络安全
FinalShell SSH工具下载,服务器管理,远程桌面加速软件,支持Windows,macOS,Linux
FinalShell是一款国人开发的多平台SSH客户端工具,支持Windows、Mac OS X和Linux系统。它提供一体化服务器管理功能,支持shell和sftp同屏显示,命令自动提示,操作便捷。软件还具备加速功能,提升访问服务器速度,适合普通用户和专业人士使用。
2562 0
|
10月前
|
安全 Linux 网络安全
在Linux(CentOS和AWS)上安装更新的git2的方法并配置github-ssh
经过以上这些步骤,你现在就能在GitHub上顺利往返,如同海洋中的航海者自由驰骋。欢迎你加入码农的世界,享受这编程的乐趣吧!
459 10