linux下apache+svn+ssl的环境搭建(申请免费的SSL证书)
来源:互联网 发布:步枪 知乎 编辑:程序博客网 时间:2024/04/30 15:26
1.安装apache2和svn server
$sudo apt-get install apache2
$sudo apt-get install subversion
$sudo apt-get install libapache2-svn
2.创建版本库
$sudo mkdir /data/svn
$sudo svnadmin create /data/svn/repos
3.添加项目
假设在/tmp目录下有demo目录,demo目录下的目录结构如下
demo
branches
tags
trunk
然后,用 svn import 命令来进行项目的导入:
$ svn import /tmp/ file:///data/svn/repos/ -m “init”
4.与Apache结合
<Location /> DAV svn SVNPath /data/svn/repos</Location>
5.通过用户名和密码来访问
$sudo htpasswd -c /data/svn/passwd username
第一次创建用户,需要通过参数-c,然后第二次创建用户就不需要
<Location /> DAV svn SVNPath /data/svn/repos AuthType Basic AuthName "svn repos" AuthUserFile /data/svn/passwd Require valid-user</Location>
6.目录访问控制
<Location /> DAV svn SVNPath /data/svn/repos AuthType Basic AuthName "svn repos" AuthUserFile /data/svn/passwd AuthzSVNAccessFile /data/svn/authz Require valid-user</Location>
/data/svn/authz如下所示
#两个分组:committers,developers[groups] committers = paulex richarddevelopers = jimmy michel spark sean \ steven tony robert#在根目录下指定所有的用户有读权限[/] * = r #追加 committers 组用户有读写权限@committers = rw #在 branches/dev 目录下指定 developers 组的用户有读写权限[/branches/dev] @developers = rw #在 /tags 目录下给予用户 tony 读写权限 [/tags] tony = rw #禁止所有用户访问 /private 目录[/private] * = #给 committers 组用户读权限@committers= r
7.用SSL实现安全的网络传输
$cd /tmp
$sudo openssl genrsa -des3 -out my-server.key 1024
$sudo openssl req -new -key my-server.key -x509 -out my-server.crt -config /etc/ssl/openssl.cnf
$mkdir /etc/apache2/ssl
$cd /etc/apache2/ssl
将 my-server.key 和 my-server.crt 文件都移动到 ssl 目录里面
$sudo a2enmod ssl
如果要限定版本库只能用 https 访问,我们可以在 Apache 配置文件当中 Subversion 部分加上”SSLRequireSSL”。
最终的虚拟主机配置文件如下:
NameVirtualHost *:443<VirtualHost *:443> ServerName svn.shen.com ServerAdmin shen@qq.com SSLEngine On SSLCertificateFile /etc/apache2/ssl/my-server.crt SSLCertificateKeyFile /etc/apache2/ssl/my-server.key ErrorLog ${APACHE_LOG_DIR}/svn_shen_error.log CustomLog ${APACHE_LOG_DIR}/svn_shen_access.log combined <Location /> DAV svn SVNPath /data/svn/repos AuthType Basic AuthName "svn repos" AuthUserFile /data/svn/passwd AuthzSVNAccessFile /data/svn/authz SSLRequireSSL Require valid-user </Location> </VirtualHost>
8.向StartSSL申请免费的SSL证书
自行颁发的SSL证书不受浏览器和TortoiseSVN的信任,可以去startssl.com申请证书,然后把
/etc/apache2/ssl/my-server.crt和/etc/apache2/ssl/my-server.key都替换掉。
9.解决安装SSL后,启动apache要输入密码的问题
$sudo vi /etc/apache2/mods-available/ssl.conf
注释掉SSLPassPhraseDialog builtin,
在下一行加上SSLPassPhraseDialog exec:/etc/apache2/ssl/ssl_pass.sh
在/etc/apache2/ssl目录下新建ssl_pass.sh(ssl也是自己建的)
$vi /etc/apache2/ssl/ssl_pass.sh
输入
#!/bin/sh
$echo “你的ssl证书密码”
$sudo chmod +x /etc/apache2/ssl/ssl_pass.sh
$sudo service apache2 restart
- linux下apache+svn+ssl的环境搭建(申请免费的SSL证书)
- 免费申请SSL证书的流程
- linux下的apache部署ssl证书
- linux下的apache部署ssl证书
- 申请免费startcom的ssl证书/CA证书
- nginx 配置 Wosign 申请的免费的 SSL 证书
- 基于Apache(without ssl)的svn环境搭建
- 在startssl上申请免费的SSL证书
- 阿里云申请免费的https证书ssl
- 申请免费的腾讯云SSL证书,实现https访问
- https免费申请ssl证书
- Linux----阿里云服务器 https 配置(目前用的是1年免费 SSL证书申请)
- apache允许https访问及ssl免费证书申请
- 免费申请SSL证书及搭建HTTPS网站
- StartSSL免费SSL证书申请使用:Apache和Ngnix安装配置SSL证书
- Apache + SSL搭建Linux证书服务器
- tomcat ssl配置 证书基于阿里平台申请的免费铁门塞克证书
- Linux apache下导入SSL证书
- AE中IColor、IRGBColor和Win32 Color和.Net中Color相互转换
- 查看应用评论URL
- OpenLayers深入浅出
- C# Socket编程之UDP
- Web技术中心代码规范 - 代码格式
- linux下apache+svn+ssl的环境搭建(申请免费的SSL证书)
- 计算机专业术语大全
- 学习秦始皇 五招打造无敌团队
- 修改包名 classnotfoundexception 解决办法
- LINUX之LCD驱动
- 虚拟串口软件VSPM
- IO性能分析
- eclipse中文乱码究极方案
- lag和lead 分析函数