

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Führen Sie es CodeBuild auf einem transparenten Proxyserver aus
<a name="run-codebuild-in-transparent-proxy-server"></a>

 Für die Ausführung AWS CodeBuild auf einem transparenten Proxyserver müssen Sie den Proxyserver so konfigurieren, dass er Zugriff auf die Websites und Domänen hat, mit denen er interagiert. 

**Topics**
+ [Konfigurieren von Squid als transparenter Proxy-Server](#use-proxy-server-transparent-squid-configure)
+ [CodeBuild Erstelle ein Projekt](#use-proxy-server-transparent-create-acb-project)

## Konfigurieren von Squid als transparenter Proxy-Server
<a name="use-proxy-server-transparent-squid-configure"></a>

 Um einen transparenten Proxy-Server zu konfigurieren, müssen Sie ihm Zugriff auf die Domänen und Websites erteilen, auf die er zugreifen soll. Um AWS CodeBuild mit einem transparenten Proxyserver zu arbeiten, müssen Sie ihm Zugriff `amazonaws.com` gewähren. Sie müssen auch Zugriff auf andere Websites CodeBuild gewähren. Diese variieren, je nachdem, wie Sie Ihre CodeBuild Projekte erstellen. Beispiel-Websites sind solche für Repositorys wie Bitbucket GitHub, Yum und Maven. Um Squid Zugriff auf bestimmte Domains und Websites zu erteilen, aktualisieren Sie die `squid.conf`-Datei mit einem Befehl ähnlich dem folgenden: Dieser Beispielbefehl gewährt Zugriff auf `amazonaws.com`, `github.com` und `bitbucket.com`. Sie können dieses Beispiel bearbeiten, um Zugriff auf andere Websites zu erteilen. 

```
cat | sudo tee /etc/squid/squid.conf ≪EOF
visible_hostname squid
#Handling HTTP requests
http_port 3129 intercept
acl allowed_http_sites dstdomain .amazonaws.com
#acl allowed_http_sites dstdomain domain_name [uncomment this line to add another domain]
http_access allow allowed_http_sites
#Handling HTTPS requests
https_port 3130 cert=/etc/squid/ssl/squid.pem ssl-bump intercept
acl SSL_port port 443
http_access allow SSL_port
acl allowed_https_sites ssl::server_name .amazonaws.com
acl allowed_https_sites ssl::server_name .github.com
acl allowed_https_sites ssl::server_name .bitbucket.com
#acl allowed_https_sites ssl::server_name [uncomment this line to add another website]
acl step1 at_step SslBump1
acl step2 at_step SslBump2
acl step3 at_step SslBump3
ssl_bump peek step1 all
ssl_bump peek step2 allowed_https_sites
ssl_bump splice step3 allowed_https_sites
ssl_bump terminate step2 all
http_access deny all
EOF
```

 Eingehende Anforderungen von Instances im privaten Subnetz muss zu den Squid-Ports umgeleitet werden. Squid ist an Port 3129 für HTTP-Datenverkehr (anstelle von 80) und an Port 3130 für HTTPS-Datenverkehr (anstelle von 443) empfangsbereit. Verwenden Sie den Befehl **iptables**, um Datenverkehr weiterzuleiten: 

```
sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3129
sudo iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-port 3130
sudo service iptables save
sudo service squid start
```

## CodeBuild Erstelle ein Projekt
<a name="use-proxy-server-transparent-create-acb-project"></a>

 Nachdem Sie Ihren Proxyserver konfiguriert haben, können Sie ihn ohne weitere Konfiguration AWS CodeBuild in einem privaten Subnetz verwenden. Jede HTTP- und HTTPS-Anforderung durchläuft den öffentlichen Proxy-Server. Verwenden Sie den folgenden Befehl, um das Zugriffsprotokoll des Squid-Proxys anzuzeigen: 

```
sudo tail -f /var/log/squid/access.log
```