Linux系统下ssh的相关配置详细解析

ssh是大家常用的登录linux服务器的方式,但是为了安全考虑,有时候我们需要针对ssh做一些特殊处理,本文记录笔者曾经做过的一些修改,供大家参考。

一、修改ssh端口

ssh默认为22端口,如果需要修改成其它端口,则可以修改/etc/ssh/sshd_config文件,将
#Port 22

注释去掉,修改成需要的端口(比如8888),然后使用如下命令重启ssh服务
service sshd restart

二、关闭root用户远程ssh登录的权限

如果不希望root用户远程登录,可以按照如下修改:
vi /etc/ssh/sshd_config

#PermitRootLogin yes
注释去掉,yes改为no,重启ssh服务(这里最好reboot一下)

三、禁止某些特定用户远程登录

1. 修改/etc/pam.d/sshd

在#%PAM-1.0后加入一行:
auth       required     pam_listfile.so item=user sense=allow file=/etc/ssh_users onerr=fail

2.  启用用户远程登录(例如允许chb远程登录):
echo chb>> /etc/ssh_users

3.  禁止用户远程登录:
rm –rf /etc/ssh_users

如上示例只是简单删除文件,其实如果不允许某个用户登录,则将该用户从ssh_users文件中删除即可。

(0)

相关推荐

  • linux ssh 别名登录小技巧

    为了方便登录服务器,我们一般使用putty.SecureCRT等等工具.在终端如何通过服务器别名来进行登录呢? 可以创建~/.ssh/config 文件并为每台服务器指定登录信息和验证方法,如下所示: $ vim ~/.ssh/config Host www HostName www.ttlsa.com Port 22 User root IdentityFile ~/.ssh/id_rsa.pub IdentitiesOnly yes Host bbs HostName 115.28.45.1

  • Linux中配置双机SSH信任 操作说明

    一.实现原理 使用一种被称为"公私钥"认证的方式来进行ssh登录."公私钥"认证方式简单的解释是: 首先在客户端上创建一对公私钥(公钥文件:~/.ssh/id_rsa.pub:私钥文件:~/.ssh/id_rsa),然后把公钥放到服务器上(~/.ssh/authorized_keys),自己保留好私钥.当ssh登录时,ssh程序会发送私钥去和服务器上的公钥做匹配.如果匹配成功就可以登录了. 二.实验环境 A机:TS-DEV/10.0.0.163 B机:CS-DEV/

  • linux ssh 使用深度解析(key登录详解)

    SSH全称Secure SHell,顾名思义就是非常安全的shell的意思,SSH协议是IETF(Internet Engineering Task Force)的Network Working Group所制定的一种协议.SSH的主要目的是用来取代传统的telnet和R系列命令(rlogin,rsh,rexec等)远程登陆和远程执行命令的工具,实现对远程登陆和远程执行命令加密.防止由于网络监听而出现的密码泄漏,对系统构成威胁. ssh协议目前有SSH1和SSH2,SSH2协议兼容SSH1.目前

  • linux下使用ssh远程执行命令批量导出数据库到本地

    前天正在跟前端的同事调试功能.服务器开好,模拟的玩家登录好,就在倒计时.这时突然运营的同事跑过来说要统计几个服务器玩家的一些情况,也就是需要从几个服的数据库导出部分玩家的数据.好吧,我看了一下时间,11:47.心想,跟前端调试完,去吃个饭再午休一下那就下午再给吧.没想对方来一句"就导个数据库而已,要这么久么?",而且还是直接跟我上司说的.我嚓,好吧,我导.可问题来了,平时的统计是由php做的,批量部署这些是由运维做的.服务端完全没有对应的工具.而且服务器是在阿里云上的,数据库的用户是限

  • 配置Linux服务器SSH 安全访问的四个小技巧

    我以 CentOS 为例,简单地总结一下如何配置 SSH 安全访问. Linux SSH 安全策略一:关闭无关端口 网络上被攻陷的大多数主机,是黑客用扫描工具大范围进行扫描而被瞄准上的.所以,为了避免被扫描到,除了必要的端口,例如 Web.FTP.SSH 等,其他的都应关闭.值得一提的是,我强烈建议关闭 icmp 端口,并设置规则,丢弃 icmp 包.这样别人 Ping 不到你的服务器,威胁就自然减小大半了.丢弃 icmp 包可在 iptables 中, 加入下面这样一条: 复制代码 代码如下:

  • Linux VPS下SSH常用命令整理

    目录操作:rm -rf mydir /*删除mydir目录*/cd mydir /*进入mydir目录*/cd - /*回上一级目录*/  cd .. /*回父目录,中间有空格*/cd ~ /*回根目录*/mv tools tool /*把tools目录改名为tool */ln -s tool bac /*给tool目录创建名为bac的符号链接,最熟悉的应该就是FTP中www链接到public_html目录了*/cp -a tool /home/vpser/www /*把tool目录下所有文件复

  • Linux SSH 安全策略 更改 SSH 端口

    默认的 SSH 端口是 22.强烈建议改成 10000 以上.这样别人扫描到端口的机率也大大下降.修改方法:# 编辑 /etc/ssh/ssh_config vim /etc/ssh/ssh_config # 在 Host * 下 ,加入新的 Port 值.以 18439 为例: Port 22 Port 18439 # 编辑 /etc/ssh/sshd_config (同上2图) vim /etc/ssh/sshd_config #加入新的 Port 值 Port 22 Port 18439

  • Linux SSH 安全策略 限制 IP 登录方法

    方法一: 首先需要限制登录的ip(或者如果需要自己本地登录,查看最后登录ip即可) Vim /etc/hosts.allow 输入 sshd:114.80.100.159:allow vim /etc/hosts.deny 输入(表示除了上面允许的,其他的ip   都拒绝登陆ssh)    sshd:ALL 最后sshd重启 service sshd restart 方法二: 比如说你只允许114.80.100.159这个IP进入,其它都禁止: vim   /etc/ssh/sshd_confi

  • Linux系统下ssh的相关配置详细解析

    ssh是大家常用的登录linux服务器的方式,但是为了安全考虑,有时候我们需要针对ssh做一些特殊处理,本文记录笔者曾经做过的一些修改,供大家参考. 一.修改ssh端口 ssh默认为22端口,如果需要修改成其它端口,则可以修改/etc/ssh/sshd_config文件,将#Port 22 注释去掉,修改成需要的端口(比如8888),然后使用如下命令重启ssh服务service sshd restart 二.关闭root用户远程ssh登录的权限 如果不希望root用户远程登录,可以按照如下修改:

  • linux系统下用户管理相关介绍

    目录 一.用户及用户组存在的意义 1)用户存在的意义 2)用户组存在的意义 二.用户及用户组在系统中存在的方式 三.用户涉及到的系统配置文件 /etc/shadow        用户认证信息文件 四.用户相关操作 1)用户和用户组建立及删除 2)用户和用户组的信息管理 五.用户权力下放 六.文件权限查看和读取 一.用户及用户组存在的意义 1)用户存在的意义 系统的资源是有限的,如何合理分配系统资源? 1.身份 account 2.授权 author 3.认证 auth 以上3个 'a' 称为3

  • linux Ubuntu下SSH无密码验证配置的方法步骤

    前言 SSH为Secure Shell 的缩写,是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议.越来越多的小伙伴们使用远程登录,而ssh安全性无疑是很高的,那么我们现在来看看如何实现ssh无密码验证配置. 一. 准备工作 首先要确保你的linux系统中已经安装了ssh,对于ubuntu系统一般默认只安装了ssh client,所以还需要我们手动安装ssh server: sudo apt-get install openssh-server 二. SSH基本原理 2.1 基本原理

  • Linux系统下Nginx支持ipv6配置的方法

    一.查看现有nginx是否支持ipv6 需要执行以下命令,查看现有nginx是否支持ipv6,如果参数中具有--with-ipv6,则支持,如 果没有,则不支持,需要重新编译nginx. # 此处的nginx路径以您实际的nginx启动文件路径为准 /usr/local/nginx-1.14.0/sbin/nginx -V 二. 重新编译nginx支持ipv6 1.下载相对应的nginx安装包: 2.解压nginx的安装包: 3.进入nginx解压后的安装文件中,先执行 ./configure

  • linux系统下的ssh登录和配置方法

    一 ssh的两种登录方式 1密码登录: [root@westos Desktop]# ssh root@192.168.122.26 Address 192.168.122.26 maps to bogon, but this does not map back to the address - POSSIBLE BREAK-IN ATTEMPT! root@192.168.122.26's password: Last login: Tue Jan 17 13:27:29 2017 from

  • linux系统下hosts文件详解及配置

    hosts文件 hosts -- the static table lookup for host name(主机名查询静态表). hosts文件是Linux系统上一个负责ip地址与域名快速解析的文件,以ascii格式保存在/etc/目录下.hosts文件包含了ip地址与主机名之间的映射,还包括主机的别名.在没有域名解析服务器的情况下,系统上的所有网络程序都通过查询该文件来解析对应于某个主机名的ip地址,否则就需要使用dns服务程序来解决.通过可以将常用的域名和ip地址映射加入到hosts文件中

  • Windows+Linux系统下Go语言环境安装配置过程

    Go 是一个开源的编程语言,它能让构造简单.可靠且高效的软件变得容易. Go是从2007年末由Robert Griesemer, Rob Pike, Ken Thompson主持开发,后来还加入了Ian Lance Taylor, Russ Cox等人,并最终于2009年11月开源,在2012年早些时候发布了Go 1稳定版本.现在Go的开发已经是完全开放的,并且拥有一个活跃的社区. 1. Windows安装配置 1️⃣ 下载SDK SDK 的全称是Software Development Kit

  • Unix/Linux系统下的nobody用户与nologin详细介绍

    Unix/Linux系统下的nobody用户是什么? 1.Windows系统在安装后会自动建立一些用户帐户,在Linux系统中同样有一些用户帐户是在 系统安装后就有的,就像Windows系统中的内置帐户一样. 2.它们是用来完成特定任务的,比如nobody和ftp等,我们访问LinuxSir.Org的网页程序时,官网的服务器就是让客户以'nobody'身份登录的(相当于Windows系统中的匿名帐户); 我们匿名访问ftp时,会用到用户ftp或nobody. 3.首先,nobody是一个普通用户

  • Linux系统下SystemC环境配置方法

    以下为centos7下配置方法 下载systemc源码包:SystemC (accellera.org) 将压缩包放置到用户目录下,并解压 tar -zxvf systemc-2.3.3.tar.gz 进入到systemc-2.3.3文件夹 cd systemc-2.3.3 新建临时文件夹tmp,并进入其中 mkdir tmpcd tmp 运行如下命令 ../configure make make install 至此,文件夹中生成include与lib-linux64两个文件夹 设置环境变量

  • Linux系统下netstat命令详细介绍

    目录 一.介绍 二.输出信息描述 三.netstat常见参数 四.netstat网络状态详解 Linux的相关keepalive参数 五.常用netstat相关命令 一.介绍 Netstat是控制台命令,是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表.实际的网络连接以及每一个网络接口设备的状态信息. Netstat用于显示与IP.TCP.UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况. 二.输出信息描述 执行netstat后输出如下: [root@sy-s

随机推荐