Существует несколько проблем с информацией, представленной в вашем вопросе.
vpce-************-*******.server.transfer.us-west-2.vpce.amazonaws.com
- это , а не конечная точка Amazon S3 VP C. Это конечная точка VP C для службы под названием AWS Transer для SFTP , которая предоставляет управляемый шлюз SFTP, который подключается к корзине Amazon S3.
S3 VP C Конечная точка отличается, не требует настройки клиента и не имеет специального имени хоста конечной точки - они прозрачны и используются автоматически при создании и правильной настройке в VP C. И они предоставляют интерфейс REST, а не SFTP.
В обоих случаях конечные точки VP C могут использоваться только изнутри VP C, поэтому вы не сможете получить доступ к AWS Transer для конечной точки SFTP вне EC2 в любом случае.
Но это, строго говоря, почему это не работает. Ваш код также не будет работать внутри VP C, и проблема root в том, что AmazonS3 s3client = AmazonS3ClientBuilder
создает клиента S3 REST , а не SFTP клиента , Этот клиент не может использоваться с конечной точкой AWS Transfer for SFTP, либо с Inte rnet -facing, либо внутри VP C, поскольку такая конечная точка - не то, с чем AwsClientBuilder.EndpointConfiguration()
предназначена для использования. Конечные точки для использования с SDK: , найденные здесь . Для us-west-2 конечная точка для подключения ipv4 - https://s3.us-west-2.amazonaws.com
, а для ipv4 / ipv6 - https://s3.dualstack.us-west-2.amazonaws.com
.