linux iptables初步应用
今天因为工作需要,维护服务器的安全漏洞
设置mysql远程连接
mysql> USE mysql; -- 切换到 mysql DB
Database changed
mysql> SELECT User, Password, Host FROM user; -- 查看现有用户,密码及允许连接的主机
+------+----------+-----------+
| User | Password | Host |
+------+----------+-----------+
| root | | localhost |
+------+----------+-----------+
1 row in set (0.00 sec)
mysql> -- 只有一个默认的 root 用户, 密码为空, 只允许 localhost 连接
mysql> -- 下面我们另外添加一个新的 root 用户, 密码为空, 只允许 192.168.1.100 连接
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.100' IDENTIFIED BY '' WITH GRANT OPTION;
mysql> -- 当然我们也可以直接用 UPDATE 更新 root 用户 Host, 但不推荐, SQL如下:
mysql> -- UPDATE user SET Host='192.168.1.100' WHERE User='root' AND Host='localhost' LIMIT 1;
关闭防火墙
service iptables stop
iptables -P INPUT ACCEPT
打开防火墙
iptables -F INPUT
iptables -P INPUT DROP
--关闭3306端口(Mysql数据库)
iptables -I INPUT -i eth0 -p tcp --dport 3306 -j DROP
iptables -I INPUT -i eth0 -p tcp --dport 3306 -j ACCEPT
linux系统下,81端口一般情况下是关闭的。
开启81端口:
iptables -I INPUT -i eth0 -p tcp --dport 81 -j ACCEPT
iptables -I OUTPUT -o eth0 -p tcp --sport 81 -j ACCEPT
关闭81端口:
iptables -I INPUT -i eth0 -p tcp --dport 81 -j DROP
iptables -I OUTPUT -o eth0 -p tcp --sport 81 -j DROP
然后重启一下防火墙
service iptables restart
然后保存:
#/etc/rc.d/init.d/iptables save
再查看是否已经有了:
[root@vcentos ~]# /etc/init.d/iptables status
保存如下
关闭所有ssh 22端口访问
iptables -I INPUT -p tcp --dport 22 -j DROP
开放 192.168.10.244 ssh 22端口访问
iptables -I INPUT -s 192.168.10.244 -p tcp --dport 22 -j ACCEPT
开放 192.168.80.0/24 ssh 22端口访问
iptables -I INPUT -s 192.168.80.0/24 -p tcp --dport 22 -j ACCEPT
查看最近1年,建立或者修改的jsp文件
find -iname "*.jsp" -mtime -365 –print
删除最近发现的陌生文件
find -iname "*.jsp" -mtime -3 -print | xargs rm -rf
crontab -l
15 1 * * * /home/mysql/share/mysql/mysql.server restart
20 1 * * * /home/resin/bin/httpd.sh stop
25 1 * * * /home/resin/bin/httpd.sh start -Xms824m -Xmx824m
du -sh /home/resinweb 查看目录大小
ls -alh cps.sql 查看文件详细信息