Linux下开启ssh服务

suse11.2 ssh安装并启动ssh无法登录解决-网络

1、SuSE Linux下启动sshd:

命令行:rcsshd start

YaST:找不到sshd,但是打开全部inetd服务,ssh就可用了,奇!

待我发现机关,再改此文。

使用命令行:rpm -qa | grep ssh查看是否已安装ssh。

linux-kelh:~ # rpm -qa | grep ssh

openssh-5.8p1-4.1.i586

libssh4-0.4.8-7.1.i586

ksshaskpass-0.5.3-2.1.i586

libssh2-1-1.2.7-3.1.i586

openssh-askpass-5.8p1-4.1.i586

libnsssharedhelper0-1.0.9-6.1.i586

如果存在如上显示,则表示已经安装ssh服务,反之没有安装。

再使用命令行:service sshd status查看ssh服务是否开启

2、配置SSH服务:

1. 修改配置文件

#vi /etc/ssh/sshd_config

2. 找到#PermitRootLogin no将其修改为PermitRootLogin yes

前晚装了这个版本,感觉它的gome桌面比Ubuntu8和Fedora版本都要好看。呵呵,其实大家都用一样的东西。

这次在SUSE上使用SSH时遇到点麻烦,所以总结一下小经验。SSH,即SecureShell,是一种网络协议,允许在两台计算机之间建立一条安全通道以交换数据。

一般Linux发行版本,例如Ubuntu和SUSE,都默认安装了OpenSSH工具包。完成系统安装,重新启动后,作为服务端的 sshd(SSHDaemon)会作为系统服务之一被启动(注:daemon解释为守护进程)。同时一个SSH工具也安装好了,openSSH程序包的一部分,是远程登录客户端程序。默认安装路径:

ssh-/usr/bin/ssh对应的配置文件/etc/ssh/ssh_config

sshd-/usr/sbin/sshd对应的配置文件/etc/ssh/sshd_config

我只想使用密码登录方式,所以修改了/etc/ssh/sshd_config文件的PasswordAuthentication参数,该参数默认为 no,意思是不允许通过密码认证登录;所以这里改为yes。默认下/etc/ssh/ssh_config也有这个参数,默认是yes,所以不用修改。修改参数后,在命令行输入sshrestart后重新启动sshd服务。

这次碰到的问题是,在SUSE登录后,在命令界面使用ssh192.168.2.101能正常登录,但是在另一台Windows系统上面用putty登录时却显示连接超时,登录失败!putty这边设置没有问题,那么问题可能出在SUSE系统本身或者两台电脑之间的通信。

使用yast查看sshd服务的状态,在命令行输入yast回车,启动yast界面,选择

“System>SystemServices(Runlevel)”,打开SystemServices(Runlevel):Services 界面,检查sshd状态已经是Enabled。使用功能键Alt E转到ExpertMode,观察到当前sshd运行在Runlevel5, (Fullmultiuserwithnetworkanddisplaymanager),这都没有问题。

到网上查查,最后在一个论坛里有人提到检查firewall,需要关闭firework。于是选择在yast中选择“SecurityandUsers>Firewall”,在Firewallconfiguration界面将ServiceStart启动方式修改为Manually,然后执行 “StopFirewallNow”,保存修改!

重新启动sshd,再到Windows下试试,一切正常

启动sshd服务

# service sshd start

# service sshd restart

或者

# /ect/init.d/sshd start

# /ect/init.d/sshd restart

停止服务

# service sshd stop

或者

# /ect/init.d/sshd stop

linux下怎么使SSH服务开机自动运行?

1.首先查看是否安装ssh的相应包

rpm -aq|grep ssh

2.如果已经安装查看相关的port是否打开

netstat -an|grep 22

3.设置随机启动

通过ntsysv 选中sshd服务

也可以通过chkconfig也设置

chkconfig -- level 3 sshd on

4.当这些部分都做好后重新reboot后,还是不能通过ssh联上去。

看一个系统本身的防火设置。

可以手工清空一个规则

iptables -F回车

iptables -t nat -F回车

如果系统端口与sshd服务已启动。

则可以在别的机器上通过ssh连上。

合集下载

Linux下OpenSSH版本升级

Linux下OpenSSH版本升级

Linux下OpenSSH版本升级

在运营商对各个系统的安全扫描的过程中,经常会遇到如下OpenSSH安全漏洞:

这一安全漏洞通常需要到ftp:///pub/OpenBSD/OpenSSH/portable/下载openssh-5.0p1以上的版本,然后进行软件升级才能解决这一问题。

一、OpenSSH升级前需要准备的工作如下:

(1) 开启telnet的服务,关闭SSH服务,详见《Linux下telnet开启和关闭服务》文档;如果是在本机上直接操作就不需要开启。

(2) 将下载好的OpenSSH包上传到需要升级的服务器上。

(3) 检查OpenSSL和Zlib版本,openssh-5.0p1要求在OpenSSL版本在0.9.6以上,Zlib滴版本在1.2.1.2以上;

SUSE10下查看相关命令如下:

RedHat AS下查看相关命令如下:

如果OpenSSL和Zlib版本无法满足OpenSSH升级需求,则需要进行相应的版本升级。 二、OpenSSH升级

(1)备份好之前SSH的相关配置文件,也可以cd /etc,直接tar整个ssh目录。

(2)service sshd stop或者/etc/init.d/sshd stop关闭ssh服务

(3)tar zxvf openssh-5.0p1.tar.gz

(4)cd openssh-5.0p1

./configure --prefix=/usr --sysconfdir=/etc/ssh --without-zlib-version-check

指定安装目录,同时不检查zlib版本。

注:在配置的过程中一定要确保没有错误提示,这样才能进行后续的编译。

(5)make //编译

(6)make install //安装

(7)使用命令ssh –V验证升级是否成功。

在CentOS7下,如何开通SSH系统远程服务

在CentOS7下,如何开通SSH系统远程服务

在CentOS7下,如何开通SSH系统远程服务

⼀、CentOS7系统下打开超级终端,执⾏相关命令:[root@robot ~]# yum list installed | grep openssh-server #查看SSH是否已经安装

(等同于命令:rpm -qa | grep ssh)没有安装 openssh-server,⾸次安装执⾏安装操作

[root@robot ~]# yum install openssh-server #安装openssh-server,如果有版本号,版本号也需要完整输⼊

[root@robot ~]# cd /etc/ssh/ #打开ssh安装⽂件夹

[root@robot ~]# dir #查看⽬录下所有⽂件,并找到sshd_config⽂件

[root@robot ~]# vim sshd_config #⽤vim编辑器打开

1、按键盘的【insert】键,进⼊编辑状态;

2、找到以下两个监听名称,把名称前的【#】符号删除

# ListenAddress 0.0.0.0 → 修改为→ ListenAddress 0.0.0.0

# ListenAddress :: → 修改为→ ListenAddress ::

3、找到PremitRootLogin yes /*如果是no就改为yes*/

4、找到PasswordAuthentication yes /*如果是no就改为yes*/

5、按键盘的【ESC】键,退出编辑状态;

6、输⼊命令【:wq】保存修改

[root@robot ~]# sudo service sshd start #开启SSH远程访问服务

[root@robot ~]# ps -e | grep sshd #检查ssh服务是否已经开启;

⼆、在Windows 系统下安装 Xshell 终端访问⼯具,并配置访问

【运⾏XShell终端,添加SSH远程访问地址】1、填写名称,⽤于标识服务器,⽅便知道连接哪⼀台服务器;

Linux配置SSH免密登录“ssh-keygen”的基本用法

Linux配置SSH免密登录“ssh-keygen”的基本用法

Linux配置SSH免密登录“ssh-keygen”的基本⽤法⽬录

1 什么是SSH

2 配置SSH免密登录

2.1 安装必需的软件

2.2 ssh-keygen创建公钥-私钥对

2.3 ssh-copy-id把A的公钥发送给B

2.4 在A服务器上免密登录B服务器

3 扩展说明

3.2 ⽂件权限

3.3 ⽂件的编辑和查看

1 什么是SSH

引⽤百度百科的说明:

SSH 为 Secure Shell的缩写,由 IETF 的⽹络⼩组(Network Working Group)所制定;它是建⽴在应⽤层基础上的安全协议。

SSH 是⽬前较可靠,专为远程登录会话和其他⽹络服务提供安全性的协议。利⽤ SSH 协议可以有效防⽌远程管理过程中的信息泄露问题。

SSH最初是UNIX系统上的⼀个程序,后来⼜迅速扩展到其他操作平台。

为了在不同平台/⽹络主机之间的通信安全, 很多时候我们都要通过ssh进⾏认证. ssh认证⽅式主要有2种:

① 基于⼝令的安全认证: 每次登录的时候都要输⼊⽤户名和密码, 由于要在⽹络上传输密码, 可能存在中间⼈攻击的风险;

② 基于密钥的安全认证: 配置完成后就可以实现免密登录, 这种⽅式更加安全 —— 不需要在⽹络上传递⼝令, 只需要传输⼀次公钥. 常见的git的ssh⽅式就是通过公钥进⾏认证的.

2 配置SSH免密登录

说明: 这⾥演⽰所⽤的服务器操作系统是Cent OS 7. 我们的⽬标是:

A服务器(172.16.22.131) 能免密登录 B服务器 (172.16.22.132).

注意: ssh连接是单向的, A能免密登录B, 并不能同时实现B能免密登录A.

2.1 安装必需的软件

在操作之前, 先确保所需要的软件已经正常安装.

这⾥我们需要安装ssh-keygen和ssh-copy-id, 安装⽅式如下:

# 安装ssh-keygen, 需要确保服务器可以联⽹. 博主这⾥已经安装完成, 所以没有做任何事.

[root@localhost ~]# yum install -y ssh-keygen

设置ssh无密码登录linux服务器的方法

设置ssh无密码登录linux服务器的方法

设置ssh⽆密码登录linux服务器的⽅法

每次登录测试服务器,ssh登录总是需要输⼊密码。登录的少还⾏,登录的多了,多⼀⾏命令都是多余的。

rsa认证登录⽅式

制作密钥对

在客户端(本地机器)终端下输⼊以下命令

ssh-keygen -t [rsa|dsa]

rsa和dsa代表不同的算法

例如:

ssh-keygen -t rsa

⼀直回车就对了(不⽤设置密码)

将会⽣成密钥⽂件和私钥⽂件 id_rsa,id_rsa.pub(如果⽤dsa则⽣成id_dsa,id_dsa.pub)

⽣成位置在/root/.ssh/⽂件夹下(我⽤的是root⽤户所以在root下,⽣成过程会有提⽰⽂件位置)

.ssh 是隐藏⽂件夹 使⽤ ls -a查看

将公钥放到服务器指定位置

⽅法⼀、直接复制

1、将公钥复制到服务器的root⽤户下的.ssh⽂件夹(⽤哪个⽤户登录就复制到哪个⽤户下的.ssh⽂件夹下)

scp /root/.ssh/id_rsa.pub root@172.16.0.164:/root/.ssh/

2、安装公钥

登录到服务器cd /root/.ssh/

cat id_rsa.pub >> authorized_keys

⽅法⼆、使⽤ssh-copy-id命令复制(推荐)

⼀个命令直接就ok了

ssh-copy-id root@172.16.0.164

验证

不⽤输⼊密码则成功,否则失败

ssh root@172.16.0.164

注意事项

上⾯操作测试过是没有问题的

linux的版本和使⽤的⽤户不同会有差别的。

如果出现问题可以考虑以下两点

1、id_rsa.pub和authorized_keys的⽂件权限问题

chmod 600 authorized_keys

chmod 700 ~/.ssh

2、ssh的配置⽂件

vim /etc/ssh/sshd_config

#启⽤ RSA 认证,默认为yes

RSAAuthentication yes

启⽤公钥认证,默认为yes PubkeyAuthentication yes

linux下ssh安装与scp命令使用详解

linux下ssh安装与scp命令使用详解

linux下ssh安装与scp命令使⽤详解

ubuntu默认并没有安装ssh服务,可以通过如下命令进⾏:

复制代码 代码如下:

yblin@yblin-desktop:~$ ssh localhostssh: connect to host localhost port 22: Connection refused

如上所⽰则说明还没有安装ssh.通过apt-get安装如下:复制代码 代码如下:

yblin@yblin-desktop:~$ sudo apt-get install openssh-server

ssh默认端⼝是22,可以通过sudo /etc/init.d/ssh start 修改默认端⼝。 scp基于ssh登录,所以如果没有安装ssh⽆法进⾏⽂件拷贝。

不同的Linux之间copy⽂件常⽤有3种⽅法,第⼀种就是ftp,也就是其中⼀台Linux安装ftpServer,这样可以另外⼀台使⽤ftp的client程序来进⾏⽂件的copy。第⼆种⽅法就是采⽤samba服务,类似Windows⽂件copy的⽅式来操作,⽐较简洁⽅便,第三种就是利⽤scp命令来进⾏⽂件复制。 scp是有Security的⽂件copy,基于ssh登录。操作起来⽐较⽅便,⽐如要把当前⼀个⽂件copy到远程另外⼀台主机上,可以如下命令。复制代码 代码如下:

