您的位置:首页 > 理论基础 > 计算机网络

ubuntu SVN Apache SSL https 安装 与 配置

2016-11-17 17:11 731 查看
先安装这些,  切记先 apt-get update 更新一下源   

[plain] view
plain copy

apt-get install subversion apache2 libapache2-svn apache2-utils  

开启  (会提示你重新启动apache2,  无视它,进入下一步创建)

[plain] view
plain copy

a2enmod ssl  

创建目录

[plain] view
plain copy

mkdir /etc/apache2/ssl  

创建证书和key 到上面那个目录,   这个命令会让你输入国家,省份,城市,公司,部门,email地址

[plain] view
plain copy

openssl req -new -x509 -days 365 -nodes -out /etc/apache2/ssl/apache.pem -keyout /etc/apache2/ssl/apache.key  

 

使用vim 打开 /etc/apache2/ports.conf  

[plain] view
plain copy

vim /etc/apache2/ports.conf  

将下面放入 添加在 /etc/apache2/ports.conf里面的   IfModule mod_ssl.c块中 和注释80端口  然后保存

[plain] view
plain copy

NameVirtualHost *:443  

Listen 443  

最终效果:

[plain] view
plain copy

<p># If you just change the port or add more ports here, you will likely also  

# have to change the VirtualHost statement in  

# /etc/apache2/sites-enabled/000-default.conf</p><p>#Listen 80</p><p><IfModule ssl_module>  

        Listen 443  

</IfModule></p><p><IfModule mod_gnutls.c>  

        NameVirtualhost *:443  

        Listen 443  

</IfModule></p>  

 

使用vim 打开 /etc/apache2/sites-available/default-ssl

[plain] view
plain copy

vim /etc/apache2/sites-available/default-ssl.conf  

在SSLEngine on 下面找到2行 注释掉

[plain] view
plain copy

#SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem  

#SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key  

再 在 SSLEngine on下面添加下面的保存这个文件

[plain] view
plain copy

SSLCertificateFile /etc/apache2/ssl/apache.pem  

SSLCertificateKeyFile /etc/apache2/ssl/apache.key  

最终效果:

[html] view
plain copy

SSLEngine on  

SSLCertificateFile /etc/apache2/ssl/apache.pem  

SSLCertificateKeyFile /etc/apache2/ssl/apache.key  

#   A self-signed (snakeoil) certificate can be created by installing  

#   the ssl-cert package. See  

#   /usr/share/doc/apache2/README.Debian.gz for more info.  

#   If both key and certificate are stored in the same file, only the  

#   SSLCertificateFile directive is needed.  

#SSLCertificateFile     /etc/ssl/certs/ssl-cert-snakeoil.pem  

#SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key  

 

生效上面的配置

[plain] view
plain copy

a2ensite default-ssl  

 

重启apache2

[plain] view
plain copy

/etc/init.d/apache2 restart  

 

创建svn目录

[plain] view
plain copy

mkdir /svn  

使用vim 打开 /etc/apache2/mods-enabled/dav_svn.conf  先删除里面的内容,或者你可以先备份这个文件  使用cp命令

[plain] view
plain copy

vim /etc/apache2/mods-enabled/dav_svn.conf  

打开后添加以下,并且保存!   也是最终效果

[plain] view
plain copy

<Location /svn>  

DAV svn  

SVNParentPath /svn  

AuthType Basic  

AuthName "Subversion Repository"  

AuthUserFile /etc/apache2/dav_svn.passwd  

Require valid-user  

SSLRequireSSL  

</Location>  

使用以下 创建一个用户,第一次使用请加上c  如果以后想添加用户 就只使用m 或者不用  (xxxx这个为你的用户名)

[plain] view
plain copy

htpasswd -cm /etc/apache2/dav_svn.passwd xxxx  

 

去到/svn 这个目录下 创建你的svn路径 (xxxx 这个为你的路径目录名)

[plain] view
plain copy

cd /svn  

svnadmin create xxxx  

执行下面命令

[plain] view
plain copy

chown -R www-data:www-data /svn  

 

重启apache2

[plain] view
plain copy

/etc/init.d/apache2 restart  

 

 

 

-----------------------------------------------------------------------------------傻傻的分割线---------------------------------------------------

                               修改权限

使用vim 打开 /etc/apache2/mods-available/dav_svn.conf  添加下面

xxxx 为上面创建的svn目录,   (权限管理指向这个文件)

[plain] view
plain copy

AuthzSVNAccessFile /svn/xxxx/conf/authz  

PS:这个authz 文件  使用方式 百度,谷娘一下就有.用户列表在 /etc/apache2/dav_svn.passwd

      修改权限,不用重启apache2

      可能翻译的不够完整,可以自行翻Q到最顶的网站.自己再看
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: