linux中ssh服务

ssh:Secure Shell,属于应用层协议,工作在tcp的22端口。相对于telnet,ssh通信过程及认证过程都是加密的,故更加安全。

在linux中,一般使用openssh来实现ssh

ssh的认证有口令认证和密钥认证

一、基于口令的认证

1、        客户端发起连接请求

2、        服务端发送自身公钥给客户端,由客户端决定是否接受(ssh客户端接收一个服务端的密钥                           后,密钥保存在客户端当前用户的家目录下的.shh目录中的known hosts文件中)

3、        客户端生成随机数当做对称密码

4、        将随机密码用服务端公钥加密发送给服务端

二、基于密钥的认证

客户端自身产生一对密钥,之后将公钥存到服务器对应用户的家目录的.ssh/authorized_keys      或.ssh/authorized_key2中,此后,该客户端在连接时无需输入密码;为确保安全,.ssh目录的      权限应为700

ssh配置使用:

服务器端:

主配置文件:/etc/ssh/sshd_config

对该文件一些常见设置说明:

Listenaddress 0.0.0.0     #提供服务的地址(若全0表示服务器上所有的地址都                                                                               启用)

Keyregenerationinterval     #客户端产生的非对称秘钥能使用的时间

Permitrootlogin          #是否允许管理员直接登录

Maxauthtries            #设置最多的尝试次数

Rsaauthentication         #是否支持rsa认证

Pubkeyauthentication       #是否支持秘钥认证

Passwordauthentication      #是否支持口令认证

AllowUsers                                 #指定允许特定用户使用ssh连接

DenyUsers                                  #禁止特定用户使用ssh连接

当需要限制IP的登录时,可编辑/etc/hosts.deny和/etc/hosts.allow文件

设置好配置文件后,运行service sshd start即可开启ssh服务

客户端:

发起ssh连接:

ssh [email protected]

ssh -l USERNAME HOST

ssh [email protected] ‘COMMAND‘  #在远程主机上执行命令并返回结果后断开连                                                                                            接

如不指定用户名时,会以客户端当前用户登陆远程主机

当要使用密钥认证时,连接前客户端要做的准备工作:

① ssh-keygen -t rsa     #产生一对密钥,密钥默认保存在~/.ssh/目录下(私钥为                             id_rsa;公钥为id_rsa.pub)

② ssh-copy-id -i ~/.ssh/id_rsa.pub ‘-p ?? [email protected]‘  #将产生的公钥复制                            到服务器对应用户的家目录下(??为ssh监听的端口)

使用ssh注意事项:

1、密码应该经常换且足够复杂

2、使用非默认端口

3、禁止管理员直接登录,应先以普通用户登录,再切换到root

4、仅允许有限用户登录

5、限制客户端地址

6、使用版本2

7、使用基于密钥的认证,但应将.ssh目录权限设置为700

scp命令:

用于文件复制,基于ssh服务

用法:

从远程主机下载文件: scp [email protected]:/path/to/somefile /path/to/local

上传文件到远程主机: scp /path/to/local [email protected]:/path/to/somefile

scp还可使用许多选项,选项用法与cp相同

时间: 2024-12-29 10:45:17

linux中ssh服务的相关文章

Linux中Sshd服务配置文件优化版本(/etc/ssh/sshd_config)

Linux中Sshd服务配置文件优化版本(/etc/ssh/sshd_config) # $OpenBSD: sshd_config,v 1.93 2014/01/10 05:59:19 djm Exp $ # If you want to change the port on a SELinux system, you have to tell # SELinux about this change. # semanage port -a -t ssh_port_t -p tcp #PORTN

Linux含有SSH服务小于10M的裁剪技巧56

一.远程登录协议 1.telnet:远程登录,tcp/23端口的应用层协议 C/S架构 S:telnet服务器 C:telnet客户端 2.SSH:Secure Shell,tcp/22端口的应用层协议 通信过程及认证过程是加密的,主机需要认证 Server端发送Secret key给Client端的Public Key对照: 用户认证过程加密 数据传输过程加密 3.SSH协议 v1 v2 v1已经可以被man-in-middle(中间人)攻击了 4.SSH认证过程: 基于口令认证 基于密钥认证

(转)详解Linux中SSH远程访问控制

详解Linux中SSH远程访问控制 原文:http://blog.51cto.com/dengqi/1260038 SSH:是一种安全通道协议,主要用来实现字符界面的远程登录,远程复制等功能(使用TCP的22号端口).SSH协议对通信双方的数据传输进行了加密处理,其中包括用户登录时输入的用户口令. 在RHEL 5系统中使用的是OpenSSH服务器由openssh,openssh-server等软件包提供的(默认已经安装),并以将sshd添加为标准的系统服务. SSH提供一下两种方式的登录验证:

linux的ssh服务

sshd简介sshd= secure shell可以通过网络在主机中开机shell的服务 连接方式:ssh [email protected] ---> 文本模式的链接ssh -X [email protected] ---> 可以在链接成功后开机图形 注:第一次链接陌生主机是要建立认证文件(~/.ssh/know_hosts)所以会询问是否建立,需要输入yes在次链接此台主机时,因为已经生成~/.ssh/know_hosts文件所以不需要再次输入yes 实验具体操作: sshd 的密钥认证实

Linux 上SSH 服务的配置和管理

基本上Linux的网络服务器在远程操作大多时候都是使用SSH来配置.管理服务器.现在我们就来分享一下简单配置Linux的SSH服务. 1.检查一下默认安装的系统是否安装了SSH服务: chkconfig  --list | grep sshd 2.首先要备份配置文件,任何时候我们需要修改配置文件的时候都建议先把原始文件备份 cp -a /etc/ssh/sshd_config /etc/ssh/sshd_config.bak 3.下面我们就来修改SSHD_config配置文件,需要修改两个地方,

查看linux虚拟机ssh服务是否开启

知识准备: 1.ssh和sshd的区别: 2.ssh服务进程默认地址:/etc/init.d/ssh 查看ssh服务是否开启 service ssh status 或者: /etc/init.d/ssh status 在虚拟机上单元测试remote.c函数,先手工检查ssh有没有运行: [email protected]:/etc/init.d# /etc/init.d/ssh status * sshd is running 或者这样检查:[email protected]:/etc/init

Linux的SSH服务初学

SSH 为 Secure Shell 的缩写,SSH 为建立在应用层基础上的安全协议.SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议.利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题.1.ssh安全的加密协议,用于远程连接服务器.2.默认端口22,安全协议版本ssh2.3.服务端包含两个服务功能:ssh远程连接:SFTP服务.4.ssh客户端半酣ssh连接命令,以及远程拷贝scp命令等. 利用ssh远程登陆另一台机器:[[email protected] ~]#

Linux系统SSH服务详解

简介: SSH 为 secure shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定:SSH 为建立在应用层基础上的安全协议.SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议.利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题.SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台.SSH在正确使用时可弥补网络中的漏洞.SSH客户端适用于多种平台.几乎所有UNIX平台-包括HP-UX.Linux.AIX.Sol

Linux中vsftpd服务配置(匿名,用户,虚拟用户)

vsftpd概述 vsftpd 是"very secure FTP daemon"的缩写,安全性是它的一个最大的特点.vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux.BSD.Solaris. HP-UNIX等系统上面,是一个完全免费的.开放源代码的ftp服务器软件,支持很多其他的 FTP 服务器所不支持的特征. 特点 非常高的安全性需求.带宽限制.良好的可伸缩性.可创建虚拟用户.支持IPv6.速率高 小巧轻快,安全易用. ftp.sftp.