scp/home/daisy/**********************.2.75:/home/root

然后会提⽰你输⼊另外那台172.19.2.75主机的root⽤户的登录密码,接着就开始copy了。 如果想反过来操作,把⽂件从远程主机copy到当前系统,也很简单。

复制代码 代码如下:

**************.2.75:/home/root/home/daisy/full.tar.gz

SSH简单使用教程

SSH简单使用教程

SSH简单使用教程

SSH(Secure Shell)是一种安全协议,旨在通过加密技术在网络中安全地传输数据。它是一种远程登录协议,可以让用户通过互联网远程登录到远程服务器或远程主机上,并在感到安全的情况下执行命令。

SSH是替代传统不安全协议(如Telnet)的首选工具。使用SSH,可以安全地远程管理和传输文件,而无需担心信息泄露和攻击。

本文将介绍SSH的基本使用方法,并提供一些SSH的实际应用场景。

1.配置SSH

在开始使用SSH之前,需要做一些初始配置。首先,在远程服务器上安装SSH服务,并确认SSH服务已经启动。这可以通过以下命令来检查:

```

service ssh status

```

如果SSH服务未启动,可以使用以下命令启动:

```

service ssh start

```

另外,如果你使用的是Linux系统,需确保OpenSSH服务器软件包已经安装。可以使用以下命令安装:

``` sudo apt-get install openssh-server

```

2.连接到远程服务器

要连接到远程服务器,需要知道远程服务器的IP地址和登录凭据(用户名和密码)。可以使用以下命令连接:

```

```

其中,username是登录远程服务器的用户名,ip_address是远程服务器的IP地址。

3.密钥认证

SSH还支持密钥认证,这是一种更安全和便捷的登录方式。使用密钥认证,用户将生成一对密钥(公钥和私钥),将公钥放在远程服务器上,然后使用私钥进行登录。

要使用密钥认证,首先需要生成密钥对。可以使用以下命令生成密钥对:

```

ssh-keygen -t rsa -b 4096

```

该命令将要求您提供保存密钥对的路径和密码。生成密钥对之后,可以使用以下命令将公钥复制到远程服务器上: ```

```

然后你就可以使用私钥进行登录了:

```

```

4.SSH端口转发

SSH还提供了端口转发功能,可以将本地端口转发到远程服务器上。这对于访问位于防火墙后面的服务器或本地网络服务非常有用。

Centos7配置SSH服务

Centos7配置SSH服务

⼀、⾸先确认 Centos7 是否已安装 ssh服务

⼀般情况下,centos⾃带ssh服务

使⽤命令⾏ yum list installed | grep ssh 来查询

如果显⽰:

则说明安装ssh服务。

如果没有安装,则先需要安装ssh服务,

使⽤命令⾏yum install openssh-server

⼀路Y确认

⼆、配置SSH

ssh默认端⼝是22

使⽤ root ⽤户进⼊ /etc/ssh/ ⽬录: cd /etc/ssh/ (切换到root⽤户,使⽤ su 命令)

使⽤ vi/vim 打开 sshd_config ⽂件: vim sshd_config

默认是22端⼝,将配置⽂件⾥的 #注释 释放,(想要哪个设置⽣效,就删除前⾯的 #)

su #切换到root

cd /etc/ssh/

vim sshd_config

PermitRootLogin yes #是否允许root⽤户登录

PermitEmptyPasswords no #是否允许空密码

PasswordAuthentication yes #是否允许密码验证

AllowUsers xxxxx #允许xxxxx⽤户登录

ecs

wq # 保存退出

三、 防⽕墙打开22端⼝

firewall-cmd --zone=public --add-port=22/tcp --permanent #向防⽕墙中添加端⼝

--zone #作⽤域

--add-port=80/tcp #添加端⼝,格式为:端⼝/通讯协议

--permanent #永久⽣效

firewall-cmd --reload #使防⽕墙规则⽣效

firewall-cmd --zone=public --query-port=22/tcp #查看端⼝是否添加成功:

firewall-cmd --list-ports #查看防⽕墙开放的端⼝

四、启⽤ssh服务

service sshd restart #重启ssh服务

如何在Ubuntu20.04上启用SSH

如何在Ubuntu20.04上启⽤SSH

Secure Shell(SSH)是⽤于客户端和服务器之间安全连接的⽹络协议。服务器与客户端之间的每次交互均被加密。

本教程说明了如何在Ubuntu计算机上启⽤SSH。

启⽤SSH将允许您远程连接到系统并执⾏管理任务。您还可以通过scp和sftp安全地传输⽂件。

在Ubuntu上启⽤SSH

默认情况下,⾸次安装Ubuntu时,不允许通过SSH进⾏远程访问。在Ubuntu上启⽤SSH⾮常简单。

以root ⽤户或具有sudo特权的⽤户执⾏以下步骤,以在Ubuntu系统上安装并启⽤SSH:

使⽤打开终端Ctrl+Alt+T并安装openssh-server软件包:sudo apt updatesudo apt install openssh-server出现提⽰时,输⼊密码,然后按Enter继续安装。

安装完成后,SSH服务将⾃动启动。您可以通过键⼊以下命令来验证SSH是否正在运⾏:sudo systemctl status ssh输出应告诉您该服务正在运⾏,并已启⽤以在系统引导时启动:

● ssh.service - OpenBSD Secure Shell server Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2020-06-01 12:34:00 CEST; 9h ago...按q返回到命令⾏提⽰符。Ubuntu随附了⼀个名为UFW的防⽕墙配置⼯具。如果在系统上启⽤了防⽕墙,请确保打开SSH端⼝:

sudo ufw allow ssh现在,您可以从任何远程计算机通过SSH连接到Ubuntu系统。Linux和macOS系统默认安装了SSH客户端。要从Windows计算机连接,请使⽤SSH客户端(例如PuTTY)。

linux下sftp用户权限设置条件及实现命令

linux下sftp用户权限设置条件及实现命令

在Linux下设置SFTP用户的权限,需要满足以下条件:

1. 安装和配置OpenSSH服务器:确保系统上已安装OpenSSH服务器,并进行相应的配置。可以使用apt、yum或其他包管理器来安装OpenSSH服务器。

2. 创建SFTP用户:创建一个普通的系统用户,用于SFTP访问。可以使用useradd命令创建用户,并设置密码。

3. 限制Shell访问:将SFTP用户的shell访问限制为仅允许使用SFTP服务,而不允许登录到系统的shell环境。可以修改/etc/passwd文件中的用户行(用户行的最后一列)或使用chsh命令进行修改。

4. 配置SFTP服务:编辑OpenSSH服务器配置文件(通常在/etc/ssh/sshd_config),并确保以下配置项已启用或添加:

```

Subsystem sftp internal-sftp

Match User sftp_username

ForceCommand internal-sftp

ChrootDirectory /path/to/sftp_directory

AllowTcpForwarding no

X11Forwarding no

```

- "Subsystem sftp internal-sftp" 表示使用内部的SFTP子系统。 - "Match User sftp_username" 表示匹配指定的SFTP用户名。

- "ForceCommand internal-sftp" 强制使用内部SFTP命令,禁止用户执行其他命令。

- "ChrootDirectory /path/to/sftp_directory" 将用户限制在指定的目录下,防止访问系统其他目录。

Linux升级OpenSSH和OpenSSL,解决XMSSKey解析整数溢出漏洞、Open。。。

Linux升级OpenSSH和OpenSSL,解决XMSSKey解析整数溢出漏洞、Open。。。

OpenSSH和OpenSSL

󰀀OpenSSL

OpenSSL其实是⼀个开源的C函数库,多⽤于加密依赖,很多程序的编译,需要OpenSSL作为依赖包。

󰀀OpenSSH

OpenSSH 是 SSH (Secure SHell) 协议的免费开源实现,类似于OpenJDK和OracleJDK的区别。需要⽤到OpenSSL的函数库,所以在更新OpenSSH前,最好先更新

OpenSSL。

SSH协议族可以⽤来进⾏远程控制, 或在计算机之间传送⽂件。相对于传统⽅式,OpenSSH提供了服务端后台程序和客户端⼯具,并且加密远程控制和⽂件传输过程中的数据。

简单地说,⽇常使⽤OpenSSH:远程控制服务器端,如:远程登录访问Linux的Terminal。且过程中加密传输。

OpenSSL 拒绝服务漏洞

拒绝服务漏洞,代号为:CVE-2021-3449:

主要是⼀些操作,可能会让OpenSSL TLS 强⾏停⽌。【我感觉这个漏洞不是很严重啦,但是⼤家都觉得很严重……那还是有必要修复⼀下╮( ̄▽ ̄"")╭】

解决⽅法很简单:升级OpenSSL版本。

XMSS Key 解析整数溢出漏洞

XMSS Key漏洞,代号为:CVE-2019-16905:

主要是⾮法⽤户,可以通过此漏洞,跳过OpenSSH的认证,远程登录到你服务器【不过计算难度挺⾼的,⽽且条件苛刻……】。但是,总归是重⼤漏洞,需要修复:

解决⽅法很简单:升级OpenSSH版本。

升级的⽅法很简单:

下载新版本OpenSSL源码备份旧版本OpenSSL编译安装新版本OpenSSL下载新版本OpenSSL源码这边推荐下载地址:

⽐如,我这边下载openssl-1.1.1k.tar.gz。到Linux控制台内,使⽤wget下载即可(你也可以使⽤宝塔等软件下载,但是记得权限问题):wget 'https:///source/openssl-1.1.1k.tar.gz'

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档