linux ssh 安装、安全设置
2024-10-14 00:09:46
环境:ubuntu 12.04
一、简单安装设置
1. 安装ssh 服务器
$ sudo apt-get install openssh
2. 查看运行状态
$ service ssh status
3. 设置(/etc/ssh/sshd_config)
* 禁用root用户登录
PermitRootLogin yes #yes改为no
* 端口扫描软件默认扫描22端口,修改为其它端口。
port
* 设置最大密码错误次数
MaxAuthTries
4. 重启
$ sudo service ssh restart
5. 查看ssh登录日志文件
$ sudo vim /var/log/auth.log
a. 查看登录失败的IP
sudo grep "Failed password for root" /var/log/auth.log | awk {'print $11'} | uniq -c | sort -rn
b. 查看登录成功的IP
grep "Accepted password for " /var/log/auth.log
二、限制IP登录
1. 编辑/etc/hosts.allow (手动)
2. 安装denyhosts,自动加登录失败的到黑名单
$ sudo apt-get install denyhosts
默认配置就可以了。
查看配置信息:
$ sudo vim /etc/denyhosts.conf
下面是一些设置的介绍,配置文件中有详细说明。
1 SECURE_LOG = /var/log/auth.log #ssh 日志文件,它是根据这个文件来判断的。
HOSTS_DENY = /etc/hosts.deny #控制用户登陆的文件
PURGE_DENY = #过多久后清除已经禁止的,空表示永远不解禁
BLOCK_SERVICE = sshd #禁止的服务名,如还要添加其他服务,只需添加逗号跟上相应的服务即可
DENY_THRESHOLD_INVALID = #允许无效用户失败的次数
DENY_THRESHOLD_VALID = #允许普通用户登陆失败的次数
DENY_THRESHOLD_ROOT = #允许root登陆失败的次数
DENY_THRESHOLD_RESTRICTED =
WORK_DIR = /var/lib/denyhosts #运行目录
SUSPICIOUS_LOGIN_REPORT_ALLOWED_HOSTS=YES
HOSTNAME_LOOKUP=YES #是否进行域名反解析
LOCK_FILE = /var/run/denyhosts.pid #程序的进程ID
ADMIN_EMAIL = root@localhost #管理员邮件地址,它会给管理员发邮件
SMTP_HOST = localhost
SMTP_PORT =
SMTP_FROM = DenyHosts <nobody@localhost>
SMTP_SUBJECT = DenyHosts Report
AGE_RESET_VALID=5d #用户的登录失败计数会在多久以后重置为0,(h表示小时,d表示天,m表示月,w表示周,y表示年)
AGE_RESET_ROOT=25d
AGE_RESET_RESTRICTED=25d
AGE_RESET_INVALID=10d
RESET_ON_SUCCESS = yes #如果一个ip登陆成功后,失败的登陆计数是否重置为0
DAEMON_LOG = /var/log/denyhosts #自己的日志文件
DAEMON_SLEEP = 30s #当以后台方式运行时,每读一次日志文件的时间间隔。
DAEMON_PURGE = 1h #当以后台方式运行时,清除机制在 HOSTS_DENY 中终止旧条目的时间间隔,
最新文章
- httpCookie与Cookie安全
- Acadia Lab 203 + Lab 231
- NSRunLoop概述和原理
- maven web project打包为war包,目录结构的变化
- Emgu学习之(二)——图像读取、显示、保存
- ibatis 改下数据库连接
- 《算法导论》习题解答 Chapter 22.1-4(去除重边)
- uvalive 4513 Stammering Aliens
- SonarQube(5.0.1) 环境的安装配置
- JS实例(二)
- JSP Servlet SQL 三者之间数据传递
- 解决 jQuery.UI.Resizable aspectRatio在init后无法重新设置
- DIV+CSS 规范命名集合
- Effective Java 第三版——16.在公共类中使用访问方法而不是公共属性
- [Swift]LeetCode71. 简化路径 | Simplify Path
- Linux内核入门到放弃-时间管理-《深入Linux内核架构》笔记
- 【Mac】-NO.161.Mac.1 -【MacOS Error running &#39;Tomcat 8.5.371&#39;: Cannot run program Permission denied】
- CSS3中很容易混淆的transform,translate,transition。如何去区分,以及综合写法。
- python bittorrent 使用与学习
- Unity3d跨平台原理
热门文章
- template和templateUrl区别与联系
- AI 对不起 我还爱着你
- Commons CLI - Option Properties
- Jersey(1.19.1) - Client API, Security with Http(s)URLConnection
- C# 正则表达式(一)
- jquery 事件委托绑定click的使用方法
- 第二篇、JavaScript常用的API
- JavaScript学习笔记(12)——JavaScript自定义对象
- JavaScript---Cookie
- Android开发之如何保证Service不被杀掉(前台服务)