H2S122: Building a minimalist.TURN-Ser w/ AWS:


Hu: I’m currently WP-hosted on Dreamhost, but I dare not stretch that platform, for the needs of a raw PHP-install. I’ve had a good experience, previously, with AWS 1) it’s bare metal ready 2) no limit to scalability, theoretically 3) tons of flexibility, with room to be fundamental. I should have no issues running raw HTTP-reqs, and even accessing TCP-ports<oh-golly!>here.

H3S1: Word babble dump:

Hu: I’m very new to this: Try EC2; set up an instance; deploy some instances, launch, windows instance, Linux instance<D.C-T> 11/30/22: Certificate, done, you need, file, instructions, upload, pair, EC2, Mumbai, which is in India, Amazing web service, Amazon.

H3S2: Server.IP-management:

H4S1: What are the NAT settings, of the AWS server?

Hu: Ideally, I can set up a secure, and non-disruptive, NAT, that itself, does not create any necessitations to TURN around it<Turing> 1:32:39, <Digital Cloud Training a-r>

H4S2: How do I consistently link the IP address of the TURN server, with clients’ servers?<Turing>

Hu: In order to use the TURN server, clients have to be able to send data to it; in order to send data to it, they must know the public IP; symmetrically, clients will need to whitelist the TURN server, in order to receive responses, after setting the GET request, from the recipient side, or to receive a write from that server, depending on my implementation.

H4S3: Test: Serving an extra.ip-access,remote.page<Turing><practice><fbno>:

<WP.MIC-H2S74,H3S3.H4S3>: Our private IP is 172.31.93.106; this IPv4 address is displayed both in the EC2 console EC2->Instances->i-02861d8bf8a147d04, and Control Panel\Network and Internet\Network Connections->Status->Details, as shown in 3:49<Torogi-pro, a-r>We discovered in H2S74 that this IP can be entered into the same | device browser address to access the WAMP | homepage. H5S1: Establishing our public | IP as the Virtual | host | address in Apache<WP.MIC-H2S114,H3S2.H4S2>

H4S4: The Instance->Instance ID management screen, in ec2/home, is a half | analogy for router-login

<WP.MIC-H2S74,H3S3.H4S4-H5S5>

H3S3: LWAMP-installation:

WAMP or LAMP?

H4S1: Database Tier:

MySQL needs to be installed into the database-tier; the URL of the MySQL install needs to be known, so that the scripts in PHP can connect to MySQL. PHPMyAdmin also needs to be installed, to peruse MySQL, and PHPMyAdmin runs on the PHP-ver<WAMP-local 11/22>

H4S2: Attempt To Install WAMP-Server:

Hu: If WAMP is feasibly-installable on AWS, then # this simplifies our decision to select between WAMP and LAMP; WAMP-server is an built-in, all-in-one package, that I already have some familiarity with, and it saves a ton of trouble, in connecting PHP to MySQL, installing PhpMyAdmin on top of PHP, and working with MySQL, configuring Apache, etc.

H5S1: Remote desktop connection:

Hu: Based on videos provided by IT JobHacks and Cloud Cell, Windows seems particularly convenient, in part because I run WAMP, and whereas when Keith the Coder<a-r>runs LAMP, he uses command-line, so the decision to use Windows, and WAMP, has twice-fold the simplification. It looks like Amazon provides the software for remote Windows | access, and this does not need to be installed, on a third.party-basis # H6S1: After launching the instance in<H5S2>, remote | connection can be made by launching the .rdp | file from one’s home.native-desktop, and using the password generated with PEM key on upload to EC2->Instances->Instance->Connect->RDP Client. The RDP file is downloaded from this same location. H7S1: Note that H5S3.H6S1-H7S1 the .rdp file will contain an outdated.public-IP, and it is the public-IP, that it uses, to connect to the instance, whenever the public-IP changes, with a stop/start of the server. This issue can be fixed by re-downloading the RDP file from the location specified at H5S3.H6S1-H7S1.

