2019-07-15,第1张

检测到远端XFS服务正在运行中漏洞

临时关闭fsauto服务:

可以通过编辑/etc/inetdconf文件,重新启动Inetd进程来关闭fsauto服务:

1 注释/etc/inetdconf文件中的如下一行:

#fs              stream  tcp    wait nobody /usr/openwin/lib/fsauto    fs

2 重新启动inetd进程:

# ps -elf |grep inetd

    root  138    1  0  Oct 15         0:00 /usr/sbin/inetd

# kill -1 138

solaris 查找文件 find命令

1 find命令格式

 find: [-H | -L] 路径列表 谓词列表

 可以使用:man find 查看命令选项。

2 通过文件名查找法:

 如果你把这个文件放在单个的文件夹里面,只要使用常见的“ls"命令就能方便的查找出来,如果知道了某个文件的文件名,而不知道这个文件放到哪个文件夹,甚至是层层套嵌的文件夹里。举例说明,假设你忘记了sshd_config(ssh 服务器 的配置文件)这个文件在系统的哪个目录下,甚至在系统的某个地方也不知道,则这是可以使用如下命令

find / -name sshd_config 

 这个命令语法看起来很容易就明白了,就是直接在find后面写上 -name,表明要求系统按照文件名查找,最后写上httpdconf这个目标文件名即可。稍等一会系统会在计算机 屏幕 上显示出查找结果列表:

 #find / -name sshd_config

 /var/sadm/pkg/SUNWsshdr/save/pspool/SUNWsshdr/reloc/etc/ssh/sshd_config 

  /etc/ssh/sshd_config 

 如果输入以上查找命令后系统并没有显示出结果,那么不要以为系统没有执行find/ -name sshd_config 命令,而可能是你的系统中没有安装ssh 服务器 ,这时只要你安装了ssh服务器,然后再使用find / -name sshd_config 就能找到这个配置文件了。 

服务器支持 TLS Client-initiated 重协商攻击 (CVE-2011-1473)

SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。

重协商就是大部分TLS连接都以handshake为开始,经过应用数据的交换,最后关闭会话。如果在第一次handshake之后(可能经历了应用数据的交换也可能没有)请求重新协商,就会发起一次新的handshake,对新的安全参数达成一致

关闭命令:ssl renegotiation disable

远端rsh 服务允许部分用户登录。需要禁止rsh 服务 。

方法:

cat /rhosts 查看是否有 + 号,意思是允许所有其他机器访问。 我们主要VI编辑将+去掉即可。(该配置文件,其做用就是控制访问IP)

因为RSH服务不能控制入访因此我们需要禁用内网所有主机的出访服务

禁用RSH出访服务 svcadm disable svc:/network/shell:default

禁用rlogin服务 svcadm disable svc:/network/login:rlogin

检测到远端rsh 服务正在运行中。禁用RSH 服务,改用SSH 代替 。

方法:

1、vi /rhosts 去掉其中的+号

2、vi /etc/default/login

CONSOLE=/dev/console 将这一行#注释掉。

因为RSH服务不能控制入访因此我们需要禁用内网所有主机的出访服务

3、禁用RSH出访服务 svcadm disable svc:/network/shell:default

4、禁用rlogin服务 svcadm disable svc:/network/login:rlogin

SSL 30 POODLE攻击信息泄露漏洞(CVE-2014-3566)

现场次漏洞只存在于服务器,后又发现此漏洞依赖于服务器的5989端口,可以在防火墙禁用此端口或杀掉此进程

方法一 编辑: vi /etc/sysconfig/iptables

添加:-A INPUT -p tcp --dport 5989 -j DROP

-A INPUT -p tcp --sport 5989 -j DROP

重启网络服务:service iptables restart

方法二 根据netstat –tunlp|grep 5989 查找PID ,pwdxPID查看程序路径,如没问题则可以杀死此进程。

