网上书城网站开发的结论与不足,个人博客,平台式网站,wordpress 判断登录ssh常用操作
SSH是一种安全协议#xff0c;ssh是该协议的客户端程序#xff0c;openssh-server则是该协议的服务端程序
常用系统都自带了ssh客户端程序#xff0c;服务端程序则可能要安装
密码远程登陆
前提#xff1a;服务器安装了openssh-server#xff0c;未安装时…ssh常用操作
SSH是一种安全协议ssh是该协议的客户端程序openssh-server则是该协议的服务端程序
常用系统都自带了ssh客户端程序服务端程序则可能要安装
密码远程登陆
前提服务器安装了openssh-server未安装时使用管理员权限安装sudo apt install openssh-server
检查ssh.service状态ubuntu使用systemd执行sudo systemctl status sshd
显示active则服务已启动输入q退出 未启动则执行启动命令sudo systemctl start sshd
远程登录命令ssh 服务器用户名服务器地址
默认登录22端口回车之后会要求输入密码密码正确就可以登陆使用服务器资源
密钥远程登陆
ssh支持使用密钥远程登陆使用密钥可以实现免密登录更安全也更方便
生成密钥对在本地执行ssh-keygen一路回车(不使用密码验证否则以后每次使用要输入密码)将在用户home目录下.ssh文件夹生成rsa密钥对ssh支持多种算法的密钥对rsa是最常用的一种其中id_rsa为私钥自己妥善保管不能共享出去id_rsa.pub为公钥共享给服务器完成密钥验证 ssh使用密钥对ssh远程登录前将公钥内容拷贝到服务器最快捷的方式是使用ssh-copy-id 命令使用方式为ssh-copy-id 服务器用户名服务器地址 第一次执行该命令会弹出对话框输入yes后回车输入服务器用户密码回车 该命令会将默认的公钥内容现在是id_rsa.pub拷贝到服务器$HOME/.ssh/authorized_keys 文件每个公钥在这个文件占一行
如果本地有多个公钥需要指定使用特定公钥连接服务器时使用-i选项例如
ssh-copy-id -i ~/.ssh/指定的公钥文件 服务器用户名服务器地址
注意Windows默认不带ssh-copy-id 命令Windows版gitbash自带了该命令可以用gitbash执行该命令如果没有gitbash手动将id_rsa.pub 文件的内容拷贝到服务器的$HOME/.ssh/authorized_keys 文件中效果也是一样的不要拷贝多余的字符
完成了以上步骤连接服务器时就可以实现免密码登录了登录方式还是
ssh 服务器用户名服务器地址
此时会发现直接能登录上服务器而不需要输入密码了·
ssh支持使用配置文件使用配置文件在配置了密钥的情况下相当于给服务起了别名在本地.ssh 目录下新建config文件最简单的内容格式如下
Host 服务器别名HostName 服务器地址User 服务器用户名IdentityFile 本地私钥路径例如config文件为
Host uHostName 192.168.6.10User sodaIdentityFile ~/.ssh/id_rsa文件保存后就可以直接在本地执行ssh u 连上服务器简化了登录流程而不用每次查看服务器ip输入密码了
git仓库使用公钥
在git仓库如GitHub克隆代码时如果使用使用SSH协议会要求先添加ssh公钥到服务器 按照GitHub的提示点击该链接添加公钥将本地公钥内容复制拷贝到GitHub服务器Tile填一个有意义的标记可以随便填最后点击Add SSH Key 添加完成后本地就可以免密通过git clone该代码仓库了 备注GitHub、GitLab、Gitee等等这些托管平台操作逻辑都差不多不再赘述
总结SSH密钥操作就是3步 生成密钥对 把密钥对的公钥内容拷贝到服务器 本地使用ssh相关操作