目录

SSH server

Software:Openssh-server

Service:

1.ssh(Security Shell)

2.sftp-server(Security File Transfer Protocol)

Configure directory:/etc/ssh

SSH服务属性

ssh(Secure Shell)协议:加密远程传输协议

ServerEnd port: 22

ClientEnd port:> 1024

配置文件:/etc/ssh/sshd_config(Server)、/etc/ssh/ssh_config(Client)

ssh Server(被连接端)发送Server公钥 —-> ssh Client(发起连接):~/.ssh/known_hosts

SSH协议执行原理

Client将拥有的公钥发送给Server并于Server的私钥进行比对。

若一致:Server用Client公钥加密一个将来传输的密码,再将密码发给Client,Clinet用自己的私钥来解密得到传输密码,Client用传输密码对数据加密。

若不一致:则拒绝访问。

SSH连接方式

1.密码验证

2.密钥验证,实现步骤:

(1)Client(连接段)生成密钥对(公钥/私钥)

ssh-keygen #Create KeyPair in /UserName/.ssh

(2)将公钥发送给Server(被连接端)

ssh-copy-id -i ~/.ssh/id_rsa.pub userName@[hostname|ip]

ssh Commands

ssh userName@[hostname|IP]   #Remote connect
ssh -X userName@[hostname|IP] #Support GUI
ssh userName@[hostname|IP] [commands] #[commands]:Execute following commands.

使用-X选项,需要在服务器端的/etc/ssh/ssh_config文件中设置 ForwardX11 yes 或者 X11Forwad yes,以启用 X11 Forwarding。

scp commands

scp:Security copy

scp -r [file|dir] userName@hostname:dirUrl #Copy local [file|directory] into remote host
scp -r userName@hostname:dirUrl [file|dir] #Copy remote [file|firectory] into local host

sftp commands

sftp userName@[hostname|IP]  #Entry security ftp via protocol of ssh

连接Sftp后可以使用下面指令进行上传和下载文件

get file #dowmload the file

put file #upload the file

SSH在生产环境中的使用

一般不允许远程连接到root

在SSH Server配置:

vim /etc/ssh/sshd_config

PermitRootLogin  no

重启SSH服务

systemctl restart sshd.service

拒绝别人用密码登陆

在SSH Server配置:

vim /etc/ssh/sshd_config

PasswordAuthentication  no

重启SSH服务

systemctl restart sshd.service

系统间备份文件rsync

基于SSH协议的同步备份指令rsync

指令格式

rsync -option fileName userName@[hostname|ip]:/directory

Example:

rsync -a /etc/ 192.168.0.2:/tmp

注意

如果是/etc/ ,复制过去的是目录下面的内容

如果是/etc,复制过去的是目录和目录下面的内容

选项

-a 归档

-v 显示过程

-r 子目录

-l 同步链接文件

-p 保留权限

-t 保留时间戳

-g 保留属组

-o 保留属主

Linux_OpenSSH远程连接的更多相关文章

  1. MSSQL远程连接

    背景:部署公司自己研发的ERP系统. 1)系统架构: .NET+MSSQL. 2)服务器系统:Windows Server 2008 R2 Enterprise 3)数据库:MSSQL Server ...

  2. 配置mysql允许远程连接的方法

    默认情况下,mysql只允许本地登录,如果要开启远程连接,则需要修改/etc/mysql/my.conf文件. 一.修改/etc/mysql/my.conf找到bind-address = 127.0 ...

  3. Windows操作系统下远程连接MySQL数据库

    用Eclipse做一个后台项目,但是数据库不想放在本地电脑,于是买了一个腾讯云服务器(学生有优惠,挺便宜的),装上MySQL数据库,但是测试连接的时候,发现总是连接不是上,但是本地数据库可以连接,于是 ...

  4. Windows远程连接Linux

    目录 xrdp方式 vnc方式 xrdp方式 ----------------------------------------------------------------------------- ...

  5. MYSQL远程登录权限设置 ,可以让Navicat远程连接服务器的数据库

    Mysql默认关闭远程登录权限,如下操作允许用户在任意地点登录: 1. 进入mysql,GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY ...

  6. SQL Server 2008 允许远程连接的配置

    如果无法通过IP地址远程连接你的SQL Server 2008服务器,可以参考下面的内容进行设置.在进行下述设置之前,应该确保你的网络已经安装设置完毕,服务器已经正常连接到网络中. 1.单击Windo ...

  7. 【先定一个小目标】怎么解决mysql不允许远程连接的错误

    最近使用Navicat for MySQl访问远程mysql数据库,出现报错,显示“1130 - Host'xxx.xxx.xxx.xxx' is not allowed to connect to ...

  8. access基本操作(c#操作,远程连接,执行sql,加密,备份)

    前言 最近项目用到了access,是的就是access,工作在桌面型的小数据库应用还是会用到的,如果你确定永远不会遇到access的操作,请忽略此篇文章 1.vs配置access 既然是数据库,就少不 ...

  9. mongodb安装、启动、远程连接

    1.现在mongodb安装包 mongodb-linux-x86_64-3.0.6.tgz 2.解压缩安装包 tar zxvf  mongodb-linux-x86_64-3.0.6.tgz /opt ...

随机推荐

  1. 一、bif

    缩进是python的灵魂,缩进可以使python的代码整洁,有层次. python是脚本语言,就是为了简单方便以辅助科学运算,因此python有许多bif,build in function 全部都是 ...

  2. xcode中进行git代码管理

    http://www.cocoachina.com/ios/20140524/8536.html

  3. Linux往log中写日志

    void writelog(const char* log) { time_t tDate; struct tm* eventTime; time(&tDate);//得到系统当前时间 //将 ...

  4. Web Service Demo

    有了Web Service的一些基础,具体如何实现,通过亲自写一个Demo来理解一下. 1.创建一个空的Web项目 2.在Web项目下ADD一个Web Service 3.在Web service中写 ...

  5. DevExpress WinForms v19.1新版亮点:Tree List等控件性能增强

    行业领先的.NET界面控件DevExpress v19.1终于正式发布,本站将以连载的形式介绍各版本新增内容.在本系列文章中将为大家介绍DevExpress WinForms v19.1中新增的一些控 ...

  6. SQL语句 数据类型

    6.1 Data Type 查看数据所占空间的两个函数: -- 查看所占字节数 select length('你好,世界') from dual; -- 查看所占字符数,即多少个字母,多少个汉字 se ...

  7. linux 上搭建sftp服务

    原文链接:https://www.cnblogs.com/yanduanduan/p/9046723.html sftp和ftp的区别 FTP是一种文件传输协议,一般是为了方便数据共享的.包括一个FT ...

  8. UITextField实时监听输入文本的变化

    [textField addTarget:self action:@selector(textFieldChanged:) forControlEvents:UIControlEventEditing ...

  9. Python条件控制与循环

    条件控制语句:if 循环语句:while.for 其他语句:continue.break.pass 1.if语句 # ================================ a = 1 if ...

  10. ubuntu 7z解压

    安装方法:     sudo apt-get install p7zip 解压文件:     7z x manager.7z -r -o /home/xx 解释如下: x 代表解压缩文件,并且是按原始 ...