OpenSSH服务及其相关应用

OpenSSH 是 SSH (Secure SHell) 协议的免费开源实现。SSH协议族可以用来进行远程控制, 或在计算机之间传送文件。而实现此功能的传统方式,如telnet(终端仿真协议)、 rcp ftp、 rlogin、rsh都是极为不安全的,并且会使用明文传送密码。OpenSSH提供了服务端后台程序和客户端工具,用来加密远程控件和文件传输过程中的数据,并由此来代替原来的类似服务。

OpenSSH是使用SSH透过计算机网络加密通讯的实现。它是取代由SSH Communications Security所提供的商用版本的开放源代码方案。目前OpenSSH是OpenBSD的子计划。

OpenSSH常常被误认以为与OpenSSL有关联,但实际上这两个计划的有不同的目的,不同的发展团队,名称相近只是因为两者有同样的软件发展目标──提供开放源代码的加密通讯软件。

ssh主要有两个版本V1(基本不使用),V2

客户端工具:

linux:ssh

windows:putty,securecrt,sshsecureshellclient,xmanager

服务器端工具:

linux:sshd

认证:

(1)基于口令认证

(2)基于秘钥认证

安装包:rpm -qa | grep ssh

查看ssh版本:ssh -version

相关文件:

配置文件:

客户端:/etc/ssh/ssh_config

服务器端:/etc/ssh/sshd_config

秘钥:

V2版本的秘钥:

rsa:ssh_host_rsa_key,ssh_host_rsa_key.pub

dsa:ssh_host_dsa_key,ssh_host_dsa_key.pub

V1版本的秘钥:

ssh_host_key,ssh_host_key.pub

服务器配置文件说明:

port 22 端口

AddressFamily any  指定 sshd(8) 应当使用哪种地址族。取值范围是:"any"(默认)、"inet"(仅IPv4)、"inet6"(仅IPv6)。

Protocol 2 默认使用协议版本

KeyRegenerationInterval 1h 秘钥多久更换一次

ServerKeyBits 1024 秘钥长度

LoginGraceTime 2m 登录超时时长

PermitRootLogin yes 是否允许root直接登录(建议关闭,使用普通用户登录后su到root)

MaxAuthTries 6 试错登录次数

PrintLastLog yes 打印上次登录信息(尽量不要暴露这些信息)

Subsystem       sftp    /usr/libexec/openssh/sftp-server 关于sftp的设置

sftp是基于ssh,ftps基于ssl

ssh使用技巧:

ssh -l 用户名 远程主机名 [‘command‘] 不登录远程主机,但返回命令执行结果

ssh 用户名@远程主机名

-X:enablex11 forwarding

-Y

~/.ssh/known_hosts保存登录信息,其权限为644

实验:基于秘钥的认证

1、生成一对秘钥(ssh-keygen)

ssh-keygen -t 指定算法 -f 保存文件位置及名称(默认在/home/用户/.ssh/id_rsa) -N 指定密码

2、将公钥传输至服务器端某用户家目录下的.ssh/authorized_keys文件中

(1)使用工具ssh-copy-id

用法:ssh-copy-id–i /path/to/pubkey 用户名@主机名

(2)scp,然后追加到authorized_keys

3、测试登录

总结:

1、密码要经常换

2、使用非默认端口

3、限制登录地址

4、禁止管理员登录

5、仅开放有限用户

6、使用基于秘钥的认证

7、不要使用v1版本

scp和sftp用法:

1、scp:基于ssh的远程复制命令,可以实现在主机之间传输数据

命令格式:scp [options]src dest

远程主机

用户名@主机名:/path/to/somefile

options常用选项有以下几种:

-r:  递归复制,复制目录时使用

-p:保持源文件的元数据信息;主要是mode和timestamp

-q:静默模式

-P  PORT: 指定远程服务器的端口

2、sftp:

sftp   [[email protected]]HOST

小技巧:

如果想基于秘钥连接linux,可以按下图进行操作:

1、

2、

3、

4、

5、

6、

7、cat id_rsa_1024.pub >> .ssh/authorized_keys

8、

仅为个人学习整理,如有错漏,大神勿喷~~~

时间: 2024-08-03 15:55:42

OpenSSH服务及其相关应用的相关文章

OpenSSH服务及其相关_学习笔记

OpenSSH服务及其相关: Telnet    Tcp/23 缺点: 1.认证是明文 2.数据传输明文 ssh:Secure Shell  Tcp/22 Openssh(开源) 协议:sshv1(缺陷,废弃).sshv2 客户端: linux:ssh windows:putty.SecureCRT.SSHSecureShellClient.Xmanager ssh_config        配置文件 服务端: sshd openssh(ssh,sshd) sshd_config       

