一、引言
Linux大多应用于服务器,而服务器不可能像PC一样躺在办公室里,它们是放在IDC机房的,所以我们平时登录Linux系统都是通过远程登录的。Linux系统中是通过ssh服务实现的远程登录功能。默认ssh服务开启了 22 端口,而且当我们安装完系统时,这个服务已经安装,并且是开机启动的。所以不需要我们额外配置什么就能直接远程登录linux系统。Ssh服务的配置文件为/etc/ssh/sshd_config,你可以修改这个配置文件来实现你想要的ssh服务。比如你可以更改启动端口为36000.
二、SSH连接CentOS服务器
操作步骤:
1.下载openssh for Winodws:
http://linux.linuxidc.com/index.php?folder=MjAxNMTq18rBzy8y1MIvMTTI1S9XaW5kb3dzIDfD/MHu0NDPwsq508NTU0jNqLn9w9jUv7XHwrxMaW51eA==
2.设置环境变量,编辑Path
3.cmd命令行,尝试 ssh 用户名@ip地址,即可登录
二、 与服务器进行文件传输
1.windows系统,下载winscp软件:
输入用户名密码后,登陆成功进入文件系统,图形化界面操作,直接对要传输的文件进行拖拽处理,文件就很顺利的传输到服务器上了:
2.mac系统,使用FileZilla软件
3.mac系统,使用scp命令
1️⃣mac上传文件到Linux服务器
scp 文件名 用户名@服务器ip:目标路径
如:scp /Users/test/testFile test@www.linuxidc.com:/test/
2️⃣mac上传文件夹到Linux服务器,与上传文件相比多加了-r
scp -r 文件夹目录 用户名@服务器ip:目标路径
如:scp -r /Users/test/testFolder test@www.linuxidc.com:/test/
3️⃣Linux服务器下载文件到mac
scp 用户名@服务器ip:文件路径 目标路径
如:scp test@www.linuxidc.com:/test/testFile /Users/test/
4️⃣Linux服务器下载文件夹到mac,与下载文件相比多加了-r
scp -r 用户名@服务器ip:文件路径 目标路径
如:scp -r test@www.linuxidc.com:/test/testFolder /Users/test/
三、 免密码登录
1.生成秘钥
ssh-keygen -t rsa -C "email@email.com"
秘钥会生成到openssh的安装目录下
2.将id_rsa.pub公钥文件传到服务器上
3.查看服务器是否存在这个文件夹以及这个文件(~/.ssh/authorized_keys ),没有就创建。
mkdir ~/.ssh
touch ~/.ssh/authorized_keys
4.追加刚才客户端上传的公钥文件至authorized_keys
我们先通过上节学到的上传文件到服务器,把id_rsa.pub文件上传到服务器,然后:
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys //追加
rm ~/id_rsa.pub //删除公钥
5.重启ssh服务
service sshd restart //重启ssh服务
6.退出服务器重新登陆就可以免密登录啦
四、简化登录
虽然现在可以免密码登录,但是每次登录还要打Ip地址,还是麻烦,所以我们实现简化登录。
方法如下:修改home/.ssh目录下的config文件 (如果没有.ssh或者config,就新建一个)
Host 100
HostName 192.168.119.129
Port 22
User root
保存后,输入:ssh 100 就可以登录服务器了
如果报错:
Bad owner or permissions on /home/.ssh/config
是因为config文件没有权限的问题。
五、ssh连接超时问题解决方案
-
修改server端的etc/ssh/sshd_config
ClientAliveInterval 60 #server每隔60秒发送一次请求给client,然后client响应,从而保持连接 ClientAliveCountMax 3 #server发出请求后,客户端没有响应得次数达到3,就自动断开连接,正常情况下,client不会不响应 -
修改client端的etc/ssh/ssh_config添加以下:(在没有权限改server配置的情形下)
ServerAliveInterval 60 #client每隔60秒发送一次请求给server,然后server响应,从而保持连接 ServerAliveCountMax 3 #client发出请求后,服务器端没有响应得次数达到3,就自动断开连接,正常情况下,server不会不响应 -
如果苹果系统出现:warning: setlocale: LC_CTYPE: cannot change locale (UTF-8): No such file or directory
sudo vi /etc/ssh/ssh_config //注释掉 # SendEnv LANG LC_*
本文介绍了如何在Windows上通过SSH连接和管理Linux CentOS服务器,包括文件传输、免密码登录和简化登录流程的方法,以及解决SSH连接超时问题的策略。用户可以通过winscp、FileZilla或scp命令进行文件交互,通过生成和配置SSH密钥实现免密码登录,并通过修改ssh配置文件优化登录体验。

1万+

被折叠的 条评论
为什么被折叠?



