实现外网电脑ssh远程访问内网Linux服务器的全面操作教程,不用公网ip端口映射工具通用方案

个人电脑一般是windows或mac,服务器不少采用linux系统,在信息化的今天,远程访问服务器变得越来越普遍。SSH(Secure Shell)是一种网络协议,用于计算机之间的加密登录和其他安全网络服务。通过 SSH,我们可以从个人电脑或设备访问内网的 Linux 服务器,即使在不直接暴露服务器的情况下。本文将详细介绍如何实现在没有公网IP的情况下,让外网 SSH 远程访问内网 Linux 服务器的全过程,包括本地ssh服务配置和nat123端口映射设置等。

要在外地通过网络SSH远程访问内网中的Linux服务器,你需要通过一种称为“内网穿透”或“端口转发”的方法来实现。由于内网服务器环境在没有公网IP的情况下,通常无法直接从外部网络访问,在本地SSH正常运行的情况下,还需要借助一些像nat123内外网映射的工具或服务来建立连接。

一、SSH 服务安装与配置

在实现外网 SSH 远程访问内网 Linux 服务器之前,必须确保 SSH 服务正确安装在目标 Linux 服务器上,并进行适当的配置。

1、检查 SSH 服务器安装状态

首先,需要检查 Linux 服务器上是否已经安装了 SSH 服务器。可以使用以下命令查看:

ps -e | grep ssh

如果看到 sshd 进程,说明 SSH 服务器已经安装。

2、安装 SSH 服务端

如果服务器上没有安装 SSH 服务,需要根据所使用的 Linux 发行版进行安装。

对于基于 Debian 的系统(如 Ubuntu),可以使用以下命令安装 OpenSSH 服务器:

sudo apt-get update
sudo apt-get install openssh-server

对于基于 Red Hat 的系统(如 CentOS),可以使用以下命令安装:

sudo yum install openssh-server

3 、配置 SSH 服务

SSH 服务器的配置文件通常位于 /etc/ssh/sshd_config。在进行任何修改之前,建议备份原始配置文件:

sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config_backup

然后,使用文本编辑器打开配置文件进行编辑:

sudo nano /etc/ssh/sshd_config

以下是一些常见的配置选项:

PermitRootLogin: 是否允许 root 用户登录。
PasswordAuthentication: 是否允许密码认证。
Port: SSH 服务监听的端口号,默认为 22。如果更改了端口,需要确保防火墙规则也相应更新。
AllowUsers: 指定可以登录的用户列表。
AllowGroups: 指定可以登录的用户组列表。
根据安全需求和网络环境,适当修改这些设置。修改完成后,保存并关闭文件。

4 、重启 SSH 服务

配置更改后,需要重启 SSH 服务以使更改生效:

sudo service ssh restart

或者,如果使用的是 systemd:

sudo systemctl restart ssh

5 、验证 SSH 服务状态

最后,验证 SSH 服务是否正在运行:

sudo systemctl status ssh

或者:

ps -e | grep ssh

确保 sshd 进程正在运行

二、确认防火墙设置

确保Linux服务器的防火墙允许 SSH 服务的端口(默认为 22 端口)通行。对于 ufw(Uncomplicated Firewall),可以使用以下命令:

sudo ufw allow ssh

或者指定端口:

sudo ufw allow 22/tcp

对于 iptables,需要添加相应的规则来允许 SSH 端口:

sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT

三、SSH 客户端配置

在个人电脑访问端计算机需要配置 SSH 客户端以便能够建立远程连接。大多数 Linux 系统默认已经安装了 OpenSSH 客户端。如果客户端计算机上没有安装 SSH 客户端,需要根据所使用的操作系统进行安装。

对于大多数 Linux 发行版,可以使用包管理器安装 OpenSSH 客户端:

sudo apt-get install openssh-client  # Debian/Ubuntu
sudo yum install openssh-clients     # Red Hat/CentOS

访问端是Windows 用户,可以安装 PuTTY 或使用 Windows 10 自带的 OpenSSH 客户端,这样有界面化操作执行命令和数据文件上传下载都很方便。

四、同局域网内电脑ssh访问连接到Linux服务器

在同内网电脑上有安装SSH客户端后,即可以通过内网IP连接Linux主机了。使用以下命令连接到 SSH 服务器:

ssh username@server_ip   #用目标内网IP

如果你使用了配置文件,可以直接使用配置的别名:

ssh myserver

如果一切配置正确,你在同内网电脑上使用ssh,是能够通过内网IP成功登录到同内网的 Linux 服务器。

五、将本地ssh服务开放外网访问

(一)有公网IP时:如果内网Linux服务器位于自己公网IP路由器后面,即本地有公网IP权限使用的,只需要登录路由管理后台,找到虚拟服务器并添加配置端口转发规则,将内网的 SSH 端口(默认是22)映射到公网IP端口上。这样就可以从局域网其他电脑上通过 SSH 客户端并用对应本地公网IP访问这个 Linux 服务器了。

(二)无公网IP时:借助nat123内外网映射工具,直接将本地SSH内网IP端口转换成自定义域名端口形式,实现外地电脑的连接访问到本地Linux服务器使用。操作步骤参考:

1、下载安装和注册登录

下载安装:在目标Linux主机上下载安装nat123的Linux版本客户端,或直接通过命令式安装;也可以在同局域网内另台电脑或手机平板设备上下载安装nat123客户端,如在同内网的win电脑上安装windows版本客户端。

注册登录:在对应官网注册链接页面,自定义名称密码邮箱方式获取自己的nat123帐号,然后登录nat123客户端运行。

注意:如是多个应用多个网络环境下的,需要分别注册使用不同的nat123帐号区分。

2、添加nat123映射设置

登录nat123客户端,对于win客户端的可以直接主界面上“添加映射”点击出来新的映射编辑页面设置,对于Linux客户端的则登录官网管理后台进行添加修改映射等操作。在添加映射页面结合本地实际应用场景填写参数详解参考:

应用名称:自定义,如“公司ssh”、“Linux”等;简单用于区分不同映射数和在后续交流反馈时标志显示用途;

映射线路:有开放的,有体验的,有按年使用的多线路服务,这就看自己帐号权限来选择了;

映射类型:像普通tcp协议的ssh,一般选择使用“非网站”类型,让外地直接访问;

内网地址:我本机ssh服务的填写127.0.0.1,如是内网其他机上应用服务则对应填写对应的固定内网IP或计算机名,并确保这个内网地址在nat123客户端本地能ping通;

内网端口:默认SSH服务使用端口是22,如有修改则以实际填写;

外网端口:默认提供生成显示一个外网端口号,一般不用改,也可修改其他未占用的;

外网域名:默认生成一个随机二级域名,一般为了方便记住使用可自定义对应二级字符;如有自已域名,则可以修改使用自己注册的域名来作为公网地址用;

确保保存即生效。如是win客户端的可在主界面上见多了一个映射记录图标,同时有显示对应内外网地址信息,鼠标停留图标上面会有一些状态检测提示参考。

3、外网访问ssh

在外地电脑需要使用ssh客户端访问时,添加连接并输入对应nat123映射自定义好的域名和外网端口号,和对应目标主机帐号密码,即可连接访问内网的Linux服务器操作管理了。

通过本文的详细指导,我们已经了解了如何配置SSH服务,并在无公网IP时通过nat123映射自定义公网地址方式,实现外网 SSH 远程访问内网 Linux 服务器的全过程。从准备工作、网络环境配置,到 SSH 服务器的安装与配置,再到 SSH 客户端的配置与连接,每一步都至关重要。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值