服务器配置用户信息、ssh免密码登录和防火墙等安全配置
一、登录服务器
1、回到根目录 cd ~
2、ssh + 用户名@服务器公网地址 ssh root@47.94.208.76
3、输入密码:注意输入法大小写
二、查看服务器信息
df -h 查看数据盘的文件空间剩余信息
fdisk -l 查看磁盘信息
用户列表文件:/etc/passwd
用户组列表文件:/etc/group
查看系统中有哪些用户:cut -d : -f 1 /etc/passwd
查看可以登录系统的用户:cat /etc/passwd | grep -v /sbin/nologin | cut -d : -f 1
查看用户操作:w命令(需要root权限)
查看某一用户:w 用户名
查看登录用户:who
查看用户登录历史记录:last
三、登出服务器
contrl + d
四、shell小工具zsh安装
1、安装方法见官网:https://ohmyz.sh/
2、vim .zshrc 打开zsh配置文件
3、在最后一行添加别名:alias login_root="ssh root@47.94.208.76"
4、保存并退出后 source .zshrc 重新加载文件资源
5、在命令行输入login_root 会直接跳到ssh root@47.94.208.76 登录
五、添加和配置新的用户信息
1、useradd system_manager 添加新用户
2、passwd system_manager 设置用户密码
3、groupadd sudo 创键组
4、gpasswd -a system_manager sudo 将用户追加到组
5、sudo visudo 打开配置文件
6、增加system_manager ALL=(ALL) ALL 使用户有和root一样的权限
7、在root用户下重启 systemctl restart sshd
六、登录新用户
1、command+t 新开一个命令行
2、ssh system_manager@47.94.208.76 登录新用户
七、配置ssh实现无密码登录
本地私钥--本地传到服务器的公钥--密钥算法比对--登录成功
1、进入本地根目录,找到.ssh文件夹
cd ~
ls -a
cd .ssh
会看到如下文件,其中id_rsa为私钥,id_rsa.pub为公钥

2、将以上两个文件重命名,如果之前已经生成过私钥和公钥,先把他们备份下来:
mv id_rsa id_rsa_copy
mv id_rsa.pub id_rsa_copy.pub

3、回到根目录cd ~ 配置:
ssh-keygen -t rsa -b 4096 -C "1095098525@qq.com" 密码提示一直回车就行 
4、回到.ssh文件夹下,看到生成了两个文件,就是私钥和公钥:

5、在.ssh文件夹下,查看私钥和公钥
cat id_rsa
cat id_rsa.pub 
6、在.ssh文件夹下,将ssh代理跑起来:
eval "$(ssh-agent -s)"

7、在.ssh文件夹下,将文件加入代理中:
ssh-add ~/.ssh/id_rsa 
8、登录服务器,重复在本地电脑生成私钥和公钥的步骤。
9、在服务器的.ssh文件夹下,查看是否存在权限文件(只对当前用户有效)。

10、将本地电脑的公钥(id_rsa.pub)复制到服务器的authorized_keys文件夹里面。
11、在服务器的.ssh文件夹下,赋予权限的操作:chmod 600 authorized_keys
12、在服务器的.ssh文件夹下,重启ssh服务:systemctl restart sshd
13、重新登录root用户,就可以不用输入密码直接登录啦,其他用户同样的方式!
八、增强服务器安全配置
1、用root账号登录,保持登录状态,避免用新的端口登录不成功而导致无法登陆服务器。
在服务器管理后台添加端口

2、command+t 新开一个控制台窗口,用system_manager登录下:
sudo vi /etc/ssh/sshd_config 打开ssh配置文件
3、修改端口:保留22端口 添加port: 8290

4、在最后一行添加:AllowUsers system_manger

