Skip to content

Commit 41d001a

Browse files
Merge pull request #5141 from MicrosoftDocs/main638700570784766887sync_temp
For protected branch, push strategy should use PR and merge to target branch method to work around git push error
2 parents 6fc6434 + b9c7f0a commit 41d001a

File tree

2 files changed

+12
-12
lines changed

2 files changed

+12
-12
lines changed

docs/linux/connect-to-your-remote-linux-computer.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ If `ssh` isn't already set up and running on your Linux system, follow these ste
9090

9191
You can use either a password or a key file and passphrase for authentication. Key files are more secure than username/password. If you already have a key pair, it's possible to reuse it.
9292

93-
Versions of Visual Studio before 17.10 support Elliptic Curve (EC), Rivert-Shamir-Adleman (RSA), and Digital signature algorithm (DSA) keys for remote connections. Because of security concerns, RSA and DSA keys are no longer supported in VS 17.10 and later. Only EC keys are currently supported. To create a key pair compatible with the connection manager use the command:
93+
Versions of Visual Studio before 17.10 support Elliptic Curve (EC), Rivert-Shamir-Adleman (RSA), and Digital signature algorithm (DSA) keys for remote connections. Because of security concerns, DSA keys are no longer supported in VS 17.10 and later. RSA keys were also not supported in VS 17.10 and VS 17.11 but are supported again in VS 17.12 and later. To create a key pair compatible with the connection manager you can use the command:
9494
`ssh-keygen -m pem -t ecdsa -f <key-name>`
9595

9696
> [!NOTE]
@@ -131,7 +131,7 @@ Starting in Visual Studio version 16.9, support for older, insecure SSH algorith
131131
| Encryption | `aes128-cbc`</br>`aes128-ctr`</br>`aes192-cbc`</br>`aes192-ctr`</br>`aes256-cbc`</br>`aes256-ctr` |
132132
| HMAC | `hmac-sha2-256`</br>`hmac-sha2-512` |
133133
| Key exchange | `diffie-hellman-group14-sha256`</br>`diffie-hellman-group16-sha512`</br>`diffie-hellman-group-exchange-sha256`</br>`ecdh-sha2-nistp256`</br>`ecdh-sha2-nistp384`</br>`ecdh-sha2-nistp521` |
134-
| Host key | `ecdsa-sha2-nistp256`</br>`ecdsa-sha2-nistp384`</br>`ecdsa-sha2-nistp521` |
134+
| Host key | `ecdsa-sha2-nistp256`</br>`ecdsa-sha2-nistp384`</br>`ecdsa-sha2-nistp521`</br>`rsa-sha2-512`</br>`rsa-sha2-256`</br>`ssh-rsa` |
135135

136136
### Configure the SSH server
137137

@@ -275,4 +275,4 @@ To configure an MSBuild project for WSL, see [Configure a Linux project](configu
275275
[Configure a Linux project](configure-a-linux-project.md)\
276276
[Configure a Linux CMake project](cmake-linux-project.md)\
277277
[Deploy, run, and debug your Linux project](deploy-run-and-debug-your-linux-project.md)\
278-
[Configure CMake debugging sessions](../build/configure-cmake-debugging-sessions.md)
278+
[Configure CMake debugging sessions](../build/configure-cmake-debugging-sessions.md)

docs/linux/set-up-fips-compliant-secure-remote-linux-development.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ The examples in this article use Ubuntu 18.04 LTS with OpenSSH server version 7.
4848
```
4949

5050
> [!NOTE]
51-
> `ssh-rsa` is the only FIPS compliant host key algorithm VS supports. The `aes*-ctr` algorithms are also FIPS compliant, but the implementation in Visual Studio isn't approved. The `ecdh-*` key exchange algorithms are FIPS compliant, but Visual Studio doesn't support them.
51+
> `ssh-rsa`, `rsa-sha2-*`, and `ecdsa-sha2-*` are the only FIPS compliant host key algorithms VS supports. For more information about the algorithms Visual Studio supports, see [Supported SSH Algorithms](connect-to-your-remote-linux-computer.md#supported-ssh-algorithms).
5252
5353
You're not limited to these options. You can configure `ssh` to use other ciphers, host key algorithms, and so on. Some other relevant security options you may want to consider are `PermitRootLogin`, `PasswordAuthentication`, and `PermitEmptyPasswords`. For more information, see the `man` page for `sshd_config` or the article [SSH Server Configuration](https://www.ssh.com/ssh/sshd_config).
5454

@@ -58,35 +58,35 @@ The examples in this article use Ubuntu 18.04 LTS with OpenSSH server version 7.
5858
sudo service ssh restart
5959
```
6060

61-
Next, you'll create an RSA key pair on your Windows computer. Then you'll copy the public key to the remote Linux system for use by `ssh`.
61+
Next, you'll create an ECDSA key pair on your Windows computer. Then you'll copy the public key to the remote Linux system for use by ssh.
6262

63-
### To create and use an RSA key file
63+
### To create and use an ECDSA key file
6464

65-
1. On the Windows machine, generate a public/private RSA key pair by using this command:
65+
1. On the Windows machine, generate a public/private ECDSA key pair by using this command:
6666

6767
```cmd
68-
ssh-keygen -t rsa -b 4096 -m PEM
68+
ssh-keygen -t ecdsa -m PEM
6969
```
7070

71-
The command creates a public key and a private key. By default, the keys are saved to *`%USERPROFILE%\.ssh\id_rsa`* and *`%USERPROFILE%\\.ssh\\id_rsa.pub`*. (In PowerShell, use `$env:USERPROFILE` instead of the cmd macro `%USERPROFILE%`) If you change the key name, use the changed name in the steps that follow. We recommend you use a passphrase for increased security.
71+
The command creates a public key and a private key. By default, the keys are saved to %USERPROFILE%\.ssh\id_ecdsa and %USERPROFILE%\.ssh\id_ecdsa.pub. (In PowerShell, use $env:USERPROFILE instead of the cmd macro %USERPROFILE%) Keys generated with RSA are also supported. If you change the key name, use the changed name in the steps that follow. We recommend you use a passphrase for increased security.
7272

7373
1. From Windows, copy the public key to the Linux machine:
7474

7575
```cmd
76-
scp %USERPROFILE%\.ssh\id_rsa.pub user@hostname:
76+
scp %USERPROFILE%\.ssh\id_ecdsa.pub user@hostname:
7777
```
7878

7979
1. On the Linux system, add the key to the list of authorized keys, and ensure the file has the correct permissions:
8080

8181
```bash
82-
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
82+
cat ~/id_ecdsa.pub >> ~/.ssh/authorized_keys
8383
chmod 600 ~/.ssh/authorized_keys
8484
```
8585

8686
1. Now, you can test to see if the new key works in `ssh`. Use it to sign in from Windows:
8787

8888
```cmd
89-
ssh -i %USERPROFILE%\.ssh\id_rsa user@hostname
89+
ssh -i %USERPROFILE%\.ssh\id_ecdsa user@hostname
9090
```
9191
9292
You've successfully set up `ssh`, created and deployed encryption keys, and tested your connection. Now you're ready to set up the Visual Studio connection.

0 commit comments

Comments
 (0)