POODLE = Padding Oracle On Downgraded Legacy Encryption是最新安全漏洞(CVE-2014-3566)的代号,俗称“贵宾犬”漏洞。 此漏洞是针对 SSL 30中CBC模式加密算法的一种padding oracle攻击,可以让攻击者获取 SSL 通信中的部分信息明文,如果将明文中的重要部分获取了,比如cookie,session,则信息的安全出现了隐患。

从本质上说,这是 SSL 设计上的缺陷, SSL 先认证再加密是不安全的。

修复措施:

禁用sslv3协议

不同的web server不尽相同。这边列举主流的服务器的禁用方式

Nginx服务器:

注意:nginx和openssl套件版本过低可能会导致无法启用新型加密套件和算法,请升级最新版本。

(openssl101+版本支持TLS11和TLS12协议)

ssl_protocols TLSv1 TLSv11 TLSv12; 

ssl_ciphers ECDH:AESGCM:HIGH:!RC4:!DH:!MD5:!aNULL:!eNULL;

ssl_prefer_server_ciphers  on;

apache服务器:

注意:apache和openssl套件版本过低可能会导致无法启用新型加密套件和算法,请升级最新版本。

(openssl101+版本支持TLS11和TLS12协议)

apache2X版本:

SSLProtocol  all -SSLv2 -SSLv3

SSLCipherSuite ECDH:AESGCM:HIGH:!RC4:!DH:!MD5:!aNULL:!eNULL

SSLHonorCipherOrder on

Tomcat服务器:

JDK版本过低也会带来不安全漏洞,请升级JDK为最新版本。升级JDK风险请安按照系统升级风险酌情考虑。

(先备份再配置,低版本的配置后有启动不了的风险,请升级tomcat和jdk版本,JDK17及以上支持TLS12协议)

maxThreads="150" SSLEnabled="true" scheme="https" secure="true"

keystoreFile="keystore/domainjks"  keystorePass="证书密码"

clientAuth="false" sslProtocol="TLS"

ciphers="TLS_RSA_WITH_AES_128_GCM_SHA256,

TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,

TLS_RSA_WITH_AES_128_CBC_SHA,

TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,

TLS_RSA_WITH_AES_128_CBC_SHA256,

TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,

SSL_RSA_WITH_3DES_EDE_CBC_SHA,

                        TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA" />

使用apr的tomcat(windows环境路径请使用“\”,证书文件是for apache压缩包中的三个文件)

maxThreads="150"

protocol="orgapachecoyotehttp11Http11AprProtocol"

enableLookups="false" disableUploadTimeout="true"

acceptCount="100" scheme="https" secure="true"

SSLEnabled="true"

SSLProtocol="all -SSLv2 -SSLv3"

SSLCertificateFile="conf/domiancomcrt"

SSLCertificateKeyFile="conf/domiancomkey"

SSLCertificateChainFile="conf/root_bundlecrt"

               SSLCipherSuite="ECDH:AESGCM:HIGH:!RC4:!DH:!MD5:!aNULL:!eNULL" />

SSH是Secure Shell Protocol的简写。在进行数据传输之前,SSH先对联机数据包通过加密技术进行加密处理,加密后在进行数据传输。确保了传递的数据安全。

SSH是专为远程登陆会话和其他网络服务提供的安全性协议。利用SSH协议可以有效的防止远程管理过程中的信息泄漏问题。

在默认状态下,SSH服务主要提供两个服务功能;一个是提供类似telnet远程联机服务器的服务,即上面提到的SSH服务:另一个类似FTP服务的sftp-server,借助SSH协议来传输数据的,提供更安全的SFTP服务 提醒SSH客户端(ssh命令)还包含一个很有用的远程安全拷贝命令scp,也是通过ssh协议工作的

小结:

1)SSH是安全的加密协议,用于远程连接Linux服务器。

2)SSH默认的端口是22,安全协议版本是SSH2,除了2还有ssh1有漏洞

3)SSH服务器端主要包含两个服务器功能SSH远程连接,SFTP服务。

