0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

EC2からProxy設定を回避してS3へアクセスする方法

Posted at

問題の背景

シェル(bashなど)の環境変数にProxy設定をしている場合、その設定は一般的にそのシェルで実行される全てのコマンドに影響します。これにより、aws s3コマンドでS3へアクセスする際に、意図せずProxyを経由することがあり、一部の環境ではProxy設定が原因で問題が発生することがあります。そこで、今回は.bashrcで設定されたProxy設定を回避して、AWS S3にアクセスする方法を解説します。

実行環境

OS : AlmaLinux
Version : 9.2 (Turquoise Kodkod)

EC2インスタンスはVPCプライベートネットワーク下にあり、S3へのアクセス口としてVPC Gateway Endpointsを立てています。

また、EC2サーバーから対象のS3バケットへの正しい権限設定などを行ない、アクセスが可能になっていることが前提となります。

解決方法

NO_PROXY環境変数を設定することで、特定のS3バケットやエンドポイントに対してProxyを経由せずに接続するようになります。この環境変数には、Proxyを経由せずに直接接続するホスト名をカンマ区切りで指定できます。

東京リージョン(ap-northeast-1)のS3バケットに対してProxyを経由せずに接続したい場合、以下のように環境変数を設定します。

export NO_PROXY=s3-ap-northeast-1.amazonaws.com

また、aws cliのコマンド実行時には、コマンドラインオプションの--endpoint-urlを試用して接続先のs3エンドポイントを明示的に指定します。
例えば、aws s3 cpコマンドでs3バケットからファイルをダウンロードする場合は、以下のようになります。

aws s3 cp s3://hoge/fuga.txt ./ --endpoint-url https://s3-ap-northeast-1.amazonaws.com

これにより、aws s3 cpコマンドは.bashrcのProxy設定を無視して、指定したエンドポイントへ直接接続し、ファイルをダウンロードすることが出来ます。

参照

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?