码迷,mamicode.com
首页 > 其他好文 > 详细

openssh与安全

时间:2016-07-05 19:07:35      阅读:322      评论:0      收藏:0      [点我收藏+]

标签:openssh 安全


  ssh服务的最佳实践:

1     不要使用默认端口

2      禁止使用协议版本1

3      限制可登陆多用户,最好做一个白名单

4      设定空闲会话超时时长 (用户连上去无操作多长时间自动端看连接)

5      利用防火墙设置ssh的访问策略,例如仅允许哪些主机访问连接

6      仅监听特定的ip地址  (如果有多个ip,还是内外网,还有vpn,那就仅开通内网远程登录,通过远程vpn,再登录服务器)

7      基于口令认证时,要采用强密码策略 (不低于8位,常换,不用弱口令,各类字符都有)

8      使用基于秘钥的认证

9      禁止使用空口令

10    禁止管理员直接登录

11    限制ssh的访问频度(密码错了几次就断开)和并发在线数

12    做好日志分析,使用awk等做好统计/var/log/secure


ssh protocol  ssh协议的版本:

v1:不安全(有些老的程序只支持第一版,所以有时还是要开启)

v2

 

Openssh:

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

ssh 配置文件   /etc/ssh/ssh_config

客户端程序ssh:

ssh  [option] [user@]host [COMMAND]

ssh -l user [option] host [COMMAND]

常用选项:

-l user   指定的用户登录远程主机

-p port   指明远程服务器的端口;为了服务器安全是要修改ssh的端口

-b bind_ip  把服务绑定在某个ip上面,多ip时可以使用这个选项

-X   支持x11转发 

-Y     支持信任的X11转发

X:协议,x-windows图形化窗口,也是C/S架构图形为C,主机为S

X11转发的作用:在本地显示远程主机上面的图形窗口,首先本地为X图形界面,或者提供了x server,并不需要远程主机上面有图形界面功能

-o    后面根特定的选项   -o StrictHostKeyChecking=no不做严格的主机登录检查,不输入yes

-t    强制伪tty分配,你想连接的sshd服务器不能一次性到达,需要中间先登录一个sshd服务器,通过跳板机到达

~#  ssh -t  remoteserver1 ssh remoteserver2

先连接远程主机1,通过远程主机分配伪终端,跳转到远程主机2

当然在此过程中你要先后输入两次密码了,(你懂得)

 

省略command则表示为登录这台主机;如果使用命令,则表示临时切换主机执行完指定命令后退出远程的主机

~#   ssh 172.16.1.1               (使用本地登录用户名作为远程登录用户名,并不是root就是默认用户)

~#   ssh zou@172.16.1.1

~#   ssh -p 20000  172.16.1.5

~#   ssh 172.16.1.1 shutdown -h now   (关机你就连接不上了^_^)

~#  ssh -o StrictHostKeyChecking=no 172.16.1.4     第一次远程登录时跳过yes确认远程登录对象

[root@zou xinetd.d]# ifconfig eth0 | grep "inet addr:"

          inet addr:172.16.1.2  Bcast:172.16.255.255  Mask:255.255.0.0

[root@zou xinetd.d]# ssh 172.16.1.1

root@172.16.1.1‘s password:

Last login: Wed Jun 29 23:20:39 2016 from 172.16.250.146

[root@yuan ~]# ip addr show eno16777736 | grep "inet\b"

    inet 172.16.1.1/16 brd 172.16.255.255 scope global eno16777736

[root@yuan ~]# exit

登出

Connection to 172.16.1.1 closed.

[root@zou xinetd.d]# ssh 172.16.1.1 "ip addr show eno16777736 | grep ‘inet\b‘ "

root@172.16.1.1‘s password:

    inet 172.16.1.1/16 brd 172.16.255.255 scope global eno16777736

接收的所有认可的服务器列表:~/.ssh/known_hosts   一个一行

ssh的配置文档/etc/ssh/ssh_config      修改文件则以后会成为默认

OPTION1  VALUE

#开头的是默认的

vim /etc/ssh/ssh_config  

StrictHostKeyChecking     no    以后登录远程主机不在第一次输入yes,采用非严格的远程登录

 

ssh主机认证:需要用到主机认证秘钥,此秘钥由服务器端维护和提供

ssh支持的用户认证:

基于口令的认证:用户输入账号和密码

基于秘钥的认证:用户提供一对密钥,私钥保留在客户端,公钥保存在远程服务器端

ssh基于秘钥的认证     

