返回介绍

远程终端 SSH

发布于 2024-09-08 18:29:26 字数 4513 浏览 0 评论 0 收藏 0

Finalshell(开源)

Finalshell 是非常好用的 Java 开发的跨 OS 的远程连接图形客户端,包括 FTP 功能。需要较多资源。如果是在 linux 环境,其实可以直接用 ssh 无密连接。

# 一键安装脚本
$ wget www.hostbuf.com/downloads/finalshell_install_linux.sh;chmod +x finalshell_install_linux.sh;./finalshell_install_linux.sh;

* 安装路径 /usr/lib/FinalShell
* /配置文件路径 /home/$USER/.finalshell/
* 卸载删除安装目录 rm -rf /usr/lib/FinalShell/

Finalshell 支持代理服务器+隧道。常用于生产环境运营。

  • 代理服务器:协议有 SOCKET/HTTP,目标机连接代理服务器的 IP:PORT(相当于先登陆代理服务器)。

  • 隧道:本机隧道相当于创建一个新端口映射到本机的 SSH 端口,相当于一个 SSH 通道。

  • 转发过程:本机 <--> 堡垒机(22->转发端口,相对于本机,转发端口就是隧道端口;相对于目标机,转发端口就是代理服务端口) <--> 目标机

用途 1 :本机登陆受限制的目标机。SSH 通道,二层 SSH 连接,通过代理服务器+隧道技术,通过堡垒机登陆到目标机。要求先登陆堡垒机(让隧道临时建立,相当于堡垒机创建转发端口),才能再开连接登陆目标机。

  • 堡垒机:一台,不需要代理服务器。建立连接后,设置本机隧道(参数:SOCKET5, 监听端口如 25000),如下图所示,

image-20210918171413230

  • 目标机:多台,使用代理服务器(参数是堡垒机的隧道参数)。可以不用创建隧道。

image-20210918171740047

用途 2 : 本机访问受限制目标机服务端口。在用途 1 基础上,目标机也创建隧道,则可将目标机的服务端口映射到本机端口。

SecureCRT (商业)

终端修改:以下修改进入路径 Options -> Session Options -> Terminal ->

  • 修改终端编码(显示中文正常): Appearance -> Character Encoding (下拉选择: utf-8/gbk)
  • 修改终端背景: Emulation -> (勾选) ANSI Color
  • 防止 CRT 超时掉线: Anti-idle -> (勾选) Send protocol NO-OP -> 60(单位秒)

1) 防止 CRT 超时掉线

SecureCRT 远程登录连接 Linux/Unix 服务器时,一段时间不用会自动断开连接,需要重新连接,比较麻烦。

  1. 服务器端配置
  • 修改 /etc/profile 或 ~/.bash_profile
vim /etc/profile 或 vim ~/.bash_profile
TMOUT=1800 // 添加到 /etc/profile 文件最后一行,单位为秒,1800 秒即为 30 分钟

source /etc/profile // 使修改生效

注意: TMOUT 设置的服务器超时时间,一定要大于 SecureCRT 设置反空闲时间,不然还没反超时就自动断开了

  • 修改 /etc/ssh/sshd_config
vim /etc/ssh/sshd_config

ClientAliveInterval 180 // 去掉#,设置为 180 秒,每隔 3 分钟服务器端向客户端请求一次消息的时间间隔;默认 0,表示不发送
ClientAliveCountMax 3 // 去掉#,表示服务器向客户端发送请求没有响应的次数就自动断开;正常情况下,客户端不会不响应

service sshd restart 或 service sshd reload // 使修改生效

注意:设置以后,SecureCRT 一定要退出远程连接,重新登陆一次。

  1. 客户端配置
  • 会话设置 NO-OP

Options -> Session Options -> Terminal -> Anti-idle -> (勾选) Send protocol NO-OP -> 60(单位秒,1 分钟发送一次请求)

  • 全局设置

Options -> Global Options -> General -> Default Session -> Edit Default Settings -> Terminal -> Anti-idle -> (勾选) Send protocol NO-OP -> 60

  1. 验证生效

SecureCRT 没有操作时,每隔 60 秒,自动发送一个换行符(\n) 给服务器端,并在 SecureCRT 客户端执行换行操作

这样客户端和服务器端有操作连接,保证了远程连接的保持,不会掉线。

类似设置:putty 工具

putty -> Connection -> Seconds between keepalives ( 0 to turn off ), 默认为 0, 改为 300.

FTP 服务端-vsftpd

vsftpd 可以提供强大的文件上传下载,权限控制。

linux 下安装

$ yum install vsftpd

# 启动,重启服务
$ service vsftpd start
$ service vsftpd restart

$ vi /etc/vsftpd.conf

// 缺省禁止匿名用户,可用系统用户,不可上传,上传后 umask 缺省为 500, anonymous_enable=NO

local_enable=YES
#write_enable=YES
#local_umask=022

// 匿名相关项:上传/下载
# anonymous upload, add by Denny, Sep,19,2010
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES

# anonymous download, add by Denny, Sep,19,2010
download_enable=YES
dirlist_enable=YES
anon_world_readable_only=YES

// 500 OOPS
llow_writeable_chroot=YES

FTP 命令行调试

ftp> open localhost 22
Connected to localhost.
SSH-2.0-OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.8
ftp> lcd
Local directory now /home/denny/project/gameprice
ftp> close
Not connected.
ftp> bye

常见错误

1)vsftp:425 failed to establish connection

FTP 客户端-Filezilla

FileZilla 是开源免费的 FTP 客户端。支持多种协议。WinSCP 类似 FileZilla。

  • FTP
  • SFTP(推荐使用): sshd 默认的传输协议,可以使用密码或者密钥文件。
  • storj: 去中心的云化存储

img

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文