

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Exécuter CodeBuild sur un serveur proxy transparent
<a name="run-codebuild-in-transparent-proxy-server"></a>

 Pour fonctionner AWS CodeBuild sur un serveur proxy transparent, vous devez configurer le serveur proxy de manière à ce qu'il puisse accéder aux sites Web et aux domaines avec lesquels il interagit. 

**Topics**
+ [Configuration de Squid en tant que serveur proxy transparent](#use-proxy-server-transparent-squid-configure)
+ [Création d'un CodeBuild projet](#use-proxy-server-transparent-create-acb-project)

## Configuration de Squid en tant que serveur proxy transparent
<a name="use-proxy-server-transparent-squid-configure"></a>

 Pour configurer un serveur proxy en tant que serveur transparent, vous devez lui accorder l'accès aux domaines et aux sites Web auxquels vous souhaitez qu'il accède. Pour fonctionner AWS CodeBuild avec un serveur proxy transparent, vous devez lui accorder l'accès à`amazonaws.com`. Vous devez également autoriser l'accès à d'autres CodeBuild utilisations du site Web. Elles varient en fonction de la façon dont vous créez vos CodeBuild projets. Les sites Web relatifs à des référentiels tels que Bitbucket GitHub, Yum et Maven sont des exemples de sites Web. Pour accorder à Squid l'accès à des domaines et à des sites Web spécifiques, utilisez une commande similaire à la suivante pour mettre à jour le fichier `squid.conf`. Cet exemple de commande accorde l'accès à `amazonaws.com`, `github.com` et `bitbucket.com`. Vous pouvez modifier cet exemple pour donner accès à d'autres sites Web. 

```
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
```

 Les demandes entrantes à partir des instances du sous-réseau privé doivent être redirigées vers les ports Squid. Squid écoute le trafic HTTP sur le port 3129 (au lieu de 80) et le trafic HTTPS sur le port 3130 (au lieu de 443). Utilisez la commande **iptables** pour acheminer le trafic : 

```
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
```

## Création d'un CodeBuild projet
<a name="use-proxy-server-transparent-create-acb-project"></a>

 Après avoir configuré votre serveur proxy, vous pouvez l'utiliser AWS CodeBuild dans un sous-réseau privé sans autre configuration. Chaque demande HTTP et HTTPS passe par le serveur proxy public. Utilisez la commande suivante pour afficher le journal d'accès proxy Squid : 

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