设为首页 收藏本站
查看: 623|回复: 0

[经验分享] linux 安全应用 1

[复制链接]

尚未签到

发表于 2018-5-18 10:11:43 | 显示全部楼层 |阅读模式
  Linux安全应用    (用户  文件   sshd   sudo)
  selinux
  数据加密  数据解密   https
  ++++++++++++++++++++++++++++++++++
  什么是安全?
  保护谁的安全? 服务器的安全
  怎么保护?
  物理安全(规则制度)
  本地安全 (用户  文件) 用户从本地登录 或ssh登录后可以执行的操作(登录用户有什么使用权限和管理权限对文件的访问权限服务的配置系统文件)
  网络安全 (防火墙软件/硬件))                                iptables   tcp/udp  端口号
  数据安全(数据加密)  数据在网路中传输不安全,需要加密
  数据在网络中传输时,会受到那些攻击?
  堵车    篡改(数据完整性校验)    截获(加密)    冒名顶替(数字签名)
  ++++++++++++++++++++++++++++++++
  一、服务本地安全(系统加固)  /etc/login.defs   (如用户uid起始等等不加选项 默认时遵循配置文件)
  1.1  用户账号安全   阻止普通用户关机
  1.2  设置账号有效期
  useradd   zengye
  passwd   zengye
  chage  -E  2015-12-31  zengye
  设置过期时间
  

  chage  -l    zengye  查看用户密码相关信息
  chage -d 0 zengye
  

  useradd    tom
  echo  123   |   passwd    --stdin    tom   初始密码
  chage   -d   0     tom    强制用户首次登录系统,修改密码
  

  1.3 锁定账号
  usermod    -L/U     tom
  passwd   -l/u   tom
  passwd  -S   tom
  passwd   -d   tom
  

  /etc/passwd       /etc/shadow
  添加系统用户使用的配置文件   /etc/login.defs
  相关的文件 /etc/skel/
  /etc/group
  

  useradd -s -m -g -u -G 用户
  useradd -s  /sbin/nologin   服务的访问帐号,进程的执行者
  

  usermod -u -g  -G  -s -U  -L
  groupadd  tea
  usermod -G tea zhang 将这个用户加到组里有这个组权限
  

  

  userdel -r 用户名(工作不能这样删该用户的所有文件都在家下 要先备份出来 再删)
  

  vim ~/.bash_logout  (用户退出时,执行该文件中命令操作)
  rm -fr  /home/zhang/*
  

  

  用户级配置文件(只对自己有效,如果系统的也写。这个也写,遵循这个)
  ~/.bashrc (这两个都写 这个生效)
  ~/.bash_profile
  系统级配置文件(对所有用户有效)
  /etc/profile
  /etc/bashrc
  全局变量 或命名别名
  

  定义一个变量可以给他做成全局
  [root@svr6 ~]# echo $PATH
  /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
  [root@svr6 ~]# mkdir /shell
  [root@svr6 ~]# PATH=$PATH:/shell
  [root@svr6 ~]# echo $PATH
  /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/shell]:/shell
  [root@svr6 ~]# vim ~/.bash_profile
  PATH=$PATH:/shell
  [root@svr6 ~]# echo $PATH (永久 再开一个终端也有)
  /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/shell:/root/bin:/shell
  

  

  

  

  # awk -F ":" '{print $1,$7,$6}'   /etc/passwd  查看用户的名字 登录的shell 家目录
  

  # awk -F ":" '$7=="/sbin/nologin" {print $1,$7,$6}'  /etc/passwd 查看不能登录系统的用户 名字家目录,shell
  

  # awk -F ":" '$7=="/sbin/nologin" {print $1,$4}'  /etc/passwd
  

  

  # awk -F ":" ' {print $1,$4}'  /etc/group   查看组的用户名和成员
  # awk -F ":" '$1="zhang" {print $1,$4}'  /etc/group  查看zhang这个组的用户
  

  

  别名:1. vim /etc/bashrc  alias my='ls'  (针对全体用户都生效 再开一个终端测试)
  2. alias yy=hostname (临时生效,只应用当前用户,关闭端口或切换别的用户失效)
  3.vim /root/.bashrc  alias m=ls  (永久有效,但不能切换到别的用户中使用)
  

  设置history历史记录个数
  配置文件 /etc/profile   /etc/bashrc
  HISTSIZE=1000  改成HISTSIZE=10
  #source /etc/profile 或 重启就行 (bash /etc/profile 不行) 历史记录命令就只有保存10个
  

  history -c 清空历史命令
  #history
  #!h 执行最近一次h开头命令
  

  设置历史命令执行的时间 /etc/bashrc  /etc/profile
  最后一行添加: export HISTTIMEFORMAT="%F %H:%M "
  再开一个终端测试  #history
  

  

  vim /etc/services (所有服务端口号,配置文件)
  

  

  伪装登录提示(level  3)
  修改文件内容,隐藏操作系统的版本和内核版。
  /etc/issue    (用户本地登录的提示信息)
  /etc/issue.net  (用户网络登录的提示信息)
  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  2   文件系统安全
  ext2   ext3   ext4
  mount    /dev/sdb2    /disk2 (默认挂载)
  mount    -t  ext4    -o   选项,选项    /dev/sdb2    /disk2
  

  man   mount
  开机挂载设备  /etc/fstab
  /etc/rc.local
  defaults 默认挂载选项包括那些?
  rw, suid, dev, exec, auto, nouser, async, and relatime
  

  noexec   禁止运行二进制文件
  nosuid   禁用SUID、SGID特殊权限
  

  mount    -t  ext4    -o   noexec,nosuid    /dev/sdb2    /disk2
  

  

  3 保护文件   (系统配置   服务的配置)
  EXT3/EXT4的文件属性控制
  文件的特殊属性
  i  不可变(immutable)(不能被mv   rm   写  )只能读
  a  仅可追加(append only)  仅追加 不能vim进去加
  

  chattr   +i   /etc/passwd (
  chattr   -i   /etc/passwd
  

  chattr  +i  /etc/resolv.conf(不能被mv   rm   写,但是可以拷贝,拷贝走了就没有i属性)
  lsattr      /etc/resolv.conf (查看该文件属性)
  

  [root@room1pc01 ~]# lsattr /etc/rc.d/rc.local
  ----i--------e- /etc/rc.d/rc.local
  [root@room1pc01 ~]# tail -1 /etc/rc.d/rc.local
  echo Taren1 | passwd --stdin root
  

  

  

  chattr +a /etc/passwd(只能对这个文件追加 创用户会报错)
  chattr -a /etc/passwd (取消a属性)
  

  [root@room9pc00 mysql]# chattr  -i /etc/passwd
  [root@room9pc00 mysql]# lsattr /etc/passwd
  

  网卡 网关  dns  主机名 /etc/hosts  服务主配置文件 一般只对他们设置这种特殊属性让他们只能看
  ————————————————————————————————————————————————————————————
  

  

  ++++++++++++++++++++++++++++++++++++
  

  

  

  禁用非必要的系统服务
  

  chkconfig   --add  --del --list --level
  

  [root@room1pc01 ~]# ntsysv 可以查看所有服务是否开机自启 (*开机自启)
  

  #chmod -x /etc/init.d/* (禁止普通用户使用服务脚本启动暂停)
  

  

  文件系统安全
  

  

  

  10G   /dev/sdb
  分区     格式化    挂载
  fdisk   mkfs    mount   -o 选项,选项
  ext4
  

  

  手动挂载:
  开机自动挂:  /etc/fstab   /etc/rc.local
  触发挂载:  /etc/auto.master
  /etc/init.d/autofs  restart
  

  

  

  

  defaults 包含哪些参数
  

  man
  

  mount -o  nosuid,noexec /dev/sdb1 /disk1 (挂载一般接这样的参数)
  

  

  文件权限种利:
  普通: rwx 421
  特殊: suid sgid  粘赤位
  S  S      T
  s   s     t   x
  

  

  suid让用户执行文件时候,身份切换成文件的所有者
  

  普通用户创建用户 需要/usr/sbin/useradd 给s权限才能创建
  [root@room1pc01 ~]# which useradd
  /usr/sbin/useradd
  [root@room1pc01 ~]# useradd tom
  [root@room1pc01 ~]# echo 1 |passwd --stdin tom
  更改用户 tom 的密码 。
  passwd: 所有的身份验证令牌已经成功更新。
  [root@room1pc01 ~]# su tom
  [tom@room1pc01 root]$ useradd zhang
  bash: /usr/sbin/useradd: 权限不够
  [tom@room1pc01 root]$ ll /usr/sbin/useradd
  -rwxr-x---. 1 root root 103096 4月   7 2015 /usr/sbin/useradd
  [tom@room1pc01 root]$ exit
  exit
  [root@room1pc01 ~]# chmod u+s /usr/sbin/useradd
  [root@room1pc01 ~]# ll /usr/sbin/useradd
  -rwsr-x---. 1 root root 103096 4月   7 2015 /usr/sbin/useradd
  [root@room1pc01 ~]# su tom
  [tom@room1pc01 root]$ useradd zhang
  bash: /usr/sbin/useradd: 权限不够
  [tom@room1pc01 root]$ exit
  exit
  [root@room1pc01 ~]# chmod +x /usr/sbin/useradd
  [root@room1pc01 ~]# su tom
  [tom@room1pc01 root]$ useradd zhang
  [tom@room1pc01 root]$ ll /usr/sbin/useradd
  -rwsr-x--x. 1 root root 103096 4月   7 2015 /usr/sbin/useradd
  

  1.粘只位(管理员给一个目录其它用户o+t权限,别的用户不能对该目录或该目录写不属于自己用户的文件有修改,增加,删除权限,可以看)
  [root@svr7 ~]# mkdir /publ
  [root@svr7 ~]# chmod 777 /publ
  [root@svr7 ~]# ls -dl /publ/
  drwxrwxrwx. 2 root root 4096 3月   6 05:10 /publ/
  [root@svr7 ~]# chmod o+t /publ/
  [root@svr7 ~]# su - zhang
  [zhang@svr7 ~]$ cd /publ/
  [zhang@svr7 publ]$ touch 1.txtx
  [zhang@svr7 publ]$ mv 1.txtx  11
  [zhang@svr7 publ]$ ls
  11
  [zhang@svr7 publ]$ cd
  [zhang@svr7 ~]$ rm -fr /publ/
  rm: 无法删除"/publ": 权限不够
  [zhang@svr7 ~]$ exit
  logout
  [root@svr7 publ]# su - tc
  [tc@svr7 ~]$ cd /publ/
  [tc@svr7 publ]$ ls
  11
  [tc@svr7 publ]$ vim 11 (不能修改,只读)
  [tc@svr7 publ]$ mv 11 1
  mv: 无法将"11" 移动至"1": 不允许的操作
  [tc@svr7 publ]$ ls
  11
  [tc@svr7 publ]$ ls -ld 1.txt
  -rw-rw-r--. 1 zhang zhang 0 3月   6 05:13 1.txt
  [tc@svr7 publ]$ exit
  logout
  [root@svr7 ~]# su - zhang
  [zhang@svr7 ~]$ cd /publ/
  [zhang@svr7 publ]$ ls
  1.txt
  [zhang@svr7 publ]$ mv 1.txt 11.txt
  [tc@svr7 ~]$ ls -ld /publ/
  drwxrwxrwt. 2 root root 4096 3月   6 05:15 /publ/
  

  

  ACL权限可以为个别普通用户或组单独使用这个文件的权限。tc妹妹(单独给某个用户使用权限)
  [root@svr7 ~]# useradd zhang
  [root@svr7 ~]# useradd tc
  [root@svr7 ~]# mkdir /nsd
  [root@svr7 ~]# chmod 750 /nsd
  [root@svr7 ~]# ls -lhd /nsd
  drwxr-x---. 2 root root 4.0K 3月   6 05:03 /nsd
  [root@svr7 ~]# setfacl -m u:tc:rwx /nsd
  [root@svr7 ~]# su - tc
  [tc@svr7 ~]$ cd /nsd
  [tc@svr7 ~]$ ls -lhd /nsd
  drwxr-x---+ 2 root root 4.0K 3月   6 05:03 /nsd
  [tc@svr7 ~]$ exit
  [root@svr7 ~]# su - zhang
  [zhang@svr7 ~]$ cd /nsd
  -bash: cd: /nsd: 权限不够
  [zhang@svr7 ~]$ ls -lhd /nsd
  drwxr-x---+ 2 root root 4.0K 3月   6 05:03 /nsd
  

  
[root@room1pc01 桌面]# mkdir /tiantan

[root@room1pc01 桌面]# mkdir /tedu
[root@room1pc01 桌面]# useradd tc
[root@room1pc01 桌面]# setfacl -m u:tc:rwx /tedu  
[root@room1pc01 桌面]# getfacl
Usage: getfacl [-aceEsRLPtpndvh] file ...
Try `getfacl --help' for more information.
[root@room1pc01 桌面]# getfacl /tedu
getfacl: Removing leading '/' from absolute path names
# file: tedu
# owner: root
# group: root
user::rwx
user:tc:rwx
group::r-x
mask::rwx
other::r-x

[root@room1pc01 桌面]# setfacl -x u:tc /tedu
[root@room1pc01 桌面]# getfacl /tedu
getfacl: Removing leading '/' from absolute path names
# file: tedu
# owner: root
# group: root
user::rwx
group::r-x
mask::r-x
other::r-x

[root@room1pc01 桌面]# mkdir /data/aa

[root@room1pc01 桌面]# setfacl -Rm u:tc:rwx /data/aa
[root@room1pc01 桌面]# getfacl /data/aa
getfacl: Removing leading '/' from absolute path names
# file: data/aa
# owner: root
# group: root
user::rwx
user:tc:rwx
group::r-x
mask::rwx
other::r-x

[root@room1pc01 桌面]# setfacl -dm u:tc:rwx /tiantan
[root@room1pc01 桌面]# getfacl /tiantan
getfacl: Removing leading '/' from absolute path names
# file: tiantan
# owner: root
# group: root
user::rwx
group::r-x
other::r-x
default:user::rwx
default:user:tc:rwx
default:group::r-x
default:mask::rwx
default:other::r-x

[root@room1pc01 桌面]# mkdir /tiantan/abc

[root@room1pc01 桌面]# getfacl /tiantan/abc
getfacl: Removing leading '/' from absolute path names
# file: tiantan/abc
# owner: root
# group: root
user::rwx
user:tc:rwx
group::r-x
mask::rwx
other::r-x
default:user::rwx
default:user:tc:rwx
default:group::r-x
default:mask::rwx
default:other::r-x

[root@room1pc01 桌面]# su - tc
[tc@room1pc01 ~]$ mkdir /tiantan/aa
mkdir: 无法创建目录"/tiantan/aa": 权限不够
[tc@room1pc01 ~]$ mkdir /tiantan/abc/aa
[tc@room1pc01 ~]$ su - root
密码:
[root@room1pc01 ~]# setfacl -m u:tc:rwx /tiantan
[root@room1pc01 ~]# getfacl /tiantan
getfacl: Removing leading '/' from absolute path names
# file: tiantan
# owner: root
# group: root
user::rwx
user:tc:rwx
group::r-x
mask::rwx
other::r-x
default:user::rwx
default:user:tc:rwx
default:group::r-x
default:mask::rwx
default:other::r-x


[root@room1pc01 ~]# su - tc
[tc@room1pc01 ~]$ mkdir /tiantan/tt
  

  

  #lsof  查看哪些程序在打开哪些文件或目录(进程打开的文件)有时候umount卸载不掉 就查看下
  

  

  

  系统分区规划
  

  根
  /boot
  交换分区 硬盘划分出来(当内存不够用使用)
  

  /var (可以做LV)  /home   (可以做LV逻辑卷)
  

  

  

  ++++++++++++++++++++++++++++++++++++
  二、用户切换与提权
  2.1  用户切换 su
  su      用户名      su      bob2
  su  -   用户名      su   -   bob2
  su  -               切换到管理员root用户
  

  

  

  

  su  [-]  -c  "命令"  [目标用户]
  

  [zhang@svr6 ~]$ su -c "service httpd status" root
  密码:
  httpd (pid  1915) 正在运行...
  [zhang@svr6 ~]$
  

  

  

  su 操作的日志文件   cat    /var/log/secure
  

  /etc/profile  (系统级配置 对登录系统的所有用户生效)
  ~/.bash_profile  (用户级配置 只对当前用户生效)
  HISTSIZE=1000
  HISTTIMEFORMAT='%F %T'
  export   HISTSIZE    HISTTIMEFORMAT
  

  ++++++++++++++++++++++++++++++++
  2.2  用户提权 sudo
  Super or another Do,超级执行
  管理员预先为用户设置执行许可
  被授权用户有权执行授权的命令,验证自己的口令
  

  普通用执行提权命令的格式
  用法1:sudo  特权命令
  用法2:sudo   [-u  目标用户]   特权命令
  

  

  

  提权修改的配置文件   /etc/sudoers
  

  2.2  用户提权 sudo
  

  

  白
  运维数据库服务 lom
  维护网站服务 lucy
  

  晚
  运维数据库服务 tom
  维护网站服务 bob
  

  

  httpd  mysql  运行。。。。
  useradd  lom lucy  tom  bob 密码123456
  ——————  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  提权实验:
  ++++++++++
  [root@svr7 ~]# hostname
  svr7.tedu.cn
  [root@svr7 ~]# cat /etc/hosts
  127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
  [root@svr7 ~]# which service
  /sbin/service
  [root@svr7 ~]# which vim
  /usr/bin/vim
  

  [root@svr7 ~]# useradd tom
  [root@svr7 ~]# echo 123456 |passwd --stdin tom
  [root@svr7 ~]# visudo   / vim   /etc/sudoers (两种方式进入提权配置文件)
  

  98 root    ALL=(ALL)       ALL
  99 tom     localhost,svr7.tedu.cn=/sbin/service httpd *  ,/usr/bin/vim /etc     /httpd/conf/httpd.conf
  

  测试:(提权)
  [root@svr7 ~]# su - tom
  [tom@svr7 ~]$ sudo -l (第一次输密码)
  [tom@svr7 ~]$ sudo /usr/bin/vim /etc/httpd/conf/httpd.conf
  [tom@svr7 ~]$ sudo /sbin/service  httpd status
  httpd (pid  3723) 正在运行...
  _____________________________________________________________
  

  99 tom     localhost,svr7.tedu.cn=/usr/sbin/*,!/usr/sbin/useradd  (除这一个命令没给权,其它tom都能做)
  

  把用户加入一个组提权(晚班组)
  

  groupadd  wenbanmin
  usermod  -G wenbanmin tom
  usermod  -G wenbanmin lom
  

  99 %wenbanmin    localhost,svr7.tedu.cn=/sbin/service httpd *,/usr/bin/vim /etc   /httpd/conf/httpd.conf
  

  

  

  测试效果一样
  ——————————————————
  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  +++提权后用户操作的日志文件++、
  

  服务器记录通过普通用户执行过的提权命令操作(管理员可以查看你执行的命令)
  启用日志文件/etc/sudoers
  vim /etc/sudoers
  Defaults logfile="/var/log/sudo"
  

  [tom@svr7 ~]$ sudo /sbin/service httpd stop
  停止 httpd:
  #tailf /var/log/sudo
  Mar  6 07:28:56 : tom : TTY=pts/2 ; PWD=/home/tom ; USER=root ;
  COMMAND=/sbin/service httpd stop
  

  

  ——————————————————————————————————————————————
  

  提权时设置别名(别名必须使用大写字母) 管理软件包 磁盘 网络 服务
  *先定义后使用,但可以只定义不使用
  给用户设置别名  User_Alias      别名名称=用户名列表
  给主机设置别名  Host_Alias      别名名称=主机名列表
  给命令设置别名  Cmnd_Alias      别名名称=命令列表
  

  99 %wenbanmin    localhost,svr7.tedu.cn=NETWORKING,SOFTWARE
  

  

  Cmnd_Alias NETWORKING = /sbin/route, /sbin/ifconfig, /bin/ping, /sbin/dhclient, /usr/bin/net, /sbin/iptables, /usr/bin/rfcomm, /usr/bin/wvdial, /sbin/iwconfig, /sbin/mii-tool
  

  Cmnd_Alias SOFTWARE = /bin/rpm, /usr/bin/up2date, /usr/bin/yum
  

  

  

  

  

  ___________________________________________________________________________________________________________
  编辑提权配置文件
  vim   /etc/sudoers
  visudo    打开配置文件的专属命令
  

  配置文件语法格式
  普通用户名    主机列表=命令列表
  

  %用户组名    主机列表=命令列表
  

  jim    localhost,ser5=/sbin/*
  

  visudo    #管理员给普通用户提权
  %wheel        ALL=(ALL)       NOPASSWD: ALL
  

  mike    localhost,svr1=/sbin/*, !/sbin/ifconfig  eth0
  bob     localhost,room9pc00=/etc/init.d/httpd *
  %webadmingrp     localhost,room9pc00=/etc/init.d/httpd *
  :wq
  

  useradd  lily
  echo   123   |   passwd --stdin  lily
  usermod  -G   wheel   lily
  

  grep   wheel   /etc/group
  

  

  useradd   mike
  echo  123  |  passwd --stdin  mike
  

  groupadd  webadmingrp
  useradd  jim
  useradd  tom
  echo  123  |  passwd --stdin  tom
  echo  123  |  passwd --stdin  jim
  

  提权用户登录系统测试命令能否使用
  su  -  bob
  sudo   -l   查看可以使用命令
  sudo  /etc/init.d/httpd  status  执行可以使用的命令
  

  

  提权时设置别名(别名必须使用大写字母)
  *先定义后使用,但可以只定义不使用
  给用户设置别名  User_Alias      别名名称=用户名列表
  给主机设置别名  Host_Alias      别名名称=主机名列表
  给命令设置别名  Cmnd_Alias    别名名称=命令列表
  

  User_Alias   ADMINS = jsmith, mikem
  

  Host_Alias     MAILSERVERS = smtp, smtp2
  

  Cmnd_Alias NETWORKING = /sbin/route, /sbin/ifconfig, /bin/ping, /sbin/dhclient, /usr/bin/net, /sbin/iptables, /usr/bin/rfcomm, /usr/bin/wvdial, /sbin/iwconfig, /sbin/mii-tool
  

  Cmnd_Alias SOFTWARE = /bin/rpm, /usr/bin/up2date, /usr/bin/yum
  

  ADMINS     MAILSERVERS=NETWORKING
  

  jerry       localhost,ser5=NETWORKING,SOFTWARE
  

  

  MYSER=mail,web,ftp,mysql,localhost
  

  +++++++++++++++++++++++++++++++
  启用日志记录用户执行了那些提权命令
  visudo
  ...
  Defaults  logfile="/var/log/sudo"
  :wq
  

  sed   -n  '/^$/!p'  /etc/sudoers   |  sed  -n  '/^#/!p'
  [root@room9pc00 ~]# sed   -n  '/^$/!p'  /etc/sudoers   |  sed  -n  '/^#/!p'(去除空白行和注释)
  Defaults    requiretty
  Defaults   !visiblepw
  Defaults    always_set_home
  Defaults    env_reset
  Defaults    env_keep =  "COLORS DISPLAY HOSTNAME HISTSIZE INPUTRC KDEDIR LS_COLORS"
  Defaults    env_keep += "MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE"
  Defaults    env_keep += "LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES"
  Defaults    env_keep += "LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE"
  Defaults    env_keep += "LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY"
  Defaults    secure_path = /sbin:/bin:/usr/sbin:/usr/bin
  rootALL=(ALL) ALL
  

  

  [root@svr6 ~]# grep -v "^$" /etc/sudoers |grep -v "^#" (和上面效果一样)
  

  ++++++++++++++++++++++++++++++++++++
  三、管理SSH服务  22端口号
  /etc/init.d/sshd  start  ;chkconfig   sshd on
  

  1.默认所有地址接收连接请求(就是一台上的两个ip都可以)
  2.默认允许使用本机所有帐号连接
  

  /etc/ssh/sshd_config
  

  13 Port 2222
  

  16 ListenAddress 192.168.4.6 (当服务器多个ip时,只允许连这个ip远程管理)
  

  43 PermitRootLogin no   (不让别人连root用户)
  

  42 #LoginGraceTime 2m
  45 #MaxAuthTries 6   (输入密码时最多输入错次,都错了要等多少次,这两个连一起用)
  66 PasswordAuthentication no   (如果做了这一条,就不允许别人输入口令连自己了,但是之前做过密钥对的还是可以免密码连 要改成yes 就都可以 也可以口令)
  

  黑白名单 /etc/ssh/sshd_config
  

  黑名单 在名单列表里的用户不允许登录
  

  DenyUsers yaya@192.168.4.7  jing
  DenyGroups dbadmin  webadmin
  

  

  白名单 只有在命令/etc/ssh/sshd_config
  

  AllowUsers root@172.40.50.117  jerry   (只允许root用户在这个117才能连,jerry任何用户都能连)
  

  AloowGroups  mywebgrp
  

  

  配置密钥对登录   (/root/.ssh/)
  

  客户端创建:[root@svr7 ~]# rm -fr /root/.ssh/
  [root@svr7 ~]# ssh-keygen
  [root@svr7 ~]# ls /root/.ssh
  id_rsa  id_rsa.pub
  [root@svr7 ~]#ssh-copy-id root@192.168.4.6
  服务器:vim /etc/ssh/sshd_config(修改完配置文件,只允许用密钥对这种方式,口令密码上不了)
  49 PubkeyAuthentication yes
  50 AuthorizedKeysFile      .ssh/authorized_keys  (开启密钥连)
  

  66 PermitEmptyPasswords no  (不允许输入口令连)
  

  

  现在只能使用密钥对远程 不能使用口令。
  客户端(如果普通用户要远程管理,可以把私钥拷贝到普通用户家目录下并给权限)
  

  将公钥拷贝到普通用户之后就能远程。
  [root@svr7 ~]# useradd dc
  [root@svr7 ~]# echo 123456 |passwd --stdin dc
  [root@svr7 ~]# su - dc
  [dc@svr7 ~]$ mkdir /home/dc/.ssh
  [dc@svr7 ~]$ ls -ld /home/dc/.ssh
  drwxrwxr-x. 2 dc dc 4096 3月   6 10:46 /home/dc/.ssh
  [dc@svr7 ~]$ exit
  logout
  [root@svr7 ~]# cp /root/.ssh/id_rsa /home/dc/.ssh/
  [root@svr7 ~]# chown dc:dc /home/dc/.ssh/id_rsa
  [root@svr7 ~]# su - dc
  [dc@svr7 ~]$ ssh  root@192.168.4.254
  Last login: Mon Mar  6 18:43:24 2017 from 192.168.4.7
  [root@room1pc01 ~]#
  

  

  

  

  3.1   服务运行参数
  vim /etc/ssh/sshd_config
  

  ssh  -p  20002 root@172.40.50.117
  

  

  

  3.2   登录方式
  3.2.1  密码认证登录(用户名  密码)
  3.2.2  密钥对认证登录
  密钥对由公钥 和 私钥组成
  

  1   88客户端在自己本机生成密钥对 ssh-keygen
  [root@stu ~]# which ssh-keygen
  /usr/bin/ssh-keygen
  [root@stu ~]# rpm  -qf  /usr/bin/ssh-keygen
  openssh-5.3p1-111.el6.x86_64
  [root@stu ~]#
  man   ssh-keygen  查帮助
  

  [root@stu ~]# ls /root/.ssh/
  id_rsa  id_rsa.pub  known_hosts
  私钥     公钥
  [root@stu ~]#
  

  2客户端把自己公钥拷贝ssh服务器上 (99)
  ssh-copy-id   root@172.40.50.99
  

  [root@stu ~]# ssh-copy-id  root@172.40.50.99
  root@172.40.50.99's password:
  Now try logging into the machine, with "ssh 'root@172.40.50.99'", and check in:
  

  .ssh/authorized_keys
  

  to make sure we haven't added extra keys that you weren't expecting.
  

  [root@stu ~]#
  

  vim /etc/ssh/sshd_conf
  PasswordAuthentication no (不输入口令)
  PubkeyAuthentication yes
  AuthorizedKeysFile      .ssh/authorized_key
  :wq
  

  /etc/init.d/sshd  reload
  

  

  ssh   -X   -p  端口     用户名@地址
  ++++++++++++++++++++++++++++++
  3.2.3  连接控制(黑白名单)
  vim  /etc/ssh/sshd_config
  单个用户
  DenyUsers    USER1  USER2    黑名单
  AllowUsers   USER1@HOST   USER2    白名单
  

  AllowUsers   stu1@1.1.1.1
  ++++++++++++++++++++++++++++++++
  用户组
  DenyGroups  GROUP1 GROUP2 …   黑名单
  AllowGroups  GROUP1 GROUP2 …  白名单
  ++++++++++++++++++++++++++++++++
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-461593-1-1.html 上篇帖子: linux安装scp命令 下篇帖子: linux 安全应用 2
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表