ssh-keygen [-q] [-b bits] -t type   [-f output_keyfile]

-q

静默模式

-b

秘钥位数,512,1024,2048,4096,默认2048

-t

指明秘钥格式rsadsaecdsa椭圆曲线算法,最好使用rsa或者ecdsa

-f

保存到哪个文件当中

默认在~/.ssh目录下

-P

指明对私钥加密的密码

-v

调试模式

-C

压缩方式

-X

只是X11转发

-Y

只是信任X11转发



~#    ssh-keygen -t ecdsa           会在~/.ssh目录下生成id_ecdsa私钥和id_ecdsa.pub一对

~#    ssh-keygen -t rsa -P ‘‘   指明私钥密码为空密码,则会跳过让你指定私钥密码环节

注:每个用户的一对私钥和公钥是可以重复使用的,不用每次都执行一次创建一对秘钥,不然会覆盖原有的私钥和公钥,尤其是你已经开始使用了,如果还想链接更多台的服务器,直接使用已存在的公钥传输给其他用户

[root@localhost ~]# ssh-keygen -t rsa

Generating public/private rsa key pair.

Enter file in which to save the key (/root/.ssh/id_rsa):

Enter passphrase (empty for no passphrase):    这个位置是输入私钥的加密密码(以后你安装的时候

Enter same passphrase again:

Your identification has been saved in /root/.ssh/id_rsa.

Your public key has been saved in /root/.ssh/id_rsa.pub.

The key fingerprint is:

aa:a1:93:52:ca:12:82:64:13:7c:c9:0c:df:b5:f3:50 root@yuan.zouzhiyuan.com

The key‘s randomart image is:

+--[ RSA 2048]----+

|..+ .  . E       |

+-----------------+

  在本地主机,将公钥复制到要登录的远程主机的某用户的家目录下的~/.ssh/authorized_keys  文件中(有特定命令)

ssh-copy-id [-i [identity_file]] [user@]machine

~#    ssh-copy-id -i  ~/.ssh/id_rsa.pub root@172.16.1.1

~#    ssh-copy-id -i  ~/.ssh/id_rsa.pub zou@172.16.1.5

[root@localhost ~]# ssh-copy-id -i .ssh/id_rsa.pub root@172.16.1.2

/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed

/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys

root@172.16.1.2‘s password:

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh ‘root@172.16.1.2‘"

and check to make sure that only the key(s) you wanted were added.

 

[root@localhost ~]# ssh 172.16.1.2          这个时候是不需输入远程用户密码

Enter passphrase for key ‘/root/.ssh/id_rsa‘:       如果每有给私钥文件加密,那么直接可以登录成功

Last login: Tue Jun 28 12:15:15 2016 from 172.16.250.146

之后在远程服务器上会在相应用户家目录下面的.ssh目录里面有一个authorized_keys文件

aushorized_keys文件可以存放一到多个远程公钥登录的公钥,一行一个(每行都很长所以在你看来占据了很多行),所以不要随便删除这个文件

[root@zou .ssh]# cat authorized_keys

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDCpAJFy7QTadK0ghnq63+BZ7Qzm5FLZ4XeVyb1kNwis6GkfyltnX2fzaeR5nLTM6uWHacfahin6Khy9nPX02jDFNMBYGUHg6NXHQLdGihYxv20j1zv4aZRlIPicuqktDM+c2Nda6Yzufun52gQvEzr9HELKMMIkEn6rs4GrY6TO2rG3mV5e8TM++MoV8i+8VZOfKK+I5buEHvBaz+oaQ7Y++WOcuOHir8Nn/wOoOZYrHAa7+qtPKYtEmUmT1eHqnJzdt2lpB0HZNIUuRikSVCCdI6QLmLb7E5xyuZmNB8F6owyenrGmyaerB2whKqoUMHjxCQt8ipr/yOfd/wK5BJV root@yuan.zouzhiyuan.com

这是在远程服务器上的 一个本地登录的登录公钥,因为我这只设置了一个,所以只有这一个,一个,看起来很多行

----------------------

*********************

----------------------

SSH端口转发

v什么是SSH端口转发?

SSH 会自动加密和解密所有SSH 客户端与服务端之间的网络数据。但是,SSH 还能够将其他TCP 端口的网络数据通过SSH 链接来转发,并且自动提供了相应的加密及解密服务。这一过程也被叫做“隧道”(tunneling),这是因为SSH 为其他TCP 链接提供了一个安全的通道来进行传输而得名。例如,Telnet,SMTP,LDAP 这些TCP 应用均能够从中得益,避免了用户名,密码以及隐私信息的明文传输。而与此同时,如果工作环境中的防火墙限制了一些网络端口的使用,但是允许SSH 的连接,也能够通过将TCP 端口转发来使用SSH 进行通讯

vSSH 端口转发能够提供两大功能:

加密SSH Client 端至SSH Server 端之间的通讯数据

突破防火墙的限制完成一些之前无法建立的TCP 连接。

v本地转发:

格式:-L localport:host:hostportsshserver

~# ssh –L 9527:server1:23 -fN server2

本地端口:远程主机:远程主机端口   -N 后制定跳板机

~#telnet 127.0.0.1 9527

当访问本机的9527的端口时,被加密后转发到server2的ssh服务,再解密被转发到server1:23

dataàlocalhost:9527 àlocalhost:XXXXXàserver2:22àserver2:YYYYY àserver1:23

这里server2为跳板机


技术分享

v选项:

-f 后台启用

-N 不开远程shell,一般是与-f搭配使用的

-g 启用网关功能

上图的步骤操作完成之后,会在后台打开这个隧道,当我们使用服务的时候就可以使用了:

~# telnet 127.0.0.1 9527    在本地虽然是连接本地的端口,但是刚才我们已经开启了端口转发,有数据在这个端口走,就会通过ssh刚建立的隧道,传输到跳板机,跳板机再去帮你找服务

这样一个明文的telnet被封装到ssh协议里面,变得安全起来

 

v远程转发:

格式:-R sshserverport:host:hostportsshserver

~# ssh–R 4000:server1:23 –N server2

让跳板机远程连接8023端口,家庭本地主机侦听8023端口的访问,如有访问,就加密后转发请求到家庭本机sshd服务,再由跳板机解密后转发到serve1:23

Dataàlocalhost8023àlocalhos:22àserver2:XXXàserver2YYYàserver1:23

localhost 为家庭本地主机,server2为跳板机


技术分享

注:远程主机和本机主机两种端口转发虽然最后达到的效果一样,但是贼在数据流向和端口之间的切换有很大不同

 

SSH动态端口转发:

v需要配置动态端口的情况

当用firefox访问internet时,本机的1080端口做为代理服务器,firefox的访问请求被转发到sshserver上,由sshserver替之访问internet

在本机firefox设置代理proxy:127.0.0.1:1080

格式:    ~】#  ssh -D 1080 root@sshserver

技术分享

scp命令: cp命令相似    基于ssh连接完成复制,跨主机加密以后完成数据传输

文件:

远程为目录,则复制到目录中,创建同名文件

远程为目录,且文件存在,覆盖

远程为文件,则覆盖

目录:  复制目录必须使用-r选项

远程为目录,则复制到这个目录当中,新建一个同名目录

远程为文件,不被允许

远程为非存在目录,则复制过去,之后重命名

存在两种情形:

PULL    scp [options] [user@]host:/path/to/somefile  /path/to/somefile

源文件是远程的,目标文件是本地的,用远程主机上拽文件过来,要求指定用户对远程主机文件有读权限

PUSH  scp [options] /path/to/somefile [user@]host:/path/to/somefile

源文件是本地的,目标文件是远程的,把文件推送动远程主机,要求指定用户对远程主机文件有写权限


rsync 命令 (因为cp只能是每次都要拷贝一次,在增量备份当中显得低效)

rsync就是通过ssh协议封装了sync,基于sshrsh服务实现高效率的远程系统之间复制文件

使用安全的shll连接作为传输方式,比scp更快,只复制不同的文件

~# rsync -av /etc server1:/tmp         复制目录和目录下文件

~#  rsync -av /etc/ server1:/tmp        只复制目录下的文件   ,所以看好了后面有没有/

~# rsync -avz --delete /etc server1:/tmp  /etc下面文件发生增删查改,再执行这条命令,远程同步主机的/tmp目录也会发生变化,结合crond可以实现数据同步

-n

 模拟复制过程

 -v

显示详细过程
-r递归复制目录树

-p

保留权限

-t 

保留时间戳

-g保留组信息
-o

保留所有者信息

-l

把符号链接文件做为符号文件进行复制
-L将软链接文件指向文件复制

-a 

存档模式,相当于–rlptgoD,但不保留ACL(-A)和SELinux属性(-X),同步所有

z压缩

sftp命令:   (openssh 自带的一个组件)

ftp: file transfer protocol  明文传输

安全的文件传输机制:

ftps   ftp over ssl

sftp   ftp  over  ssh

sftp  C/S架构

S:由sshd服务进程管理,是sshd的一个子系统,在centos系统上的openssh上为默认启动状态,所以默认不用配置

C:即sftp

连接至远程主机:

~#   ftp user@host

ftp>  help

ftp> get  file_name  /tmp                后者的/tmp是本地的目录,意为下载某文件到本地/tmp目录

ftp> COMMAND        加上!表示命令作用于本地主机,而不是远程主机

[root@zou mnt]# sftp root@172.16.1.1:/boot

Connecting to 172.16.1.1...

root@172.16.1.1‘s password:   在这里需要输入密码,如果做过ssh公钥认证,则直接跳过此步骤

Changing to: /boot

sftp> ls

......省略                                                                                                                             

grub                                                                               

grub2

sftp> cd /          可以任意切换远程主机上面的任意位置,只要你远程登录的用户有足够的权限

sftp> ls

bin    boot   dev    etc    home   lib    lib64  media  mnt    opt    proc   root  

run    sbin   srv    sys    tmp    usr    var

sshd (服务器端)

配置目录/etc/ssh目录

       ssh_host_key       ssh_host_key.pub 

     ssh_host_dsa_key    ssh_host_dsa_key.pub   

     ssh_host_rsa_key    ssh_host_rsa_key.pub

            这6个密钥文件是用于实现主机认证

配置文件:  /etc/ssh/sshd_config          操作前请备份

#空格开头的为纯注释

格式:   配置指令 

port

端口,默认位22

AddressFamily

地址家族,监听ipv4或者ipv6

SyslogFacility系统日志

LoginGraceTime

用户登录的等待时期,最多2分钟,2分钟不登录,自动断开连接

MaxAuthTries

输入密码错误最多几次,默认6,但6要除以2,也就是3次,2还是21就是1,4还是2降低辞职避免暴力破解

ListenAddress

指定监听的ip,默认为0.0.0.0,监听所有主机

Protocol

定义协议版本,默认为21.2版本)