4)Linux SSH客户端包含ssh远程连接命令,以及远程拷贝scp命令等。

修改SSH服务的运行参数,是通过修改配置文件/etc /ssh/sshd_config实现的。

Port 52114 (ssh默认连接端口是22 修改他)

PermitRootLogin no(禁止远程root登陆)

PermitEmptyPasswords no(禁止空密码的登陆)

UseDNS no(不适用DNS)

ListenAddress 17216161:22 (只监听内网IP 可以加端口号)

在远程管理linux系统基本上都要使用到ssh,原因很简单:telnet、FTP等传输方式是‍以明文传送用户认证信息,本质上是不安全的,存在被网络窃听的危险。SSH(Secure Shell)目前较可靠,是专为远程登录会话和其他网络服务提供安全性的协议。利用SSH协议可以有效防止远程管理过程中的信息泄露问题,透过SSH可以对所有传输的数据进行加密,也能够防止DNS欺骗和IP欺骗。

ssh_config和sshd_config都是ssh服务器的配置文件,二者区别在于,前者是针对客户端的配置文件,后者则是针对服务端的配置文件。两个配置文件都允许你通过设置不同的选项来改变客户端程序的运行方式。下面列出来的是两个配置文件中最重要的一些关键词,每一行为“关键词&值”的形式,其中“关键词”是忽略大小写的。

‍‍1、编辑 /etc/ssh/ssh_config 文件

Site-wide defaults for various options

Host

ForwardAgent no

ForwardX11 no

RhostsAuthentication no

RhostsRSAAuthentication no

‍ RSAAuthentication yes

PasswordAuthentication yes

FallBackToRsh no

UseRsh no

BatchMode no

CheckHostIP yes

StrictHostKeyChecking no

IdentityFile ~/ssh/identity

Port 22

Cipher blowfish

EscapeChar ~

下面对上述选项参数逐进行解释:

Site-wide defaults for various options

带“#”表示该句为注释不起作,该句不属于配置文件原文,意在说明下面选项均为系统初始默认的选项。说明一下,实际配置文件中也有很多选项前面加有“#”注释,虽然表示不起作用,其实是说明此为系统默认的初始化设置。

Host

"Host"只对匹配后面字串的计算机有效,“ ”表示所有的计算机。从该项格式前置一些可以看出,这是一个类似于全局的选项,表示下面缩进的选项都适用于该设置,可以指定某计算机替换 号使下面选项只针对该算机器生效。

ForwardAgent no

"ForwardAgent"设置连接是否经过验证代理(如果存在)转发给远程计算机。

ForwardX11 no

"ForwardX11"设置X11连接是否被自动重定向到安全的通道和显示集(DISPLAY set)。

RhostsAuthentication no

"RhostsAuthentication"设置是否使用基于rhosts的安全验证。

RhostsRSAAuthentication no

"RhostsRSAAuthentication"设置是否使用用RSA算法的基于rhosts的安全验证。

RSAAuthentication yes

"RSAAuthentication"设置是否使用RSA算法进行安全验证。

PasswordAuthentication yes

"PasswordAuthentication"设置是否使用口令验证。

FallBackToRsh no

"FallBackToRsh"设置如果用ssh连接出现错误是否自动使用rsh,由于rsh并不安全,所以此选项应当设置为"no"。

UseRsh no

"UseRsh"设置是否在这台计算机上使用"rlogin/rsh",原因同上,设为"no"。

BatchMode no

"BatchMode":批处理模式,一般设为"no";如果设为"yes",交互式输入口令的提示将被禁止,这个选项对脚本文件和批处理任务十分有用。

CheckHostIP yes

"CheckHostIP"设置ssh是否查看连接到服务器的主机的IP地址以防止DNS欺骗。建议设置为"yes"。

StrictHostKeyChecking no

"StrictHostKeyChecking"如果设为"yes",ssh将不会自动把计算机的密匙加入"$HOME/ssh/known_hosts"文件,且一旦计算机的密匙发生了变化,就拒绝连接。

