Так что помимо моей работы в качестве разработчика Java, я пытался улучшить свои навыки инфраструктуры. Это привело меня к настройке сервера MacOs дома и запуску некоторых служб из дома. В настоящее время у меня есть три основных сервиса, к которым я хотел бы получить доступ извне, с безопасностью, но у меня есть только один, работающий вне моей сети.

Я постараюсь быть настолько многословным, насколько это возможно, но дайте мне знать, если потребуется дополнительная информация.

Три услуги: SVN, GIT и Дженкинс

Мой сервер работает локально на 10.0.1.11, из моей сети я могу получить доступ к экземпляру Jenkins, работающему на порту 8080, к этому также можно обратиться по адресу xyz.ddns.net:8080. SVN настроен через webdav и доступен по адресу xyz.ddns.net/svn. Однако у меня возникают проблемы с настройкой моего git для доступа извне и доступа Jenkins по определенному адресу.

Я хотел бы получить доступ к этим трем службам по адресу xyz.ddns.net/svn - который работает с базовой аутентификацией xyz.ddns.net/jenkins - который не работает вообще, но я могу получить доступ с порта 8080 xyz.ddns .net/git - чего я вообще не могу достать извне

Мой git-сервер основан на образе bitnami gitlab и локально установлен на 10.0.1.35.

Ниже мой httpd-файл, который по большей части является материалом по умолчанию, сгенерированным MacOS Server. Все внутренние адреса работают нормально, я просто хотел бы сделать их доступными извне, в идеале, с базовой аутентификацией.

Большое спасибо за любые советы или ссылки, я смотрел на это в течение нескольких дней, и я не прогрессировал вообще.

<VirtualHost 127.0.0.1:34580>
    ServerName default
    ServerAdmin admin@example.com
    DocumentRoot "/Library/Server/Web/Data/Sites/Default"
    DirectoryIndex index.html index.php default.html
    CustomLog "/var/log/apache2/access_log" combinedvhost
    ErrorLog "/var/log/apache2/error_log"

    <IfModule mod_ssl.c>
            SSLEngine Off
            SSLCipherSuite "HIGH:MEDIUM:!MD5:!RC4:!3DES"
            SSLProtocol -all +TLSv1 +TLSv1.1 +TLSv1.2
            SSLProxyEngine Off
            SSLProxyProtocol -all +TLSv1 +TLSv1.1 +TLSv1.2
            SSLProxyCheckPeerCN off
            SSLProxyCheckPeerName off
    </IfModule>
    <IfModule mod_secure_transport.c>
            MSTEngine Off
            MSTCipherSuite HIGH, MEDIUM
            MSTProtocolRange TLSv1.2 TLSv1.2
            MSTProxyEngine On
            MSTProxyProtocolRange TLSv1.2 TLSv1.2
    </IfModule>
    <Directory "/Library/Server/Web/Data/Sites/Default">
            Options All -Indexes -ExecCGI -Includes +MultiViews
            AllowOverride None
            <IfModule mod_dav.c>
                    DAV Off
            </IfModule>
            <IfDefine !WEBSERVICE_ON>
                    Require all denied
                    ErrorDocument 403 /customerror/websitesoff403.html
            </IfDefine>
    </Directory>



    ProxyPass /svn/projects http://www.server.com/svn/projects/
    ProxyPassReverse /svn/projects http://www.server.com/svn/projects/


    ProxyPass /jenkins/ http://www.server.com:8080/
    ProxyPassReverse /jenkins/ http:/www.server.com:8080/

    ProxyPass /git/ https://10.0.1.35/
    ProxyPassReverse /git/ https://10.0.1.35/


    RewriteEngine On
    RewriteCond %{HTTP_HOST} !(^localhost|^127.0.0.1|^::1)
    RewriteCond %{REQUEST_URI} !^/netboot/ [NC]
    RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R]
</VirtualHost>

0