LogLevel

日志级别

PermitRootLogin

是否允许root用户直接远程登录;可以给关闭,之后用普通用户远程登录,之后su进来,之后使用root用户

MaxSessions

最大会话数量,默认10,最多可以有10个终端同时远程登

RSAAuthentication默认为yes ,是否支持rsa的认证机制,指的基于公钥的用户认证,默认支持
PubkeyAuthentication

默认为yes,支持基于公钥的认证,它和上面的指令需要同时打开,才能生效

AuthorizedKeysFile

基于远程基于公钥认证的公钥存放的文件路径,默认~/.ssh/authorized_keys

RhostsRSAAuthentication默认为no,与远程主机连接必须做RSA认证,一般我们远程连接主机,如果以前从没有通信过,远程主机会先发送一个它的一个密钥(它的公钥)给主机,我们需要通过yes后同意接受。如果把值改为yes,如果本地主机事先没有这个密钥,就无法建立连接,因此非常安全。我们可以先建立连接,等本地known_hosts文件记录了远程主机的公钥之后,我们再打开这项功能。也可以把这个公钥放到加密狗上面随身携带,这项功能安全,但是也意为这麻烦,秘钥没了你就要去机房了

PasswordAuthentication

默认为yes,是否允许基于口令远程登录,如果开启基于密钥认证,则建议关闭

