mac 远程连接Linux服务器
mac 远程连接Linux服务器留意:这是本人写的第二篇文章,难免堕落,接待大家批评指正
前言
本文是为后续的项目:C++实现从0到Reactor服务器做铺垫,完成基础环境的搭建
一、服务器的选择
没区别,哪家便宜买哪家,我买的是阿里云的,留意阿里云有一个新用户 99/年的活动,还有个三个月试用活动
二、mac 终端连接服务器
1. 终端选择
你可以选择可视化终端如 VNC、SecureCRT 等。我用的是 iTerm2。原因见iTerm2的feature
当然,iTerm2 的强大之处在于它的自身特性与扩展性,须要一些配置,详细可见我的另一篇文章:配置iTerm2
2. 连接远程服务器
[*]原生 ssh
ssh [用户名]@[服务器IP或域名]
之后,你大概须要输入暗码来完成认证过程。如果你希望避免每次连接都输入暗码,你可以使用SSH密钥认证。为此,你须要天生一个SSH密钥对,并将公钥复制到服务器上的 ~/.ssh/authorized_keys 文件中
天生SSH密钥对的命令:
ssh-keygen -t rsa -b 4096
#-t即指定密钥的类型,密钥的类型有两种,一种是RSA,一种是DSA:
#RSA:RSA加密算法是一种非对称加密算法,是由三个麻省理工的牛人弄出来的,RSA是他们三个人姓的开头首字母组合。
#DSA:Digital Signature Algorithm (DSA)是Schnorr和ElGamal签名算法的变种。
#ssh-keygen默认使用rsa密钥,所以不加-t rsa也行,如果你想生成dsa密钥,就需要加参数-t dsa。
#-b 指定密钥长度。对于RSA密钥,最小要求768位,默认是2048位。命令中的4096指的是RSA密钥长度为4096位。
#DSA密钥必须恰好是1024位(FIPS 186-2 标准的要求)。
天生密钥后,将公钥内容(默认位于 ~/.ssh/id_rsa.pub)复制到服务器的 ~/.ssh/authorized_keys 文件中。可以使用 scp 命令复制公钥:
scp ~/.ssh/id_rsa.pub [用户名]@[服务器IP或域名]:~/.ssh/authorized_keys
这样就可以不输入暗码直接通过SSH连接到服务器
[*]利用 iterm2 profile
[*]创建脚本
在目录:/usr/local/bin 下创建脚本 sshlogin.sh
#!/usr/bin/expect
# lindex $argv 0 端口号
# :服务器用户名
# :服务器IP地址
# :服务器密码
set timeout 30
spawn ssh -p @
expect {
"(yes/no)?"
{send "yes\n";exp_continue}
"password:"
{send "\n"}
}
interact
留意要修改权限
chmod 777 sshlogin.sh
可以先测试一下
login.sh 22 root 110.110.110.110 '123456'
[*]配置 iTerm2
https://i-blog.csdnimg.cn/blog_migrate/7eaa841ca4016681dd2c04e535abbe6d.png
名字随便起,ssh端口默认22,具体可以查看服务器的 /etc/ssh/sshd_config 文件
然后,就可以这样一键登陆服务器了
https://i-blog.csdnimg.cn/blog_migrate/9fc84216de76081191923f4a881d9934.png
留意
用SSH登录到服务器的时候,由于默认的连接超时时间很短,经常须要断了后再连接,比较麻烦。可以通过设置linux ssh配置解决
[*]打开配置文件
vim /etc/ssh/sshd_config
[*]搜刮并修改(没有的话在末了添加):
ClientAliveInterval 60
ClientAliveCountMax 10
#ClientAliveInterval每隔多少秒给SSH客户端发送一次信号;
#ClientAliveCountMax超时重连的次数
[*]重启ssh服务
service sshd restart
三、文件传输
使用 trzsz 在当地和服务器之间进行文件传输,参考这两篇文章
Macos iterm2快速上传下载文件到远程服务器
Trzsz-iTerm2 安装文档
四、VSCode连接服务器
为了写代码更加方便,我们可以使用 VSCode 连接服务器,参考视频
VSCode配置
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]