【本机主题:SSH端口转发 ;sudo ;TCP_Wrappers】
复习:
(一)CA
1、创建私钥
[root@Alvin ~]# (umask 077;openssl genrsa -out private/cakey.pem 4096)
2、生成自签名证书
[root@Alvin ~]# openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 3650
3、建数据库文件
[root@Alvin ~]# touch /etc/pki/CA/index.txt
4、颁发证书的编号,从 0F 开始
[root@Alvin ~]# echo 0F > /etc/pki/CA/serial
(二)Client
1、创建私钥
[root@Alvin ~]# (umask 077;openssl genrsa -out private/cakey.pem 1024)
2、利用私钥文件生成申请文件
[root@Alvin ~]# openssl req -new -key app.key -out app.csr
(三)CA为Client颁发证书
[root@Alvin ~]# openssl ca -in app.csr -out cers/app.crt -days 100
SSH端口转发
(1)开辟一个“隧道”,封装不安全协议的数据流量
(2)企业外网防火墙只需要打开SSH的22端口即可
localport:内网不安全的IP和端口
remotehost:内网不安全的IP和端口
sshhserver
(3)会绑定到 127.0.0.1:9527 本地端口上
实验一:借助sshserver,建立client与telnet-server的连接隧道
一、
[root@Alvin ~]# iptables -A INPUT 192.168.30.7 -J REJECT
[root@Alvin ~]# yum install -y telnet-server
[root@Alvin ~]# systemctl start telnet.socket
二、
[root@Alvin ~]# ss -ntl
[root@Alvin ~]# ssh -L 9527:192.168.30.17 -Nf 192.168.30.6
//f:后台执行,退出必须靠“杀进程”
三、
[root@Alvin ~]# telnet 127.0.0.1 9527
实验二:
一、
[root@Alvin ~]# iptables -vnL
[root@Alvin ~]# ssh -R 9527:192.168.30.17:23:192.168.30.7
[root@Alvin ~]# ss -ntl
二、
[root@Alvin ~]# ?
动态端口转发
实验:
一、
[root@Alvin ~]# yum install httpd
[root@Alvin ~]# echo www.google.com > /var/www/html/index.html
[root@Alvin ~]# iptables -A INPUT 192.168.30.7 -J REJECT
二、
[root@Alvin ~]#
三、
[root@Alvin ~]# curl --socks5 127.0.0.1:1080 192.168.30.17
SSH服务器
【先制定安全措施,然后再去连接互联网!!!】
(1)基于安全考虑,只面向局域网开放SSH的22端口
[root@Alvin ~]#
Port 9527
LinstenAddress 192.168.30.7
//绑定内网主机
(2)
[root@Alvin ~]# ssh 172.20.0.7 -p 9527
实验:
[root@Alvin ~]# awk '/Failed password/{ip[$(NF-3)]++}END{for(i in ip){if(ip[i]>=3)system("iptables -A INPUT -s " i " -j R REJECT")}}' /var/log/secure
SSH配置:/etc/ssh/sshd_config
(1)只监听内网IP,拒绝外网IP的连接
[root@Alvin ~]# iptables -A INPUT -s 192.268.30.0/24 -j ACCEPT
(2)
(3)超时连接
(4)禁用DNS反向解析
[root@Alvin ~]# sed 's/.*UseDNS.*/UseDNS no/' /etc/ssh/sshd_config
(5)限制可登录的用户:黑名单和白名单都有(同一用户),默认是拒绝
(6)日志验证:记录失败连接的日志信息
[root@Alvin ~]# lassb
实验:编译安装dropbear
一、
[root@Alvin ~]#
[root@Alvin ~]# .configure --
二、
[root@Alvin ~]# make PROGRAMS="dropbear dbclient dropbearkey dropbearconvert scp"
[root@Alvin ~]# make install
三、
[root@Alvin ~]# dropbear -p 9527
AIDE:高级入侵检测环境
(文件完整性检查、入侵检测)
sudo
[root@Alvin ~]# vim /etc/sudoers
root ALL=(ALL) ALL
[root@Alvin ~]# export EDITOR=vim
[root@Alvin ~]# echo "export EDITOR=vim" >> /etc/profile.d/env.sh
[root@Alvin ~]# visudo
wang 192.168.30.7=(root) /bin/mount /dev/cdrom /mnt/
//授权的用户 在哪台主机上=代表哪个用户 执行的命令(命令名写完整路径)
//调用命令时必须精确写明 /
[wang@Alvin ~]$ mount /dev/cdrom /mnt/
[root@Alvin ~]# usermod -aG "wheel" wang
[root@Alvin ~]# gpasswd -d wheel wang
[wang@Alvin ~]$ sudo -u root vim /etc/passwd
CentOS7的wheel组具有管理员权限!!!【/etc/sudoers】
%wheel ALL=(ALL) ALL
//建议注释此行
[root@Alvin ~]# cd /etc/sudoers.d/
[root@Alvin ~]# vim mage
mage ALL=(wang) ALL
//mage代表wang用户,执行wang用户能够执行的命令
[root@Alvin ~]# visudo -c
//检查语法
sudo别名
[root@Alvin ~]# vim /etc/sudoers.d/mage
TCP_Wrappers
(1)白名单优先级高于黑名单
(2)allow文件和deny文件都没有的规则,默认是允许
[Linux]Day23-20180521【SSH端口转发 ;sudo ;TCP_Wrappers】
猜你喜欢
转载自www.cnblogs.com/GymUManAlvin/p/9179466.html
今日推荐
周排行