S3 Object cannot be viewed from browser in ClientVPN Private Subnet - amazon-web-services

We've a local system server in AWS VPC Private Subnet, and we have configured AWS ClientVPN to access that instance with that VPN Client called Pritunl. And we've stored all of documents and images in AWS S3 that configured with VPC Endpoint regarding that documentation https://aws.amazon.com/premiumsupport/knowledge-center/s3-private-connection-no-authentication
Problem is everything is working fine as accessing that server with browser when we connect VPN Client to that server. But we cannot access to S3 Object in browser https://myprivatebucket.s3.amazonaws.com/images/bd3c6d93-ed68-48c8-939c-91bdcb3e6b6b.png as that image cannot be displayed or downloaded in browser. But when I ssh to that server and type wget https://myprivatebucket.s3.amazonaws.com/images/bd3c6d93-ed68-48c8-939c-91bdcb3e6b6b.png, that image was downloaded successfully.
Please let me know how to make how to display or able to download that object from browser.

Related

Sending Requests from postman to AWS ec2 instance

I have my ec2 instance running a docker image and id like to test the functionality of my routes with postman, however whenever I ping the ec2 public dns, it says connection refused. I have the security group opened up for all traffic from my machine and am running the postman desktop app. The example route I'm trying to hit is
https://{IP address here}.compute-1.amazonaws.com:6000/register
and I'm sending a post request with some json in it. All of this works fine on my local machine. Please tell me what I'm missing?
You can't use https:. Instead you must use http: as default EC2 instance url does not support HTTPS. For valid https, the easiest way is to setup ALB or set it up on an instance directly.

Unable to access sftp server directly from browser

I have created a sftp server for linux ec2 instance on aws. I have also mount the s3 bucket on linux using s3fs.
Now, any third party is able to access the sftp server using WinSCP. However, I am looking for the ways to access this server using browser url.
I have tried something like:
sftp://username:password#hostip
But it opens through the WinScp applocation and not through the browser directly.
Are they any ways to achieve it directly from browser?
skip the Linux layer and allow direct access to the bucket from the web
as described here
https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html

Amazon AWS EC2 Instance Not Connecting

I am attempting to create and connect to an Amazon EC2 instance via FidOS. I am following the procedure demonstrated in:
How to Create Amazon AWS EC2 Instance
I logged onto the AWS Console and created a general purpose Ubuntu Server Machine image.
I configured the instance details, added storage, added tags, and configured the Security Group just as in the video.
I clicked "Review and Launch" and created and downloaded the PEM key.
I generated the PPK private key using PuttyGen.
I configured my session using the public DNS in the Host Name field and uploading the private PPK key in the Authorization tab.
After I clicked Open, a terminal window appeared, but then timed out.
I am working on a Windows machine, and trying to create a Ubuntu Linux virtual machine.
Am I missing any steps or doing anything wrong? I would appreciate any help I can get.
The problem was the corporate firewall. It worked just fine when I tried it from another location.

Private IP address of Azure VM being returned as address in WSDL file when accessing WSDL file from browser connected to an Azure Application Gateway

I have a SOAP Service running on tomcat that is deployed in an Azure Scaling Set. I have an Azure Application gateway that is font ending the scale set. When I try to access the wsdl (/service?wsdl) file via a web browser using the Application Gateway DNS, the wsdl that is returned has the private IP addresses of the VM that processed the file in it. This prevents the endpoints from being accessed since they are private. If I access the wsdl going directly to the back end VM's DNS name, the address returned contains the public host name of the VM that I sent the request to and can be accessed since its public. I don't have this problem when I deploy a similar deployment in the AWS environment using AWS ELB in front of the scaling group.
I am able to get this to work by configuring tomcat connector to use proxyName and proxyPort to specify the host name of the Azure Application Gateway. However, there are other SOAP clients that are required to access the back end VMs directly on that same connector, and by specifying the proxy parameters for the connector forces them to go through the Azure application gateway as well.
I realize that a different tomcat connector can be configured to address this, but this is not an optimal solution for the back end application.
So to the question. Is there some Azure Application gateway configuration setting that I can change, so I can make this work like AWS ELB and not have to use the proxyName tomcat parameter?
Thanks.

How to restrict access to EC2 Spring Boot based REST endpoints

I have static web hosted on AWS S3 and Spring Boot based REST application running on EC2.
How would I restrict access to EC2? Currently, I have opened access to world on 8080 port, but this is not what i would like to have when I migrate to production. If I do not open access to world, I have connection timeout error in the browser's console.
Is there some way to allow only S3 based bucket to see EC2 instance and revoke world access?
But the code isn't running on the "S3 based bucket", it is running in each of your user's browsers. So you have to allow access to the world since you don't know ahead of time each IP address of each user you will ever have.
You should look into something like JSON Web Tokens or AWS Cognito or at least use API Keys.