IdentityFile ~/ssh/identity

"IdentityFile"设置读取用户的RSA安全验证标识。

Port 22

"Port"设置连接到远程主机的端口,ssh默认端口为22。

Cipher blowfish

“Cipher”设置加密用的密钥,blowfish可以自己随意设置。

EscapeChar ~

“EscapeChar”设置escape字符。

2、编辑 /etc/ssh/sshd_config 文件:‍

This is ssh server systemwide configuration file

Port 22

ListenAddress 19216811

HostKey /etc/ssh/ssh_host_key

ServerKeyBits 1024

LoginGraceTime 600

KeyRegenerationInterval 3600

PermitRootLogin no

IgnoreRhosts yes

IgnoreUserKnownHosts yes

StrictModes yes

X11Forwarding no

PrintMotd yes

SyslogFacility AUTH

LogLevel INFO

RhostsAuthentication no

RhostsRSAAuthentication no

RSAAuthentication yes

PasswordAuthentication yes

PermitEmptyPasswords no

AllowUsers admin

‍下面逐行说明上面的选项设置:

Port 22

"Port"设置sshd监听的端口号。

ListenAddress 19216811

"ListenAddress”设置sshd服务器绑定的IP地址。

HostKey /etc/ssh/ssh_host_key

"HostKey”设置包含计算机私人密匙的文件。

ServerKeyBits 1024

"ServerKeyBits”定义服务器密匙的位数。

LoginGraceTime 600

"LoginGraceTime”设置如果用户不能成功登录,在切断连接之前服务器需要等待的时间(以秒为单位)。

KeyRegenerationInterval 3600

"KeyRegenerationInterval”设置在多少秒之后自动重新生成服务器的密匙(如果使用密匙)。重新生成密匙是为了防止用盗用的密匙解密被截获的信息。

PermitRootLogin no

"PermitRootLogin”设置是否允许root通过ssh登录。这个选项从安全角度来讲应设成"no"。

IgnoreRhosts yes

"IgnoreRhosts”设置验证的时候是否使用“rhosts”和“shosts”文件。

IgnoreUserKnownHosts yes

"IgnoreUserKnownHosts”设置ssh daemon是否在进行RhostsRSAAuthentication安全验证的时候忽略用户的"$HOME/ssh/known_hosts”

StrictModes yes

"StrictModes”设置ssh在接收登录请求之前是否检查用户家目录和rhosts文件的权限和所有权。这通常是必要的,因为新手经常会把自己的目录和文件设成任何人都有写权限。

X11Forwarding no

"X11Forwarding”设置是否允许X11转发。

PrintMotd yes

"PrintMotd”设置sshd是否在用户登录的时候显示“/etc/motd”中的信息。

SyslogFacility AUTH

"SyslogFacility”设置在记录来自sshd的消息的时候,是否给出“facility code”。

LogLevel INFO

"LogLevel”设置记录sshd日志消息的层次。INFO是一个好的选择。查看sshd的man帮助页,已获取更多的信息。

RhostsAuthentication no

"RhostsAuthentication”设置只用rhosts或“/etc/hostsequiv”进行安全验证是否已经足够了。

RhostsRSAAuthentication no

"RhostsRSA”设置是否允许用rhosts或“/etc/hostsequiv”加上RSA进行安全验证。

RSAAuthentication yes

"RSAAuthentication”设置是否允许只有RSA安全验证。

PasswordAuthentication yes

"PasswordAuthentication”设置是否允许口令验证。

PermitEmptyPasswords no

"PermitEmptyPasswords”设置是否允许用口令为空的帐号登录。

AllowUsers admin

"AllowUsers”的后面可以跟任意的数量的用户名的匹配串,这些字符串用空格隔开。主机名可以是域名或IP地址。