UsePAM

默认为yes,基于PAM模块认证,系统认证功能必然会用到的机制

AcceptEnv

默认为yes,基于PAM模块认证,系统认证功能必然会用到的机制
X11Forwarding默认yes,是否允许X11协议做转发
PrintMotd默认为yes,是否在用户登录时打印Motd信息,    对应/etc/motd文件

PrintLastLog

默认为yes,是否显示用户上一次在几点几分通过什么终端登录,这样会泄露你的登录信息,建议关闭,反正你也知道你上次大概什么时候登录的,让别人看到反而不好

UseDNS

默认为yes,是不是每次登录的时候,都基于DNS反解对方的地址到主机名,建议改为no,因为有的时候因为网络问题,你可能会卡在远程登录那一会才能登进系统
Subsystem子系统,运用程序为/usr/libexec/openssh/sftp-server

StrictModes

是否检查家目录相关文件权限是否正确,ssh远程时使用的文件
GatewayPort

支持端口转发

ClientAliveInterval

0永远不动,用户连接上,多长时间不动断开连接

ClientAliveCountMax

会话最大连接数

PermitTunnel

允许隧道,涉及到端口准发,可以开启这个选项,如果你要设置的话

Banner

指定自定义/etc/ssh.txt文件,之后用户ssh远程登录的时候会打印文件里面的内容

