千古八方的博客

  • 程序开发
    • Android
    • Spring Boot
  • 数据私有化
    • NAS
    • 私有云
    • 内网穿透
    • 服务器
  • 留言
  • 搞事
进学
为学无间断,如流水行云,日进而不已也
  1. 首页
  2. NAS
  3. 正文

自建 NAS, 系统安全防护配置(一) - 防火墙篇

2022年5月24日 214点热度 0人点赞 0条评论

私人项目代码不想放到git、码云等服务器上,所以自建SVN服务,用于存储代码,后来文件越来越多,有了存储文件的需求,然后自建了NAS服务。

服务器系统:Ubuntu20.04 LTS

安装的服务有:

  • SSH服务:远程管理。
  • SVN服务:私人代码仓储。
  • Bind9服务:用于家庭DNS广告过滤,自动从adblock 下载黑名单,然后添加进去。
  • DHCP服务:家庭里的物联网设备分配IP。
  • Commafeed: RSS阅读器
  • NextCloud: 文件存储,家庭照片,资料等。
  • Samba服务:实在不想用,投影上就它访问速度最快。
  • 千千静听歌词服务:千千静听的死粉,自写的服务,搜索、下载、上传歌词

那么该如何做的安全防护呢?

1.  首先IPv6不允许国外IP访问,虽然在内网IPv4也一样不允许国外IP访问,国外数据包一律丢弃。

然后开放22端口,后面配置连接ssh时,采用证书的方式登录。

# IPv4
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT # local
iptables -A INPUT -m set ! --match-set chnroute4 src -j DROP # not china ip
iptables -A INPUT -p icmp -j ACCEPT # ping
iptables -A INPUT -p tcp --dport 22 -j ACCEPT # ssh

#IPv6
ip6tables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
ip6tables -A INPUT -i lo -j ACCEPT # local
ip6tables -A INPUT -m set ! --match-set chnroute6 src -j DROP # not china ip
ip6tables -A INPUT -p icmp -j ACCEPT # ping
ip6tables -A INPUT -p ipv6-icmp -j ACCEPT # ping
ip6tables -A INPUT -p tcp --dport 22 -j ACCEPT # ssh

关于 SSH 仅允许指定用户远程登录,参考这篇文章 : Linux SSH 仅允许指定用户远程登录

关于 SSH 仅允许证书登录,参考这篇文章 : Ubuntu Linux SSH 仅允许证书登录

2. 接着配置Samba,经常爆出漏洞的服务  

#IPv4 仅允许光猫后面的内网访问,网络上不可见
iptables -A INPUT -s 192.168.1.0/24 -p tcp -m multiport --dports 137,138 -j ACCEPT # samba
iptables -A INPUT -s 192.168.1.0/24 -p udp -m multiport --dports 137,138 -j ACCEPT # samba

#IPv6
# 不允许远程访问

3. 开放SVN、NextCloud、千千静听服务到所有网络,安全使用Fail2ban来防护,最多重试5次,否则屏蔽该IP。

#IPv6(IPv4 相同,使用iptables命令)
ip6tables -A INPUT -p tcp --dport 81 -j ACCEPT # nginx代理: nextcloud,parse server, 千千, onlyoffice, feed
ip6tables -A INPUT -p tcp --dport 3690 -j ACCEPT # svn

https服务统一采用81端口,针对不同的服务使用子域名,或者子路径的方式来保护,并且服务里禁止纯IP的访问。 这样当用nmap及其他扫描的时候,很难根据IP探测出来该端口后面的服务。

4. DHCP,Bind9,Emby,jellfin等 同Samba一样,仅允许内网IPv4、IPv6访问。

# IPv6配置仅允许特定IP访问(IPv4格式见samba配置)
ip6tables -A INPUT -s 2409:8a3c:xxxx:xxxx::/64 -p tcp --dport 53 -j ACCEPT # named
ip6tables -A INPUT -s 2409:8a3c:xxxx:xxxx::/64 -p udp --dport 53 -j ACCEPT # named

# log
#ip6tables -p udp --dport 53 -j LOG --log-prefix "ip4 udp input: " --log-level 7

 

iptables 配置的IP级防护完成。

 

安全相关文章:

  • 自建 NAS,系统安全防护配置(一) - 防火墙
  • 自建 NAS,系统安全防护配置(二) - 扫描探测
  • 自建 NAS,系统安全防护配置(三) - 数据备份

 

 

标签: 安全维护
最后更新:2022年7月6日

千古八方

物格而后知至,知至而后意诚,意诚而后心正

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

千古八方

物格而后知至,知至而后意诚,意诚而后心正

最新 热点 随机
最新 热点 随机
火狐下远离内容农场的方法! 中国城市生活成本查询 Debian11 系统备份与灾备盘制作 Debian logwatch 自定义配置文件,根据规则忽略掉某些日志内容 Ampache 5.0 报错 The root Ampache folder has changed to ./public socat 正反向传输文件
二、如何才能赚到钱呢? 自建NAS,是否需要RAID磁盘阵列? Bind9 试玩 DNS over https (DOH) Nextcloud 默认日志文件位置,及修改 自建NAS,Aria2 下载器的安装及配置 Creo 提示 【C:\Windows\system32无访问权限,请为轨迹选择另外一个启动目录】
分类
  • Android
  • Linux
  • NAS
  • Spring Boot
  • Windows
  • 内网穿透
  • 回忆
  • 基于NEAT的瞎几把寻思算法笔记
  • 散篇
  • 普通人的致富之路在哪里
  • 服务器
  • 未分类
  • 私有云
标签聚合
私有云 我开源的APP Android Utils 散篇 NPS ubuntu NAS linux 群晖NAS 内网穿透 服务器 Android系统编译 安全维护 Windows TrueNAS Android Widgets Nextcloud Spring Boot
工具/友链

资源导航 – NAS、私有云存储
在线工具 – MD5、SHA、BASE64、URL编解码
在线工具 – 贷款计算器
在线工具 – IPv4/IPv6地址查询

千古八方 在 B站

千古八方 在 知乎

我的微信小程序:
微信小程序-城市生活成本查询
城市生活成本查询
库房物资流水记账簿
最近评论
Avatar photo
千古八方 发布于 1 个月前(12月28日) 重置命令是Nextcloud提供的,和哪个平台没关系。 如果报错,一般是路径或权限的问题导致的。 ...
Avatar photo
aron 发布于 1 个月前(12月24日) 博主你好 我的nextcloud管理员密码过期了 用了occ命令重置但是报错,能请教下是什么原因...
Avatar photo
千古八方 发布于 2 个月前(12月15日) 贝塞尔这个类在这里 https://gitee.com/aityu/AndroidUtils/blo...
Avatar photo
disco 发布于 2 个月前(12月05日) 有demo链接吗?贝塞尔曲线这个关键类没有写出来~
Avatar photo
HJM 发布于 3 个月前(10月20日) 必须点赞!很有效!

COPYRIGHT © 2022 千古八方的博客. ALL RIGHTS RESERVED.

京ICP备14020471号