2023年12月13日发(作者:)

二十三、与文件配置

1. 语法

deamom_list : client_list [option1: ]

2. 各参数含义

LOCAL :代表电脑名称不在点的所有电脑,又指电脑名称为Simple Name的所有电脑

UNKNOWN:代表不能解析电脑名称的所有电脑

KNOWN:代表可以解析电脑名称的所有电脑

PARANOID:代表正解与反解不一至的所有电脑

EXCEPT:排除的运算符号

例:禁止所有电脑禁止使用telnet到Red Hat Linux服务器,但允许192.168.0.网段的电脑到Red Hat Linux服务器。

vi /etc/

ALL EXCEPT td:192.168.0

3. Options参数

1) Spawn(触发)

例: 当所有电脑要使用telnet服务时将登录客户端和服务器的信息以邮件文件的形式发送到root帐户中

d:ALL:spawn echo "login attempt from %c to %s" | mail -s swrring root

%c:client information (user@host)

%s:server intermation (daemon@host)

2) DENY

例:拒绝所有服务访问

vi /etc/

ALL:ALL:Deny

注:这样就不需要使用/etc/配置文件

4. 各种示例

1、禁止192.168.0.4主机使用telnet服务连接到Red Hat Linux服务器

vi /etc/

d: 192.168.0.4

2、禁止192.168.1.0网段主机使用ftp服务连接到server端

vi /etc/

vsftpd:192.168.1.0/255.255.255.0 或 vsftpd:192.168.1.

3、只允许192.168.0.0网段电脑可以使用SSH服务连接到服务器,其它电脑均不允许连接。

vi /etc/

sshd:ALL

vi /etc/

sshd:192.168.0.

或 vi /etc/

sshd: ALL EXCEPT 192.168.0.

xinetd Access Control

syntax

语法:

Allow with only_trom = host_pattern

Deny with no_access = host_pattern

例:vi /etc/xinetd.d/telnet

二、 OpenSSH

1、 什么是OpenSSH

1) OpenSSH是SSH(Secure shell,即安全命令壳)协议的免费开源实现。SSH是一种在两个主机之间通过加密和身份

验证机制或者提供安全连接的协议。

2) OpenSSH是开源软件,它提供的客户端程序包括ssh、scp和sftp,可以对包括密码、安全性信息在内的所有数据流进

行加密,从而规避在非安全网络中存在窃听、拦截,以及其他恶意攻击所造成的危害。

3) OpenSSH支持SSH协议的1.3、1.5及2.0版本。自从OpenSSH的2.9版本以来,默认的SSH协议是版本2.0,该协议默

认使用DSA(Digital Signature Algorithm,即数字签名算法)。2、 SSH安装及配置

1) RHEL5中自带OpenSSH软件包,并且己自动安装该软件。

2) 查看SSH软件包安装情况

[root@localhost ~]# rpm -qa | grep ssh

5

5

5

5

openssh-* ssh核心文件

openssh-askpass-* 用于支持SSH口令的GUI管理的文件

openssh-clents-* 用于连接到SSH服务器的客户端文件

openssh-server-* SSH服务器文件

1) 如系统未自动安装则自行安装SSH

rpm -ivh

rpm -ivh

rpm -ivh

rpm -ivh

2) 启动和停止OpenSSH

Service sshd start

Service sshd stop

Service sshd restart

3) ssh配置文件选项及相关说明

/etc/ssh/sshd_config

set nu

13 #Port 22

默认端口号为22,由IANA分配

14 #Protocol 2,1

默认使用的是SSH版本2,SSH版本1只作为辅助选择

15 Protocol 2

默认协议使用的是SSH版本2

18 #ListenAddress ::

指定密钥文件存放的位置

20 # HostKey for protocol version 121 #HostKey /etc/ssh/ssh_host_key

SSH版本1密钥存放位置

22 # HostKeys for protocol version 2

23 #HostKey /etc/ssh/ssh_host_rsa_key

SSH版本2密钥存放位置

27 #KeyRegenerationInterval 1h

密钥间隔1小时重新生成

28 #ServerKeyBits 768

服务器密钥采用468位

33 SyslogFacility AUTHPRIV

将所有SSH消息日志记录在/var/log/secure日志文件中

34 #LogLevel INFO

指定SSH消息日志等级为INFO,如果希望记录所有消息,可将其改为DEBUG

38 #LoginGraceTime 2m

用户被允许的最大登录等待时间为2分钟

39 #PermitRootLogin yes

登录时允许最根用户使用SSH登录,不推荐允许

41 #MaxAuthTries 6

登录时允许最多6次密码或用户错误

43 #RSAAuthentication yes

指定是否允许纯RSA验证,只适用于SSH版本1

44 #PubkeyAuthentication yes

指定是否允许公钥验证,只适用于SSH版本2

45 #AuthorizedKeysFile .ssh/authorized_keys

指定包含公钥的文件

58 #PasswordAuthentication yes

如果用户只想对客户端使用公钥进行验证,不用密码,可以修改为no

59 #PermitEmptyPasswords no

不允许密码为空

60 PasswordAuthentication yes

要求密码验证

66 # Kerberos options

密码认证选项

72 # GSSAPI options

GSSAPI验证选项87 UsePAM yes

使用PAM验证

89 # Accept locale-related environment variables

可接受局部环境变量

93 #AllowTcpForwarding yes

允许TCP转发

96 X11Forwarding yes

允许将X会话通过SSH通道转发到客户端

115 #Banner /some/path

在用户通过验证之前,显示一条Banner信息

4) 指定用户使用SSH远程访问

/etc/

[root@localhost ~]# vi /etc/

#

# This file describes the names of the hosts which are

# *not* allowed to use the local INET services, as decided

# by the '/usr/sbin/tcpd' server.

#

# The portmap line is redundant, but it is left to remind you that

# the new secure portmap uses and . In particular

# you should know that NFS uses portmap!

SSHD:ALL //手动添加。指拒绝所有使用SSH连接主机

/etc/

[root@localhost ~]# vi /etc/

#

# This file describes the names of the hosts which are

# allowed to use the local INET services, as decided

# by the '/usr/sbin/tcpd' server.

#

SSHD:192.168.1. //指允许192.168.1网段的主机能使用SSH连接

3、 SSH客户端

ssh [选项] IP地址

常用选项 -A 使用认证代理转发

-D 动态应用层端口转发

-1 强制SSH版本1

-2 强制SSH版本2

-4 仅使用Ipv4地址

-6 仅使用ipv6地址

-V 显示版本号

-1 使用用户名登录

-X 允许X11连接转发

-x 关闭X11连接转发

-q 静默模式,不显示警告消息

例:使用-V查看当前使用SSH的版本号

[root@localhost CentOS]# ssh -v

OpenSSH_4.3p2, OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008