以上是配置文件中常用的,还有写没有写在配置文件中的可以man 文件手册

~#  man sshd_config    查看服务配置文档的帮助文档

~#  man ssh_config

~#  man sshd                       查看sshd怎么使用

修改完配置文档,要想生效,需要reload一下

~#   service sshd reload

6版本上服务脚本  -->  /etc/rc.d/init.d/sshd

7版本上:Systemd  Unit File  --->   /usr/lib/systemd/system/sshd.service

~#  systemctl reload sshd

限制可远程登录的用户

~#  vim /etc/ssh/sshd_config

写入

AllowUsers        user1 user2  user3     空格隔开

Allowgroups      group1

这是白名单

 

DenyUsers          user1 user2

DenyGroups    group1

这是黑名单

黑名单和白名单只能使用一个,如果同时使用那就拒绝大于允许

补充:  如果修改了sshd的端口,同时你开启了防火墙和selinux的话,首先要调整防火墙策略,改个端口,删了以前那条就行

对于selinux

~ # tail /var/log/messages   查看selinux的日志

~ # sealert -l 15d342-54ef-8982dfc6e0    这是根据日志提醒操作的

~ # semanage port -a -t ssh_port_t  -p tcp 20000    这是其上命令建议的操作

~ # semange port -l | grep ssh         查看是否添加端口成功


ssh 协议的另一个实现:dropbear

轻量化实现,多用户嵌入式方案当中,使用机制和openssh大致相同   (在无线路由器上就是这样允许远程登录的)

~#  yum install dropbear -y               (epel源里面有)

配置目录:/etc/dropbear

服务端程序:/usr/sbin/dropbear

客户端程序:/usr/bin/dbclient

dropbear生成主机秘钥:/usr/bin/dropbearkey

 

~#  dropbearkey -t rsa -s 2048 -f /etc/dropbear/dropbear_rsa_host_key

~#  dropbearkey -t dss  -f /etc/dropbear/dropbear_dss_host_key     (因为dss只支持1024位,所以不用指定)

~#  dropbearkey -t ecdsa -s 521 -f /etc/dropbear/dropbear_ecdsa_host_key (椭圆曲线,最长支持521位)

 

~#  dropbear -p 20000 -E -F 

-E 为把标准输出从执行日志改为错误输出,这样信息就会显示在终端上

-F  前台运行,测试的时候使用这两项,平时打开,不用

-p  指定开启服务使用的端口,默认是22,但是这个和ssh冲突,测试需要修改,或者停sshd

另一台主机登录测试:

~#  ssh -p 20000 172.16.1.1

~dbclient-p 20000 172.16.1.1

 

如果测试都没有问题,可以开启服务了systectl命令开启此服务,但是因为不想使用默认端口22,我们需要

~cat /usr/lib/systemd/system/dropbear.service

EnvironmentFile=-/etc/sysconfig/dropbear

ExecStart=/usr/sbin/dropbear -E -F $OPTIONS

这两行的意思就是开启的时候,会调用/etc/sysconfig/dropbear文件里面的OPTIONS参数

~#  vim /etc/sysconfig/dropbear    文件为空

 写入

OPTIONS=-p 20000

~# systectl start dropber.service

~#  ss  -tnl    显示20000端口是否监听

这里演示一下我们测试dropbear能够服务可以使用

首先我们要在服务端先建立好钥匙

[root@yuan xinetd.d]# dropbearkey -t rsa -s 2048 -f /etc/dropbear/dropbear_rsa_host_key

Generating key, this may take a while...

Public key portion is:

ssh-rsa ....中间秘钥省略..... root@yuan.zouzhiyuan.com

Fingerprint: md5 90:6e:5e:ef:d0:1b:02:cb:4b:f5:18:3e:8b:6d:57:26

在这个时候我们就可以开启服务,远程登录可以通过rsa加密算法,但是为了更好的支持远程登录可以开启更多登录;

这个时候开启服务的话是可以用的,但是会报错,所另外两个算法的文件没有找见,但是远程登录是可以成功的

[root@yuan xinetd.d]# dropbear -p 20000 -E -F

[4518] Jun 30 10:47:36 Failed loading /etc/dropbear/dropbear_dss_host_key

