openssh服务优化及sudo授权

1 openssh服务优化

1.1 sshpass工具

非交互式输入用户密码,默认没安装,在epel源中

sshpass -p xxx       直接跟密码
sshpass -f pass.txt  跟存放密码的文件
1.2 rsync和scp的区别
#均是远程拷贝工具,可结合基于key验证
scp:全都拷贝 适用于小文件
rsync:如已拷贝过的文件有所更改,则只拷贝有所更改的文件,适用于大文件
1.3 ssh的优化

服务器端:配置文件路径在/etc/ssh/sshd_config下

#改端口号
Port 22

#提升连接速度
ChallengeResponseAuthentication no         yes改成no
UseDNS no                                  避免dns反向解析
#文件格式详解
Port 22                      #端口号,生产中建议更改
ListenAddress ip             #监听的ip地址,指向内网ip地址可安全
LoginGraceTime 2m
PermitRootLogin yes          #默认ubuntu不允许root远程ssh登录
StrictModes yes              #检查.ssh/文件的所有者,权限等
MaxAuthTries   6     
MaxSessions  10              #同一个连接最大会话
PubkeyAuthentication yes     #基于key验证
PermitEmptyPasswords no      #空密码连接
PasswordAuthentication yes   #基于用户名和密码连接
GatewayPorts no
ClientAliveInterval 10       #单位:秒,空闲多久自动注销登录
ClientAliveCountMax 3        #默认3
UseDNS yes                   #提高速度可改为no
GSSAPIAuthentication yes     #提高速度可改为no
MaxStartups                  #未认证连接最大值,默认值10
Banner /path/file

#以下可以限制可登录用户的办法:黑白名单
AllowUsers user1 user2 user3   #允许登录
DenyUsers                      #不允许登录
AllowGroups                    #组
DenyGroups

客户端:/etc/ssh/ssh_config

#第一次连接不用按yes
StrictHostKeyChecking no

改完重启sshd服务

systemctl restart sshd
1.4 ssh服务的最佳实践
  • 建议使用非默认端口
  • 禁止使用protocol version 1 #早期版本协议
  • 限制可登录用户
  • 设定空闲会话超时时长
  • 利用防火墙设置ssh访问策略仅监听特定的IP地址
  • 基于口令认证时,使用强密码策略,比如:tr -dc A-Za-z0-9_ < /dev/urandom | head -c 12| xargs
  • 使用基于密钥的认证
  • 禁止使用空密码
  • 禁止root用户直接登录
  • 限制ssh的访问频度和并发在线数
  • 经常分析日志

2 sudo授权

sudo常用命令

-i         #切换root权限
-u wei     #指定切换wei用户
- wei      #也是指定切换wei用户,也可不用-切换,完全切换和不完全切换的区别

路径

/etc/sudoers         #单个或少量可房于该文件中,格式也在这文件里,是个文件       
/etc/sudoers.d       #多个时可在路径下建文件单独存放,是个文件夹
## Syntax:
##
##  user    MACHINE=(runas)COMMANDS
##用户或组(组授权要加%在前) 可登录的主机(单个写ip,全部写all)=(代表用户,代表谁) 可执行命令,写绝对路径(用which查看) 
root    ALL=(ALL)   ALL
#实际使用格式要和授权格式相同

#指定用户wei可登录所有主机代表tom和jerry,默认情况为tom,可执行所有命令
wwei ALL=(tom,jerry) ALL
[wei@centos8 ~]$sudo cat /var/log/messages        #使用时需输入密码

编辑工具可用visudo,会检查语法是否错误,visudo -c

授权操作日志记录文件路径在/var/log/secure下

使用sudo得输入自己的密码,确认身份,五分钟内不用再次输密码

User和runas: 
	username
	#uid
    %group_name                #授权组,记得加%
    %#gid                      
	user_alias|runas_alias     #别名
host:
	ip或hostname
	network(/netmask)          #10.0.0.0/24
	host_alias                 #别名
command:
	command name               #完整命令
	directory                  #文件夹,文件夹里的所有指令都授权
	sudoedit
	Cmnd_Alias
	
#别名,格式可为大写字母、数字、下划线
Alias_Type NAME1 = item1,item2,item3 : NAME2 = item4, item5

#1
User_Alias NETADMIN= netuser1,netuser2
Cmnd_Alias NETCMD = /usr/sbin/ip
NETADMIN ALL=(root) NETCMD

#2
User_Alias ADMINUSER = adminuser1,adminuser2
Cmnd_Alias ADMINCMD = /usr/sbin/useradd,/usr/sbin/usermod, /usr/bin/passwd [a-zA-Z]*, !/usr/bin/passwd root
ADMINUSER ALL=(root) NOPASSWD:ADMINCMD,PASSWD:/usr/sbin/userdel
#!排除选项

#3
Defaults:wei runas_default=tom          #两个账号下指定默认账号tom,如需指定其他用户加-u
wei ALL=(tom,jerry) ALL
wei$ sudo -u jerry cmd

%wheel ALL=(ALL) NOPASSWD: ALL #NOPASSWD不用输密码,授权程序时可用

第五周作业

防火墙简介
NAT原理及其他相关工具简介
DNS域名解析
pam模块及搭建私有时间服务器
MYSQL简介
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值