H5S2: Preparing an EC2 instance, for WAMP-install:

Application and OS Images (Amazon Machine Image): H6S0<fbno>: Hu: At this point, I’ll just optimize for getting a WAMP-install, after which, my competency will be much higher.

Anthro: H7S1: IT JobHacks: Windows_Server-2012-R2_RTM-English-64Bit-Base-2019.02.13(ami07c77fe35092981e9><manual-typed><0:30>H7S2: technical muktadur: Microsoft Windows Server 2016 Base ami-100f467f<2:46><manual-typed>H7S3: Brian-Kendrick: Microsoft Windows Server 2019 Base ami-0d43d465e2051057f<free-tier><manual-typed>H7S4: KGP-Talkie: Microsoft Windows Server 2016 Base ami-e69c2986 H7S5: Cloud Cell: Microsoft Windows Server 2016 Base ami-3438f84c

H7S6, conc: Honestly, the larger consideration, being as this is simply the determinant of the os-version, could be the compatibility from WAMP’s perspective. H7S7: With free.tier-eligible, I’m only able to access non.SQL-servers, and I have access to 3 each of 2022/19/16 Servers, with either the options of “Base” or “Core Base”. The default is Base, and all 5 of my<anthro>samples selected Base. For the most part, they choose the most | recent version available. My selection:

Microsoft Windows Server 2022 Base: ami-06405b4fe851623(64-bit(x86))

H6S1: Instance type: Hu: Only t1.micro and t2.micro are free.tier-eligible, so this simplifies my search. t2 is the default, and I’ll go with that one.

Anthro: H7S1: IT JobHacks: t2.micro H7S2: Technical MUKTADUR: t2.micro H7S3: Brian-Kendrick t2.micro H7S4: KGP-Talkie: t2.micro H7S5: Cloud Cell: t2.micro H7S6:

t2.micro, 1 vCPU, 1GiB Memory, architecture: i386, x86_64, low to moderate network performance

H6S2: Key pair (login): AWS: You can use a key pair to securely connect to your instance. Ensure that you have access to the selected key pair before you launch the instance. Hu: The key pair concept seems fairly straightforward, and is rooted in basic principles of cryptography: a private key is stored in your computer, that matches the public key of the server instance; a decision point to the format: pem or ppk; pem, as Amazon states, is to be used with OpenSSH, one of the options for connecting to the instance, while ppk is to be used with PuTTY. Both look like they are Windows compatible, and OpenSSH, based on its Wikipedia page, looks a bit more credible<a-r>.

H7S1: SSH, brief lit-rev:

Hu: At this point, it’s not clear how much I need to understand about SSH to connect to my instance, based on the degree to which # a remote desktop client is provided, for Windows. Wikpedia<a-r>: The Secure Shell Protocol (SSH) is a cryptographic | network protocol for operating network services securely over an unsecured | network. Its most notable applications are remote login and command-line | execution. The most commonly implemented software stack is OpenSSH, released in 1999 as open-source software by the OpenBSD developers.

H6-post: Looks like I can get started, with a single key pair. Anthro: H7S2: Brian-Kendrick: RSA, PEM<2022>H7S3: Technical MUKTADUR, PEM<2017>H7S4: KGP-Talkie, PEM<2017>H7S5: Amit G. Maru, PEM H7S6: All 4 of my examples named their own key pairs. H7S7: In more recent years, AWS provides option for ED25519, however, the label is “not supported for Windows instances”.

RSA | .pem key pair, self.created-name

H6S3: Network settings:

Hu: There are a bunch of settings here, and it will probably take me too long to investigate deeply, before getting a test instance running. If I install WAMP, again, WAMP will generalize, and standardize the running of my PHP-files, so I mostly will not be committed to too many AWS settings, being as I can switch later, as long as I can still run WAMP, and therefore, my PHP-files. Therefore, whichever settings allow me to run WAMP, and if it fails immediately, I can simply change it before, I start at all; therein lies the advantage of having a middling op.sys-layer<Turing> for standardization. Therefore, I will watch the IT JobHacks tutorial, and any such like, which there are more than a few, to determine the standard settings, that can run WAMP, and simply copy those, to start, in order to fast-track my way to having a working WAMP.server-install, on the EC2-instance.

Additional resource: https://aws.amazon.com/premiumsupport/knowledge-center/connect-http-https-ec2/

https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ms_ad_create_access_url.html

Image: https://us-east-1.console.aws.amazon.com/ec2/home?region=us-east-1#LaunchInstances:

Anthro: H7S1: Technical MUKTADUR: Uses default VPC, no subnet preference H7S2: Brian-Kendrick: same as<H7S1> H7S3: KGP-Talkie: same as<H7S1>H7S4: Amit G. Maru: same as<H7S1>H7S5: Cloud Cell same as<H7S1>: H7S6:

Default-VPC, No pref subnet, auto.assign-IP

H7S7: According to AWS, “a public IP address is automatically | assigned to the primary network interface of the instance”.

H6S4: Firewall (security | groups): AWS: “A security group is a set of firewall rules that control the traffic for your instance. Add rules to allow specific traffic to reach your instance”.

H7S1: IT Job Hacks: 1) Port 80 (HTTP inbound and outpound) 2) Port 443 (HTTPS inbound and outboard) 3) Port 3389 (RDP inbound only) H8S1: “As a security best practice, restrict RDP-access to a range of IP addresses in your organization”. This best-practice sentiment is echoed by at least half of the videos. H7S2: Technical MUKTADUR 1) RDP TCP 3389, 2) All TCP 0-65535 3) All UDP 0-65535 4) HTTP port 80 5) HTTPS port 443, source for all set to “anywhere” H7S3: Brian Kendrick: RDP 3389 0.0.0.0/0 H7S4: KGP-Talkie RDP 3389 0.0.0.0/0 HTTP 80 0.0.0.0/0 HTTPS 443 0.0.0.0/0 H7S5: Cloud Cell: 1) All traffic, Protocol: All, Port range: 0-65535 2) SSH: TCP Port 22. H7S6: 1) RDP, TCP 3389 2) HTTP, TCP 80 3) HTTPS, TCP 443 H7S7: AWS: Common | traffic types include SSH (for a Linux | instance), RDP (for a Windows | instance), and HTTP and HTTPS (to allow Internet traffic to reach your instance).