5、禁止root账号登录:
将上图PermitRootLogin 改成no
6、重启:
sudo systemctl restart sshd
7、用新的端口登录
ssh -p 8290 system_manager@47.94.208.76
如果报错信息,可在另一个已经登录的账号下将/etc/ssh/sshd_config文件复原,采用默认的22端口,也可以在阿里云管理终端登录修改
配置防火墙部分:
8、由于在Centos7下,默认有firewalld,打开防火墙,发现用此端口登录不上:
systemctl start firewalld
9、查看端口8290是否开启;
firewall-cmd --query-port=8290/tcp 返回no 说明没有开启
10、防火墙永久开启端口:
firewall-cmd --zone=public --add-port=8290/tcp --permanent
命令含义 : --zone #作用域 , --add-port=80/tcp #添加端口 , 格式为 : 端口/通讯协议 , --permanent #永久生效 , 没有此参数重启后失效
11、重启防火墙:
firewall-cmd --reload 
12、关闭端口命令:firewall-cmd --zone=public --remove-port=3306/tcp --permanent
13、查看防火墙状态: systemctl status firewalld
14、开启防火墙开机自启动:systemctl enable firewalld
15、停止开机启动:sytemctl disable firewalld
16、查看防火墙永久开放的端口: firewall-cmd --permanent --list-port
17、查看防火墙配置信息列表: firewall-cmd --list-all
禁用22端口,只允许用新端口登录:
firewall-cmd --query-port=8290/tcp 返回 yes 说明此端口防火墙开通
修改vi /etc/ssh/sshd_config ssh配置文件 将22端口删除
重启ssh: ystemctl restart sshd
用新的端口登录 ssh -p 8290 root@47.94.208.76
九、管理终端远程登录:
https://help.aliyun.com/document_detail/25433.html?spm=a2c4g.11186623.2.14.f8de7c60SVNZdE
十、ubantu下用iptables建立防火墙
1、清空 iptables 规则: iptables -F
2、vim /etc/iptables.up.rules
*filter
#allow all connections
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#mongodb connect
-A INPUT -s 127.0.0.1 -p tcp --destination-port 27017 -m state --state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -d 127.0.0.1 -p tcp --source-port 27017 -m state --state ESTABLISHED -j ACCEPT
#allow out traffic
-A OUTPUT -j ACCEPT #allow http https
-A INPUT -p tcp --dport 443 -j ACCEPT
-A INPUT -p tcp --dport 80 -j ACCEPT #allow ssh port login
-A INPUT -p tcp -m state --state NEW --dport 8290 -j ACCEPT #ping
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT #log dejied calls
-A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied:" --log-level 7 #drop incoming sensitive connections
-A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --set
-A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --update --seconds 60 --hitcount 150 -j DROP #reject all other inbound
-A INPUT -j REJECT
-A FORWARD -j REJECT COMMIT
3、iptables-restore < /etc/iptables.up.rules
4、ufw enable
5、ufw status
6、vi /etc/network/if-up.d/iptables
#!/bin/sh
iptables-restore /etc/iptables.up.rules
7、chmod +x /etc/network/if-up.d/iptables
8、ubantu用apt-get安装fail2ban
service fail2ban status
service fail2ban stop
service fail2ban start
服务器配置用户信息、ssh免密码登录和防火墙等安全配置的更多相关文章
- Linux 服务器用户间ssh免密码登录
1.本脚本为服务器用户间密码互信登录脚本 2.依赖 需要安装expect工具 3.使用 sh CreateUserssh.sh hadoop hadoop /home/hadoop/.ssh 三个带入 ...
- ssh 免密码登录 单机和集群配置
1.在主机上(A)生成密钥对 ssh-keygen -t rsa -P '' #在A主机上执行,生成密钥对 直接按enter键 执行以下命令,会在 ~/.ssh/ 目录生成 id_rsa id_r ...
- CentOS服务器配置SSH免密码登录
由于工作需要,经常要登录到多台服务器远程操作,每次都是ssh user@host:port 再输入密码,时间长了,难免觉得乏味-- 故而从度娘那里扒来了一些让SSH免密码登录的办法,其实这也是使用Gi ...
- 如何配置ssh免密码登录
[TOC] 如果你在管理一堆unix机器,每次登录都要输入密码是挺烦的事情,一方面为了安全我们一般不会将所有机器的密码都设置成一样,另一方面就算一样每次都输入一遍也很麻烦. 这种情况下我们一般是用ss ...
- 配置ssh免密码登录——集群学习日记
度过了难熬的考试月时期之后,最近和小伙伴一起参加的的比赛进入了紧张的准备时期.在进行工作的时候,发现有很多基础的知识点,自己不是很清楚以及了解,所以在想,要不就边学习的时候边写下学习日记,以供自己后来 ...
- SSH免密码登录配置
ssh免密码登录Permission denied (publickey,gssapi-keyex,gssapi-with-mic) 的解决方案 1.在hadoop目录 新建.ssh目录 使用:ssh ...
- Centos6.5之ssh免密码登录配置
Centos6.5之ssh免密码登录配置 centos ssh 免密码登录 0.说明 这里为了方便说明问题,假设有A和B两台安装了centos6.5的主机.目标是实现A.B两台主机分别能够通过ssh免 ...
- SSH免密码登录配置方法详解
1.测试主机配置信息: 192.168.100.236 db06.chavin.king db06 192.168.100.237 db07.chavin.king db07 2.创建测试用户: gr ...
- CentOS 6.5配置SSH免密码登录
centos 系统对权限的设置非常微妙,如果权限设置大了则ssh 拒绝,如果权限小了,则ssh 更是被拒绝(我曾经配置好久没有打通,就是因为权限过大的原因) 参考链接:http://www.linux ...
随机推荐
- GYM 101617 F
说到这题还要提到周日下午训练赛,都进去了hmc说他这场单切过准备换一场. 很不幸的是我当时已经开了这个几何题, 开场就开几何是什么鬼啊!!! 给你n个圆,找一点在所有园内并且离原点最远.(保证有解) ...
- Spring Security中html页面设置hasRole无效的问题
Spring Security中html页面设置hasRole无效的问题 一.前言 学了几天的spring Security,偶然发现的hasRole和hasAnyAuthority的区别.当然,可能 ...
- Linux了解知识点
Linux知识点 1.linux系统内核最早由芬兰大学生linus Torvalds开发. 2.Linux主要用于服务器端和嵌入式两个领域. 3.Linux的特点:开放性.多用户.多任务.良好的用 ...
- 18 ArcGIS API for JavaScript4.X 系列加载天地图(经纬度)
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 远程shell脚本执行工具类
/** * 远程shell脚本执行工具类 */public class RemoteShellExecutorUtils { private static final Logger logger = ...
- 实验五:任意输入10个int类型数据,排序输出,并找出素数
源代码: package 数组;import java.util.*;public class vvv { public static void main(String[] args) { Scann ...
- return和throw某些特性相似
拷贝构造函数的调用拷贝构造函数会在以下三中情况下被调用(1)当类的一个对象去初始化该类的另一个对象时 int main(){ Point a(1,2); Point b(a);//用对象a初始化对象b ...
- 老司机带路:《axios从入门到开车 嘀嘀~~》
前言:axios vue.axios 跨域.axios.js.axios get.axios post.axios中文文档 之前当vue更新到2.0之后,作者就宣告不再对vue-resource更新, ...
- emWin收音机,含uCOS-III和FreeRTOS两个版本
第11期:收音机配套例子:V6-919_STemWin提高篇实验_收音机(uCOS-III)V6-920_STemWin提高篇实验_收音机(FreeRTOS) 例程下载地址: http://forum ...
- Java线程状态Jstack线程状态BLOCKED/TIMED_WAITING/WAITING解释
一.线程5种状态 新建状态(New) 新创建了一个线程对象. 就绪状态(Runnable) 线程对象创建后,其他线程调用了该对象的start()方法.该状态的线程位于可运行线程池中,变得可运行,等待获 ...