[4518] Jun 30 10:47:36 Failed loading /etc/dropbear/dropbear_ecdsa_host_key

[4518] Jun 30 10:47:36 Not backgrounding

当然为了安全我们只是用一个远程登录的方式也是可以的

所以下面的步骤是可以省略的

[root@yuan xinetd.d]# dropbearkey -t dss  -f /etc/dropbear/dropbear_dss_host_key

Generating key, this may take a while...

Public key portion is:

ssh-dss AAAAB3NzaC1kc3MAAACBANr0SlgJdM6AxlJ/

Fingerprint: md5 30:69:94:3d:e6:14:2d:86:9e:9b:ec:a0:93:36:f2:37

[root@yuan xinetd.d]# dropbearkey -t ecdsa -s 521 -f /etc/dropbear/dropbear_ecdsa_host_key

不管是开启一个加密算法,还是3个都开启,我们这个时候可以开启dropbear服务了,当然建议暂时关闭防火墙

[root@yuan xinetd.d]# dropbear -p 20000 -E -F

[4523] Jun 30 10:49:45 Not backgrounding

在本地客户端试图连接远程服务

[root@zou ssh]# ssh -p 20000 172.16.1.1

The authenticity of host ‘[172.16.1.1]:20000 ([172.16.1.1]:20000)‘ can‘t be established.

RSA key fingerprint is 90:6e:5e:ef:d0:1b:02:cb:4b:f5:18:3e:8b:6d:57:26.

Are you sure you want to continue connecting (yes/no)? yes

Warning: Permanently added ‘[172.16.1.1]:20000‘ (RSA) to the list of known hosts.

root@172.16.1.1‘s password:

或者通过dbclint连接

[root@zou ssh]# dbclient -p 20000 172.16.1.1

Host ‘172.16.1.1‘ is not in the trusted hosts file.

(ssh-rsa fingerprint md5 90:6e:5e:ef:d0:1b:02:cb:4b:f5:18:3e:8b:6d:57:26)

Do you want to continue connecting? (y/n) y

root@172.16.1.1‘s password:

我们可以查看ip,是否已经远程登录成功,我这里本地为6,远程为7,能使用ip addr就说明ok

[root@yuan ~]# ip addr show eno16777736 | grep ‘inet\b‘

    inet 172.16.1.1/16 brd 172.16.255.255 scope global eno16777736

我们在测试的 服务器端,因为我们开启了测试的前台显示,和输出为错误输出到终端,我们可以看到连接状况

[root@yuan xinetd.d]# dropbear -p 20000 -E -F

[4523] Jun 30 10:49:45 Not backgrounding

[4550] Jun 30 10:50:26 Child connection from 172.16.1.2:59012

[4550] Jun 30 10:51:00 Password auth succeeded for ‘root‘ from 172.16.1.2:59012

当本地客户端断开连接的时候就会显示

[4583] Jun 30 11:07:04 Exit (root): Disconnect received


编译安装dropbear

v2、ftp://172.16.0.1/pub/Sources/sources/dropbear/dropbear-2013.58.tar.bz2    (马哥内网服务器)

v3、tar xf dropbear-2013.58.tar.bz2,

v4、less INSTALL  或者cat INSTALL  查看安装帮助信息

v5、./configure

v6、make PROGRAMS=‘dropbear scp dropbearkey dbclient‘  这里注意一下,如果有sshscp,这里的的scp就别安装了

v7、make PROGRAMS=‘dropbear scp dropbearkey dbclient‘ install

v8、ls /usr/local/sbin/ /usr/local/bin/

v9、/usr/local/sbin/dropbear -h

v10、mkdir /etc/dropbear

v11、dropbearkey -t rsa -f /etc/dropbear/dropbear_rsa_host_key -s 2048

v12、dropbearkey -t dss -f /etc/dropbear/dropbear_dsa_host_key

v13、dropbear -p :2222 -F -E ; ss –tnl  #前台运行,信息终端错误输出(测试用,正常启用的话,不用加-F-E

v14、ssh -p 2222 root@127.0.0.1

v15、dropbear -p :2222 #后台运行    (这是后台执行,测试成功就要执行这个,或者直接执行,不测试)

v16、dbclient -p 2222 root@127.0.0.1


本文出自 “北极的linux” 博客,请务必保留此出处http://941012521.blog.51cto.com/9253690/1796025

openssh与安全

标签:openssh 安全

原文地址:http://941012521.blog.51cto.com/9253690/1796025

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!