RDP 3389 0.0.0.0/0 HTTP 80 0.0.0.0/0 HTTPS 443 0.0.0.0/0

H7S8: AWS: Rules with source of 0.0.0.0/0 allow all IP | addresses to access your instance. We recommend setting security group rules to allow access from known | IP addresses only. H7S9: TCP and the port values are auto-selected and unchangeable, by AWS<12/22>, when the type<ie HTTP>is selected.

H6S5: Configure storage:

The max storage is 30-gb for free, so again, let’s just go with that. Only about 2.6-gb<WP.MIC-H2S117>is required for WAMP; our code will be <100-kb, in this stage, and all data is transitory, so 30-gb should more.than-suffice.

Anthro: H7S1: Technical MUKTADUR: 30 GiB GP2 H7S2: Brian-Kendrick: 30 GiB GP2 H7S3: KGP-Talkie: 30 GiB GP2 H7S4: Cloud Cell: 30 GiB GP2 H7S5: Maru: 30 GiB GP2 H7S6: All H7S1-5 were storage in a single | volume.

1x 30 GiB gp2

H6S6: Tags: None of our videos applied utile tags.

H6S7: Advanced details: We will skip these for now, didn’t see any videos set on a cursory glance<80% 12/2/22>

Anthro: H7S1: H7S2: H7S3: H7S4: H7S5:

H5S3: Post.launch-details: H6S1: Public IPv4 DNS: ec2-44-211-46-201.compute-1.amazonaws.com, found on Home->Instances->Instances. H7S1: The Public IPv4 changes every time the server stops, and completely restarts<d’oh!> H6S2: Separately, no IPv6 is given. H6S3: Also given is an Private IPv4 addresses<different>and a number of other identifier-values. Will need to confirm which is used to make POST-requests and db-writes to the server. H6S4: The instance can be stopped by Instances->Instance->Actions->Manage instance state, and restarted, from the same | console.

H5S4: Downloading and installing WAMP on the running-instance: According to IT.Job-Hacks<2:08>, internet explorer’s Enhanced Security Configuration needs to be switched off via Desktop->Start->Server Manager->Local Server->IE Enhanced Security Configuration. This can be re-enabled, once the installation is complete # I skipped most of the suggested changes from 2:08 to 6:30 or so, and went right into wampserver.com, on the instance, to make the install happen #

H6S1: Installing MSVC = Microsoft Visual C++:<WP.MIC-H2S70> H7S1: After installing WAMP-attempt, I received several dllerrors and was able to fix them by replacing all msvc files in C:\Windows\System32 and C:\Windows\SysWOW64 in the AWS-instance from my computer, where they were already installed: 64: https://drive.google.com/file/d/18NUH3D0Ayn_UZKiGf0wpM77ZgI7ZgpSl/view?usp=sharing: 32: https://drive.google.com/file/d/1i5diX4FYntQS9QkV54en3adne-Uwrx0N/view. Microsoft also proposes a solution<a-r>.

H5S5: Confirming WAMP’s operation: I was able to confirm WAMP’s | operation by running a replication test<Github math-testing>; the next test is serving up a web-page for public access<H3S2-H4S3>

H3S4: Elastic scaling<Turing><later>:

H3S5: Transporting text.only-payloads:

R:<Github-flare>

H3S6: Transporting rTC-payloads:

<WP-Buffalo<cont.WP-MIC,H2S123>So this will be my next step. According to IETF-docs, NATs are still a barrier, so it’s not clear yet whether the blob itself, or only its representation, needs to go through the TURN. If the former, then I may need to XMLHTTPRequest.send, via post, the entire blob, through the TURN, which is 1 extra data transmission step, that we’d like to avoid, for true peer-to-peer<Turing>, if possible. Mysteriously, this doc is the only one I’ve found that represents the possibility # that using AJAX for POST’ing a blob is even possible:<Mozilla-File, a-r>. I also need to validate that AJAX can send up to a 200-kb/30 sized file.

XMLHttpRequest.send() accept both Blobs and Files.

If the recipient client can remote access the file on the sender’s computer directly, then we’d have true peer-to-peer. We need only, in that case, to transmit the blob-URL to him, as that URL is objective, in being able to feed to video.src. Quite a bit of research will be needed to examine this possibility, as well as through various NAT blockades, with which I have 0 experience, and seems like a confounding field. == All indications point to the possibility of <100-ms, which IETF classifies as ultra.low-latency, so this implementation, with maybe 5 more lines of code, already meets an RTC-standard.

https://lichess.org/fEzaaMv9/black#79 40…Nd6 or Na5 and if Bb8, Nc6$🛡️! holds on.

42. Nf4+ Kd7 43. Nxd5 +6 SF.14+NNUE d-31

44…Bxd4 -0.3<o.m-D>

19. Nf4, Rd2 5.85 d-25 SF.14+NNUE. Second rank defense is thematic here.
https://lichess.org/3TaJE5hi/white#36. F.i-o:

{{c1::Rh2}} {{c2::6.5::ev}} and if Qb4+ 24. {{c3::Rhd2}}! and s has recouped an N, but lost his $

References:

Digital Cloud Training 7/20; has a ton more videos on his website, and a training course.
Playlist of 62 videos to prep for the official Amazon certification exam:

