使用SSH

作者: Eugene Taylor
创建日期: 15 八月 2021
更新日期: 1 七月 2024
Anonim
SSH小白入门教程一次弄懂SSH入门到精通,openssh/SSH协议/服务别名/秘钥文件/配置免密登录/SSH Github/Gitlab/VPS远程管理配置
视频: SSH小白入门教程一次弄懂SSH入门到精通,openssh/SSH协议/服务别名/秘钥文件/配置免密登录/SSH Github/Gitlab/VPS远程管理配置

内容

如果您使用不安全的Internet连接到另一台计算机,则您可能想尽一切努力来确保数据安全。 SSH是实现这一目标的一种方法。为此,您将需要在计算机上安装SSH,然后建立与服务器的加密连接。请记住,为了保护连接,必须在连接的两面都启用SSH。请遵循本指南,以确保您的连接尽可能安全。

第1部分(共3部分):首次连接

  1. 安装SSH。 在Windows中,您将必须下载SSH客户端。最受欢迎的是Cygwin,您可以从开发者的网站上免费下载。下载并安装程序。另一个受欢迎的免费程序是PuTTY。
    • 在安装Cygwin的过程中,您必须从“网络”部分选择OpenSSH的安装。
    • SSH已经安装在Linux和Mac OS X上。这是因为SSH是UNIX系统,并且因为Linux和OS X是从UNIX派生的。
  2. 启动SSH。 打开由Cygwin安装的终端程序,或者在OS X或Linux中打开终端。 SSH使用终端接口与其他计算机进行通信。 SSH没有图形界面,因此您将必须学习如何输入命令。
  3. 测试连接。 在深入研究安全密钥和移动文件之前,重要的是测试您的计算机以及要连接的系统上是否已正确配置SSH。输入以下命令,将username>替换为另一台计算机的用户名,并将remote>替换为另一台计算机或服务器的地址:
    • $ ssh用户名> @远程>
    • 建立连接后,系统将要求您输入密码。您将看不到光标移动或作为密码一部分输入的任何字符。
    • 如果此步骤失败,则说明您自己的计算机上没有正确配置SSH,或者另一台计算机不接受SSH连接。

第2部分,共3部分:学习基本命令

  1. 转到SSH Shell。 如果是第一次连接到另一台计算机,则应位于HOME目录中。要在此目录结构中导航,请使用cd命令:
    • cd ...您在树形结构中上移了1个目录。
    • cd目录名称>。转到指定的子目录。
    • cd / home /目录/路径/。从根目录(主目录)转到指定目录。
    • cd〜。返回HOME目录。
  2. 检查当前目录的内容。 要查看当前位置中的文件和文件夹,请使用命令ls:
    • ls。列出当前目录中的所有文件和文件夹。
    • ls –l。列出目录的内容以及其他信息,例如大小,权限和日期。
    • ls-a。列出所有内容,包括隐藏的文件和文件夹。
  3. 将文件从当前位置复制到远程计算机。 如果要将文件从您自己的计算机复制到远程计算机,请使用命令scp:
    • scp /localdirectory/example1.txt用户名> @remote>:path>会将example1.txt复制到远程计算机上的path> path。您可以将path>保留为空白,以将文件复制到另一台计算机的根目录。
    • scp用户名> @remote>:/home/example1.txt ./会将example1.txt从远程计算机的主目录移动到本地计算机上的当前目录。
  4. 通过外壳复制文件。 使用命令cp在相同目录或您选择的目录中复制文件:
    • cp example1.txt example2.txt将在同一位置以example2.txt为名称复制example1.txt。
    • cp example1.txt directory> /将在directory>指定的位置复制example1.txt。
  5. 移动和重命名文件。 如果要重命名文件,或者要移动文件而不复制文件,则可以运行命令mv:
    • mv example1.txt example2.txt会将example1.txt重命名为example2.txt。该文件未移动。
    • mv directory1 directory2会将directory1重命名为directory2。目录的内容将不会更改。
    • mv example1.txt directory1 /将example1.txt移动到directory1。
    • mv example1.txt directory1 / example2.txt会将example1.txt移动到directory1并将其重命名为example2.txt
  6. 删除文件和目录。 如果需要从所连接的计算机中删除某些内容,请使用rm命令代码:
    • rm example1.txt将创建文件example1.txt。
    • rm –I example1.txt将在要求您确认后删除文件example1.txt。
    • rm directory1 /将删除directory1及其内容。
  7. 更改文件的权限。 您可以使用chmod命令更改文件的读取和写入权限:
    • chmod u + w example1.txt将为用户(u)添加对该文件的读取(修改)权限。您还可以将g修饰符用于组权限,或将o命令用于全局权限(每个人)。
    • chmod g + r example1.txt将为一个组授予对该文件的读/读(访问)权限。
    • 您可以使用一长串权限来打开或阻止系统的某些部分。
  8. 了解其他常用的基本命令。 在shell界面中,您将经常使用一些更重要的命令。这些包括:
    • mkdir newdirectory创建一个名为newdirectory的新子目录。
    • pwd将显示当前目录位置。
    • 谁显示谁登录到系统。
    • pico newfile.txt或vi newfile.txt将创建一个新文件,并使用文件编辑器将其打开。每个系统都有各自的文件编辑器。最著名的是pico和vi。每个编辑器都需要一个不同的命令。
  9. 有关不同命令的详细信息。 如果不确定命令将执行什么操作,请使用man命令来了解有关在何处使用命令以及要使用哪些参数的更多信息:
    • man命令>显示有关该命令的信息。
    • man –k keyword>将在手册的所有页面中搜索指定的搜索词。

第3部分(共3部分):制作加密密钥

  1. 创建您的SSH密钥。 使用这些键,您可以连接到远程位置,因此您始终必须输入密码。这是一种更加安全的方法,因为不必每次都通过网络发送密码。
    • 使用$ mkdir .ssh命令在计算机上创建密钥文件夹。
    • 使用命令$ ssh-keygen –t rsa创建公用密钥和专用密钥。
    • 系统将询问您是否要为按键做一个识别短语。这是可选的。如果您不想输入识别短语,请按Enter。这将在.ssh目录中创建两个密钥:id_rsa和id_rsa.pub
    • 更改私钥的权限。要使私钥仅对您可读,请使用命令$ chmod 600 .ssh / id_rsa
  2. 将公钥放置在远程计算机上。 一旦创建了密钥,就可以将公共密钥放置在远程计算机上,以便无需密码即可进行连接。输入以下命令并替换先前标识的部件:
    • $ scp .ssh / id_rsa.pub用户名> @remote>:
    • 确保在命令末尾添加一个冒号(:)。
    • 文件传输开始之前,系统会要求您输入密码。
  3. 在远程计算机上安装公钥。 将密钥放置在远程计算机上后,需要对其进行安装才能使其正常工作。首先以与步骤3中相同的方式登录到远程计算机。
    • 在远程计算机上创建SSH文件夹(如果尚不存在):$ mkdir .ssh
    • 将您的密钥添加到授权密钥文件。如果此文件尚不存在,将创建它:$ cat id_rsa.pub .ssh / authorized_keys
    • 更改SSH文件夹的访问权限:$ chmod 700 .ssh
  4. 检查连接是否正常。 一旦将密钥安装在远程计算机上,您就应该能够连接,而不会提示您输入密码。输入以下密码以测试连接:$ ssh username> @remote>
    • 如果您在连接时未提示输入密码,则说明密钥已正确配置。