RH124-09 OpenSSH服务配置与安全

第九章 OpenSSH服务配置与安全 9.1 通过ssh访问远程命令 OpenSSH提供一个安全的远程shell,用于管理远程Linux.unix系统. OpenSSH使用非对称加密手段加密保护通信数据. $ ssh remotehost $ ssh [email protected] 或 ssh -l remoteuser remotehost $ ssh [email protected] remote-command $ w -f 相关文件: 客户端会首次登陆远程机器的时候,会把远程机器的

Centos7.X自带的防火墙和服务的相关的配置

centos7.0版本之后相对于以前的版本更改行还是很大的,原先在6.5版本之前命令和配置文件大致都差不多,自7.0版本之后一些功能都有较大的改变,接下来会从防火墙和服务的相关配置来进行剖析. (一)防火墙firewall的相关介绍及配置 CentOS 7中防火墙是一个非常的强大的功能,在CentOS 6.5中在iptables防火墙中进行了升级了.(he dynamic firewall daemon firewalld provides a dynamically managed firew

openssh服务

openssh 服务 注:使用两台主机,一台作测试,一台作服务器 服务端: 1.安装 openssh-server 服务 yum install openssh-server -y 2.打开服务,并且设置开机项 systemctl start sshd systemctl enable sshd 3.ssh 服务的key文件 ①  ssh-keygen ② 使用公钥id_ras.pub给用户加密 ssh-copy-id  -i  id_rsa.pub  [email protected] 上锁成

Openssh服务配置:控制用户登录 构建密钥对验证ssh

一.项目简介:OpenSSH 是 SSH (Secure SHell) 协议的免费开源实现.OpenSSH提供了服务端后台程序和客户端工具,用来加密远程控制和文件传输过程中的数据,并由此来代替原来的类似服务.二.版本介绍:OpenSSH 支持 SSH 协议的版本 1.3.1.5.和 2.自从 OpenSSH 的版本2.9以来,默认的协议是版本2,该协议默认使用 RSA 钥匙.de:OpenSSH en:OpenSSHes:OpenSSH fr:OpenSSHit:OpenSSH ja:OpenS

【Windows】启用 MSDTC 服务与相关设定

在作分散式事务时,常常会发生 MSDTC 设定上的问题,记录如何启用 MSDTC 服务及调整相关设定. MSDTC(Microsoft Distributed Transaction Coordinator)服务是 Windows 协调跨越多个资源管理员的事务,比如数据库.消息队列及文件系统. 应用程序所在主机与服务器主机(例:数据库服务器)为同一台主机时,只需要启用 MSDTC 服务即可. 应用程序所在主机与服务器主机(例:数据库服务器)为不同台主机时,应用程序所在主机与服务器主机都要启用 M

openssh服务以及基于ssh的双机互信配置

在实现日常的维护和管理,我们经常需要远程登录到服务器,在早期,实现这个功能的协议是telnet,现在也较少的使用到,但是telnet一个致命的缺陷就是其不光是数据传输是明文的,就连用户的认证也是明文的,这在互联网是极其不安全的. 为了实现安全的管理,现在远程登录的时候使用的是都是ssh(secure shell)协议,ssl协议有v1,v2版,但是V1版本因为自身的缺陷也满足不了现在的需求.同telnet一样,ssh协议的实现也是c/s架构,client端可以通过帐号密码的方式登录到server

SQL Server ->> 与SQL Server服务配置相关的DMV

1) sys.dm_server_services这个DMV可以告诉我们与当前版本的SQL Server相关的服务的启动状态和最后一次启动的时间,诸如这样的信息. SELECT * FROM sys.dm_server_services 2)sys.dm_server_registry这个DMV可以告诉我们与当前SQL Server服务相关的配置,我们不必去打开SQL Server Configuration Mangement去查看也可以知道.而它其实读取的就是注册表的信息 SELECT *

Linux学习笔记<二十五>——openssh服务

ssh:Secure SHell ssh特点: 基于TCP22号端口: 密文认证: 密文传输数据 openssh是ssh的开源实现,支持ssh v1和ssh v2 但ssh v1无法解决中间层攻击,建议不要使用 客户端: Linux:ssh Windows:putty,SecureCRT,SSHSecureShellClient,Xmanager 服务器端: Linux:sshd openssh相关命令 1.ssh -X:enable X11 forwarding -Y:enable trust