SSH+SVN搭建及配置
一.SSH+SVN搭建及配置
注意,服务器ssh服务必须开22端口,否则无法访问
1.安装ssh服务和subversion服务:
2.创建登陆svn的系统用户
useradd drliaoku
提示此系统用户必须是可以登陆的。如果不可以登陆,在链接svn时,会提示链接不上。
3.建立svn服务存储目录:
mkdir /svndata
4.创建svn代码版本库
5.为svn代码版本库赋予ssh+svn用户组的权限
6.配置ssh+svn用户的密钥:
进入.ssh目录,配置密钥,将drliaoku.pub的内容导入到authorized_keys文件内,为了服务器安全,需要配置禁止ssh+svn用户登录服务器,但是可以访问svn服务。
在密钥的前面加上一下内容:
注意:文件名称必须为authorized_keys并且这个文件的权限必须是600权限才行
二.服务端防火墙配置:
需要工具有ipset和iptables结合来实现:
安装:
yum –y install ipset iptables
创建ipset集合:
以上为服务器配置
三.以下为windows客户端连接的配置
1.在windows下通过PuTTY进行服务器登陆
(1) 下载PuTTY相关文件
下载以下文件:pageant.exe, putty.exe, puttygen.exe
Windows上安装puTTY软件,主要是用来加载上传到windows上的服务器私钥文件drliaoku生成drliaoku.ppk文件的。
(2) 生成PuTTY密钥ppk文件
将服务器上生成的私钥文件drliaoku文件(密钥)拷贝到windows中.
到puTTY安装目录找到puyytgen.exe来加载服务器上的私钥drliaoku生成drliaoku.ppk文件
到此处ppk文件生成完成
(3)加载生成的ppk密钥文件,然后通过puttygen.exe来登陆服务器
最后点击Add Key,增加key
(4) 使用PuTTY登陆服务器
打开PuTTY.exe,在session中输入服务器地址,端口号:22。在Connection->SSH->Auth中选择Browse,选择刚才生成的drliaoku.ppk文件,点击登录。此时提示输入passphrase登陆,如果输入之后能登陆系统,则说明设置成功。
点击open,出现
没有加隧道模式,导致的直接登陆到了服务器。
现在在/home/drliaoku/.ssh/authorized_keys 这个文件中加入隧道模式
再次登陆服务器,此时已经登陆不上服务器了。
因为设置ppwenxue帐号为隧道模式访问svn服务,不能直接登录服务器。
2.windows端svn客户端软件安装
软件包:
设置svn的url
svn+ssh://drliaoku@192.10.1.33/drkuliaoweb
到此处配置完成
检查版本库代码
检出成功
四.此方案的安全方面的介绍
1.提取版本库代码的权限控制方面:
每个用户要想更新版本库时,必须要把自己电脑的公钥放到svn版本库的服务器上,这样才能更新代码版本库,要是有用户离职的话,直接在服务器上去掉用户的公钥就可以了,这样用户就不会在有权限更新代码了
2.各个的代码版本库目录权限的控制:
直接在root账户下登陆服务器,执行代码的版本库创建命令就可以了
svnadmin create /svndata/drkuliaotest
不需要对代码的版本库目录文件权限做任何改动的,同时也不需要对版本库的中conf目录下的任何文件做改动的,下面的这些文件只需要保持默认就可以了
[root@git-server conf]# ls
authz passwd svnserve.conf
[root@git-server conf]# pwd
/svndata/drkuliao/conf
3.对于服务器安全考虑,权限的控制
对/etc/ssh/sshd_config配置文件中sshd服务端口的设置
然后在iptables中进行访问22端口的iptables配置策略的设置
允许公司的IP地址才能访问22端口,其他的地址全部拒绝掉
同时也可以配置***,只允许的IP地址访问22端口,这样的话回家下载代码版本库的话,只需要登陆然后再拉取代码版本库就可以了
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· 2 本地部署DeepSeek模型构建本地知识库+联网搜索详细步骤