虚拟主机域名注册-常见问题 → 其他问题 → 其他问题 | ||||
Linux中的SSH服务 在Linux中,SSH服务工作的方法叫做端到端加密,即一个用户拥有一个公钥,另一个用户持有一个私钥。当两个用户都输入正确的加密密钥时,就可以进行数据传输。SSH的功能是通过终端命令行界面实现的。大多数Apache服务器和Nginx服务器都使用SSH服务来获得远程访问,并为客户提供服务。在这篇文章中,嘉裕云将展示如何在几个Linux发行版中启用和使用SSH服务。 1、在Ubuntu Linux上安装SSH服务 SSH服务默认安装在所有Linux或类似Unix的操作系统中。您可以通过检查SSH版本来检查SSH服务是否已安装在Linux计算机中。如果您发现您的Ubuntu已安装SSH,则可以使用。如果无法在Ubuntu Linux中找到安全外壳服务,则可以通过apt-get install命令安装它。 $ ssh -V 在安装任何软件包之前,您应该更新和升级Ubuntu存储库。然后使用terminal shell命令安装Openssh Server软件包。下面提供了所有终端命令行。 $ sudo apt update $ sudo apt upgrade $ sudo apt install openssh-server 2、在Red Hat Linux和CentOS上启用SSH Red Hat Linux主要是为工作负载分配,云和Docker利用率以及演进目的而创建的。这是在Red Hat Linux上检查,安装,启动和启用SSH服务的终端命令行。像其他Linux发行版一样,Red Hat也使用端口22建立SSH服务。您可能还需要允许防火墙访问CentOS和Red Hat Linux上的SSH服务。 $ dnf install openssh-server $ yum install openssh-server $ systemctl start sshd $ systemctl status sshd $ systemctl enable sshd firewall-cmd --zone=public --permanent --add-service=ssh 3、在Arch Linux上启用SSH Arch Linux使用软件包管理器(packman)命令来安装任何应用程序。首先,您需要更新Arch Linux的系统存储库。然后,您可以通过packman命令在Arch Linux上安装OpenSSH服务。您可以使用systemctlterminal命令在Arch Linux上启动或停止任何SSH服务,检查SSH状态并禁用SSH服务。 $ sudo pacman -Sy $ sudo pacman -S openssh $ sudo systemctl status sshd $ sudo systemctl start sshd $ sudo systemctl status sshd $ sudo systemctl stop sshd $ sudo systemctl enable sshd $ sudo systemctl disable sshd $ sudo systemctl restart sshd 要在Arch Linux上配置SSH服务脚本,您需要从/etc/ssh/目录中打开配置文件。 $ man sshd_config / config files $ sudo nano /etc/ssh/sshd_config 4、在Fedora Linux上启用SSH 在Fedora Linux上安装SSH服务之前,让我们检查一下SSH服务是否已经安装在机器内部。我们将使用grep terminal命令检查Fedora Linux上SSH服务的可用性。Fedora Linux还使用端口22建立安全的Shell连接。 此外,我们可以使用systemctl终端外壳上的命令来检查SSH服务的总体状态。除此之外,您还可以使用下面提供的终端命令行在Fedora Linux上启动,停止,启用和禁用安全外壳。 $ rpm -qa | grep openssh-server $ sudo dnf install -y openssh-server; $ sudo systemctl status sshd $ sudo ss -lt $ sudo systemctl start sshd.service; $ sudo systemctl stop sshd.service; $ sudo systemctl disable sshd.service; 5、SSH服务的一些主要命令 到目前为止,我们已经完成了如何在Linux发行版上启用和配置SSH服务的过程。现在,我们将看到如何在Linux上运行SSH服务的一些基本命令。在这里,我将展示在Linux上建立安全服务,获得防火墙访问和隧道转发的主要规则。一旦了解了SSH服务的基本现象,就可以自行启用和配置其他SSH服务。 任务1:Linux上SSH服务的基本命令 在Linux机器中安装SSH服务后,您现在就可以检查系统状态,启用SSH服务并开始使用安全Shell系统。在这里,给出了一些基本的SSH命令。如果不需要,也可以关闭SSH系统。 $ sudo systemctl status ssh $ sudo service ssh status $ sudo systemctl enable ssh $ sudo systemctl start ssh $ sudo systemctl stop ssh 任务2:获取SSH服务的防火墙访问权限 在处理Internet传输协议时,需要获得防火墙访问权限。否则,防火墙可能会阻止并中断您的连接。在这里,我使用UFW防火墙系统在Linux上配置SSH服务。启用UFW防火墙后,您现在可以检查防火墙状态。防火墙系统将监视设备的所有入站和出站网络。 $ sudo ufw allow ssh $ sudo ufw enable $ sudo ufw status 任务3:在Linux上通过SSH服务连接到特定IP 如果将静态IP地址用于安全外壳连接,则可以为特定网络和端口设置规则。对于SSH服务,默认端口为22。您可以根据需要更改端口。我们将运行vvv命令以针对特定IP地址检查并设置SSH协议。就我而言,我正在尝试连接localhost网络。那些不知道如何在Linux中获得本地网络的人可以看到如何在Linux上安装Apache服务器的过程。 $ vvv-ssh $ ssh -vvv localhost 让我们知道您的用户名和静态IP地址,现在您可以建立从Linux机器到另一台设备的安全Shell网络。如果您不知道用户名,则可以遵循以下给出的终端命令。 $ whoami 要连接到您的本地主机地址,请在Linux终端外壳上使用这些终端命令行。我已经演示了几种使用特定用户名和IP地址访问SSH服务的方法。 $ ssh $ ssh username@ip_address $ ssh UbuntuPIT@server-ip $ sss jahid@localhost 要找到您的IP地址,您可以使用基本的net-tool命令来获取Internet协议详细信息。现在,我假设您同时知道您的IP地址和用户名。这是连接到特定IP地址的方法。我可能会提到,您也可以通过Linux上的SSH服务连接到公共IP地址。 $ ip a $ ifconfig $ ssh UbuntuPIT@192.168.0.1 $ ssh UbuntuPIT@public_ip_address 任务4:在Linux上配置端口转发 我们已经知道Internet协议可以使用分配的IP地址和端口号。术语“端口转发或隧道”是通过隐藏和保护您的数字足迹的隧道绕过数据包的方法。当您遇到一些防火墙保护或到达目标服务器的任何限制时,将应用端口转发方法。 但是,在开始隧道传输之前,请确保有足够的开放端口可用于转发端口。端口转发有多种类型,例如本地转发,虚拟转发和动态端口转发。 在这里,我将通过Linux上的SSH服务描述本地端口转发,动态端口转发和远程端口转发系统。要启用端口转发,我们需要检查SSH服务的配置文件。我们可以在root/etc/ssh目录下找到SSH配置文件。 我们可以直接通过Nano编辑器打开配置脚本。这里,最好将PermitTunnel的值改为yes,GatewayPorts的值改为yes。然后保存脚本文件。配置好SSH脚本后,必须要重启Linux机器上的SSH服务。 $ sudo nano /etc/ssh/sshd_config $ nano ~/.ssh/config $ vi $HOME/.ssh/config $ sudo vim /etc/ssh/sshd_config GatewayPorts yes $ sudo systemctl restart sshd $ sudo service sshd restart 现在,让您通过SSH隧道服务将IP地址从本地Linux计算机转发到服务器。您需要做的就是,打开终端外壳并键入ssh,然后键入your username@destination_address。 $ ssh admin@destination_address.com 对于远程端口转发,您可以在Linux中使用与SSH服务相同的过程。但是,如果要在后台执行此过程,则必须-f在服务器地址之前添加-N语法。您还可以通过Linux中的SSH服务设置动态和本地端口转发。 $ ssh -f -N UbuntuPIT@server1.example.com -R 5000:localhost:3000 $ ssh -f -N -D 1080 admin@server1.example.com $ ssh -L 8080:www.ubuntupit.com:80 jahid $ ssh -R 5900:localhost:5900 jahid 要允许端口映射应用程序使用特定软件,可以在Linux计算机中使用SSH服务。在这里,我将端口15169用于Firefox。然后,您可能还需要配置Firefox网络。 $ ssh -X jahid $ firefox & $ ssh -fTXC jahid firefox $ ssh -C -D 15169 jahid 任务5:启用和授权SSH系统 在Linux中,可以使用该systemctl命令来启动,停止,启用,禁用和重新启动SSH服务。启用SSH服务后,您现在可以检查将用于建立安全Shell连接的端口。我们可以从SSH配置脚本文件中检查端口号。SSH配置文件位于/etc/ssh/目录中。我们可以使用Nano脚本编辑器直接打开配置文件。 安全外壳网络Ubuntu $ sudo systemctl stop ssh $ sudo systemctl start ssh $ sudo systemctl enable ssh $ sudo service ssh restart 打开脚本后,您将能够看到AddressFamily,端口号,侦听IP地址和其他日志文件。如果在配置脚本中发现问题,也可以重置配置文件。 $ sudo nano /etc/ssh/sshd_config $ /etc/init.d/sshd restart $ sudo nano /etc/ssh/sshd_config $ /etc/init.d/sshd restart $ vi /etc/ssh/sshd_config 您也可以尝试其他方法在Linux上启用和配置SSH服务。此方法将要求用户创建一个目录来配置和存储数据。您可以为Linux上的每个用户创建特定的SSH服务。我将使用touch命令来配置脚本文件。在这里,我使用的是主机名,请注意使用您的主机名。然后重新启动SSH服务。 $ /etc/ssh/ssh_config $ ~/.ssh/config or $HOME/.ssh/config $ mkdir -p ~/.ssh $ chmod 0700 ~/.ssh $ touch ~/.ssh/config $ chmod 0700 ~/.ssh/config ~/.ssh/config $ ssh UbuntuPIT $ /etc/init.d/sshd restart 管理安全Shell服务的其他帮助 有时,维持安全的双工网络连接可能有些棘手。作为Linux网络管理员,您必须知道如何处理安全Shell操作的意外问题。您需要知道正在运行的SSH服务突然断开连接时该怎么办。您还需要知道如何在客户端设备上安装SSH服务。 $ sudo apt-get remove openssh-client openssh-server $ sudo apt-get install openssh-client openssh-server 要获得有关Linux上SSH服务的更多帮助,您可以使用终端外壳程序的默认帮助功能。这是一些与SSH服务相关的基本终端命令,在Linux上验证SSH和SSHD时,您可能会发现它们非常有用和方便。 $ ssh –help $ which ssh $ which sshd $ whereis ssh $ ssh -v localhost 安全外壳服务是远程连接两个设备的最有效,功能最强大的应用程序。但是,某些基于图形用户界面的远程访问应用程序也可用于Linux。但是,从长远来看,SSH服务对于Linux而言是更好,更可靠的方式。在本文中,我描述了在Linux中启用SSH服务的所有可能方式。
|
||||
>> 相关文章 | ||||