https://aws.amazon.com/certification/certified-solutions-architect-associate/

Keith the coder

IT JobHacks
Cloud Cell

Standards #: https://aws.amazon.com/blogs/aws/aws-wickr-a-secure-end-to-end-encrypted-communication-service-for-enterprises-with-auditing-and-regulatory-requirements/


TheWebGuru: 6:57 length
Joseph Ponce 4:38 length, class project
IBM Technology Official
MUTED: Technical MUKTADUR 29:58 length

KGP Talkie 5:54 length cont:

XAMPP/WAMP Apache Server Installation on Windows 10: https://www.youtube.com/watch?v=ob5xTHZl7Eg AWS Series Tutorial 1- Free Hosting Website in 6 Minute on Amazon Web Services S3: https://www.youtube.com/watch?v=Exf8wUt4Wgc AWS Series Tutorial 2- Setting-Up of Amazon EC2 Instance for Dynamic Website Hosting: https://www.youtube.com/watch?v=Nw7LL71XHqo AWS Series Tutorial 3- Running Windows Server On Amazon EC2 Instance for Dynamic Website Hosting: https://www.youtube.com/watch?v=PgxwLpdCJPs: AWS Series Tutorial 4- Setting Up XAMPP / WAMP Server on Windows Server On Amazon EC2 Instance: https://www.youtube.com/watch?v=x4T9y82qnys: AWS Series Tutorial 5- Free Hosting of Dynamic Website on XAMPP/WAMP Server Running at Amazon EC2: https://www.youtube.com/watch?v=QSI2n8kU6j4

Cloud Infrastructure Services 6:43 length
SACHIN TECHNOTIPS

Kevin Ashton

https://learn.microsoft.com/en-US/cpp/windows/latest-supported-vc-redist?view=msvc-170

https://github.com/yakun-hu/chess/tree/main/testing-progress/Math.games-testing

H3S3: SSH:

https://en.wikipedia.org/wiki/Secure_Shell

https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html?icmpid=docs_ec2_console

https://en.wikipedia.org/wiki/OpenSSH, https://www.openssh.com/

PuTTY: https://en.wikipedia.org/wiki/Simon_Tatham, https://docs.oracle.com/en/cloud/paas/goldengate-cloud/tutorial-change-private-key-format/#(Optional)ConvertppkformattoOpenSSH, https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

RFC 4250, RFC 4251, RFC 4252, RFC 4253, RFC 4254, RFC 4255, RFC 4256, RFC 4335, RFC 4344, RFC 4345, RFC 4419, RFC 4462, RFC 5656, RFC 6594, RFC 6668, RFC 7479

https://learn.microsoft.com/en-us/windows-server/administration/openssh/openssh_install_firstuse?tabs=gui

https://github.com/PowerShell/Win32-OpenSSH Win32 port of OpenSSH https://github.com/PowerShell/openssh-portable https://github.com/PowerShell/Win32-OpenSSH/wiki https://github.com/PowerShell/Win32-OpenSSH/wiki/Building-OpenSSH-for-Windows-(using-LibreSSL-crypto)

H3S6: RTC.payload-transport:

https://github.com/yakun-hu/flare

https://developer.mozilla.org/en-US/docs/Web/API/File

Remote Windows access, non-WAMP: <10 min unless otherwise:

AWS-Official
Ranjit Swain
AWS-Official
AHT Cloud
abctutorial
sysadmintutorials [20-min]
StormWind Studios [24-min]
AWS-Official
AWS-Official
StormWind Studios
AWS-Official
James Tyler [16-min]
AWS-Official
Brian-Kendrick 5:38 len

https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-instance-addressing.html

Amit G. Maru

MySQL x AWS, deep<fbno>:

RAS Web Design [65-min]

IP-management:

Torogi Pro

Leave a Reply

Your email address will not be published. Required fields are marked *