通常情况下我们在连接 OpenSSH服务器的时候假如 UseDNS选项是打开的话,服务器会先根据客户端的 IP地址进行 DNS PTR反向查询出客户端的主机名,然后根据查询出的客户端主机名进行DNS正向A记录查询,并验证是否与原始 IP地址一致,通过此种措施来防止客户端欺骗。平时我们都是动态 IP不会有PTR记录,所以打开此选项也没有太多作用。我们可以通过关闭此功能来提高连接 OpenSSH 服务器的速度。

1)执行命令生成私钥和公钥 ssh-keygen -t dsa 如图:

3)我们切换过去就不需要密码了 如图

在管理员模式#下运行

apt-get install openssh-server

安装完成后如下显示

检查ssh服务开启状态

ps -s | grep ssh

坑爹的发现居然SSHD(SSH-SERVER)服务没有起来

通过以下命令启动ssh服务

service ssh start

/etc/initd/ssh start

又一次坑爹的发现SSHD(SSH-SERVER)服务依然没有起来

服务开启判断方法

在ubuntu服务器上允许

ssh localhost

如果出现以下情况表示22端口没有正常开启

再一次安装openssh-server

系统会检查版本以及更新包的情况

修改SSH_CONFIG文件

vi /etc/ssh/ssh_config

最终必杀计:

重启

(可以通过图形或者命令行界面输入reboot进行重启)

果然重启后就都正常了。

外网telnet IP 22端口测试。

  一、配置openssh服务器

  

  1、ssh的配置文件是/etc/ssh/ssh_config,一般不要修改!

  2、启动服务器!

  #ntsysv =>确认将sshd前面的勾已打上!

  3、手工启动OpenSSH:

  #service sshd start

  #service sshd restart(重新启动)

  4、停止服务器:

  #service sshd stop

  

  二、使用OpenSSH客户端

  

  Redhat linux 9默认已安装了OpenSSH的客户端,客户端和服务器连接时,可以使用两种验证方式:基于口令的验证方式和基于密匙的验证方式!

  1、基于口令的验证方式

  这种验证方式要求用户输入用户名称和密码!若没有指定用户名称和密码,则默认使用当前在客户机上的用户名!

  

  例1:直接登陆

  [root@wljs /]#ssh 2104516017

  则登陆用户名为客户机当前用户名!

  例2:指定用户名登陆

  [root@wljs /]#ssh wwz@2104516017

  或: [root@wljs /]#ssh –l wwz 2104516017

  上面过程结束后,系统将会提示你输入用户名和密码!

  

  2、基于密匙的验证方式

  使用密匙的验证方式,用户先需要为自己创建一对密匙:公匙和私匙。(公匙用在要登陆的服务器上)

  OpenSSH公开密匙的密码体制有RSA、DSA!

  创建密匙:

  例:[root@wljs /]#ssh-keygen –t rsa

  回车后,要求输入使用密匙时的口令!这样便生成了公匙和私匙:放在用户主目录下的ssh目录下,文件名:id_rsapub和id_rsa!必须将公匙复制到登陆的服务器的~/ssh/目录下,并改名为:authorized_keys!然后,便可使用密匙方式登陆!

  #ssh [–l username] ip地址或主机名

  

  三、OpenSSH上常用的命令

  

  1、不登陆远程系统使用命令

  #ssh 2104516017 [命令] [参数]

  2、本地系统和远程系统间文件的传输

  #scp atxt root@2104516017:/btxt

  #scp root@2104516017:/btxt /ctxt

  3、sftp命令

  Sftp 命令和ftp命令类似,它是OpenSSH提供的网络传输文件的小工具,它更加安全,使用和ftp相似的命令:主要有如下几个:

  1、登陆

  #ftp 2104516017

  2、ftp 会话的打开与关闭

  打开:open 2104516027

  关闭:close

  3、文件的传输

  从ftp服务器上得到文件:

  Get atxt

  向ftp上放文件

  Put atxt

  4、退出ftp

  Bye

  5、其他

  bell:每个命令执行完毕后计算机响铃一次

  Cd ,ls 等一些常见命令也可以在ftp服务器目录中使用!

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 2019-07-15

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情