linux系统的安全小知识
最近安装linux虚拟机,出了几个小问题:1. 只有root用户 2.ftp连接不上 3.ssh连接虚拟机如何免密
1.创建用户
useradd –d /usr/sam -m sam 创建用户sam,并指定其默认的用户目录
passwd sam 给sam用户指定密码
over!
追加:
su 注:用户切换工具
sudo 注:sudo 是通过另一个用户来执行命令(execute a command as another user),su 是用来切换用户,然后通过切换到的用户来完成相应的任务,但sudo 能后面直接执行命令,比如sudo 不需要root 密码就可以执行root 赋与的执行只有root才能执行相应的命令;但得通过visudo 来编辑/etc/sudoers来实现
给sam添加sudo权限
vi /etc/sudoers 找到 root ALL=(ALL) ALL 下面追加一行 sam ALL=(ALL) ALL,退出强制保存 wq!
2.ftp连接不上
先查看有木有ftp组件,service vsftpd status
如果没有的话,安装:yum install vsftpd
安装后再次查看状态,看到 Active: active (running) 表示服务已启动
如果还是连接不上,说明防火墙把21端口给禁掉了;关掉防火墙或者是设置端口意外。
我这里是关闭防火墙:systemctl disable firewalld.service 这样重启时防火墙也是关闭状态
搞定!
追加:
systemctl 系统服务管理器指令,来自: http://man.linuxde.net/systemctl
是chkconfig、service的合集:
格式: systemctl 指令 服务名.service
指令:start/stop status enable/disable list-units
3. 免密登录
准备工作:
安装上传下载工具:yum install -y lrzsz
基本原理:两台电脑AB、A想免密访问B,A生成公钥和私钥,将公钥发给B,B将A的公钥导入到自己的认证文件中。
权限:.ssh目录的权限必须是700 ; .ssh/authorized_keys文件权限必须是600 (不懂往后看) 如:sudo chmod 700 /root/.ssh/
可以先实现虚拟机中 root 和 sam 两个用户的互联: 首先root用户ssh 测试连接sam: ssh sam@localhost 输入密码,连接成功! 1.root下:id_rsa id_rsa.pub known_hosts
root用户生成公私钥:ssh-keygen -t rsa -P ''
回车确定后,查看.ssh 目录内容,ls /root/.ssh/
等下id_rsa.pub 复制到 sam目录 .ssh及目录下文件是以上命令生成的,id_rsa 私钥 id_rsa.pub 公钥 known_hosts 访问过root用户的计算机的信息 2.同样可以在sam用户下生成公私钥
我们把root下的 id_rsa.pub 追加到sam .ssh 目录下的 authorized_keys
传送文件: scp -p ~/.ssh/id_rsa.pub sam@localhost:~/.ssh/root_localhost.pub
追加: cat root_localhost.pub >> authorized_keys
先登录到sam用户,然后对 authorized_keys 赋权限 600 chmod 600 ~/.ssh/authorized_keys 测试一下,,root用户下访问sam用户,就可以免密啦! 同样的,我们还可以自登陆免密,即 root/sam用户自己ssh 自己,免密 如,root下, ssh root@localhost
方法一样,只需将id_rsa.pub 追加到authorized_keys中
一定要:
chmod 700 /root/.ssh/ chmod 600 /root/.ssh/authorized_keys 追加:
常用修改权限的命令:
sudo chmod 600 ××× (只有所有者有读和写的权限)
sudo chmod 644 ××× (所有者有读和写的权限,组用户只有读的权限)
sudo chmod 700 ××× (只有所有者有读和写以及执行的权限)
sudo chmod 666 ××× (每个人都有读和写的权限)
sudo chmod 777 ××× (每个人都有读和写以及执行的权限)
3.windows 免密登录linux虚拟机
有了以上的铺垫,windows无非要生成秘钥,如何生成秘钥,下载github客户端,然后配置HOME用户变量和Path系统变量
path变量中添加:C:\Users\Administrator\AppData\Local\GitHub\PortableGit_f02737a78695063deace08e96d5042710d3e32db\usr\bin 可以看gitshell路径,找到ssh_keygen命令的目录,配置进去
HOME用户变量: C:\Users\Administrator
然后按上面方法就ok啦!
xshell 终端工具上传文件命令: rz
linux系统的安全小知识的更多相关文章
- linux系统下的权限知识梳理
下面对linux系统下的有关权限操作命令进行了梳理总结,并配合简单实例进行说明.linux中除了常见的读(r).写(w).执行(x)权限以外,还有其他的一些特殊或隐藏权限,熟练掌握这些权限知识的使用, ...
- 服务器Linux系统安全维护基础知识介绍
事先规划好Linux操作系统的分区 Linux操作系统的分区规划跟微软操作系统的分区规划不同.后者分区规划对于其性能的影响很小.但是Linux操作系统的分区规划则不同,其对服务器的性能影响很大.其实我 ...
- Linux系统状态监控小工具 - Linux Dash
Linux Dash是一个简单易用的Linux系统状态监控工具,项目地址:https://github.com/afaqurk/linux-dash 1.安装Apache服务: [root@local ...
- Linux 系统及编程相关知识总汇
Linux C function() 参考手册 STL 学习文档 Linux内核
- linux ssh登录的小知识
查看服务器的各个端口: # netstat -tulnp 或者 #netstat -tnip 筛选在后面添加 |grep *** 准许root登录 #vi /etc/ssh/sshd_config 找 ...
- linux下oracle调试小知识
1.oracle 安装下的/u01/diag/rdbms/orcl/HOF/incident目录下是什么文件?答:每当一个错误发生的时候,oracle会创建一个incident,并且分配一个INCID ...
- linux 协议栈 实现--编码小知识分析
unlikely 以及likely 作用: rcu_read_lock 以及rcu_read_unlock 作用: rcu_dereference .rcu_dereference_protecte ...
- linux系统编程之管道(三)
今天继续研究管道的内容,这次主要是研究一下命名管道,以及与之前学过的匿名管道的区别,话不多说,进入正题: 所以说,我们要知道命名管道的作用,可以进行毫无关系的两个进程间进行通讯,这是匿名管道所无法实现 ...
- Linux小知识:rm -rf/*会将系统全部删除吗
Linux小知识:rm -rf/*会将系统全部删除吗 本文是学习笔记,视频地址为:https://www.bilibili.com/video/av62839850 执行上面的命令并不会删除所有内容( ...
随机推荐
- android activity生命周期的一张经典图片
图片来自http://blog.csdn.net/android_tutor/article/details/5772285 onpause只有弹出的窗体是Activity的时候才会触发,并非是通过焦 ...
- codeforces educational round25
A #include<bits/stdc++.h> using namespace std; typedef long long ll; int main(){ ; string s; c ...
- Learning Python 002 print() 和 input()
Python print() 和 input() print()函数 print()函数可以向终端中输入指定的内容. 输出当个字符串 .py文件中,输入下面的代码,并保存: print('hello ...
- mahout过滤推荐结果 Recommender.recommend(long userID, int howMany, IDRescorer rescorer)
Recommender.recommend(uid, RECOMMENDER_NUM, rescorer); Recommender.recommend(long userID, int howMan ...
- 8、泛型程序设计与c++标准模板库4.标准c++库中的算法
标准c++算法是通过迭代器和模板来实现的,其实算法本身就是一种函数模板. 算法从迭代器那里获得一个元素,而迭代器则知道一个元素在容器中的什么位置.迭代器查找元素的位置并将这些信息提供给算法以便算法能够 ...
- 数据访问层DAL
我们已经根据设计好的pdm文件生成数据库,下面我们一起完成数据库访问层需要的工作 在dal类库上点击右键,添加,新建项 选择“ADO.NET实体数据模型”,会自动命名“Model1” 选择“来自数据库 ...
- Enigma模拟-Python
设计思想 Enigma机的机械结构: 键盘:加密人员通过键盘进行输入 转子:Enigma机上一般装有至少3个转轮.每个转轮有代表26个字母的触头和触点,触点和触头在转轮内部有导线相连(一个转轮相当于一 ...
- C++基础之预处理和语句
(1)C++语言源程序中可以使用一些预处理中的编译命令,这些命令在程序被正常编译之前执行,被称为预处理命令,这些命令所实现的功能被称为预处理功能(2)常用的预处理命令有文件包含命令.宏定义命令和条件编 ...
- jzoj3208. 【JSOI2013】编程作业(kmp)
题面 Description Will相信,很多同学都有过这样的经历:大牛已经写好了编程作业,而作为菜鸟的自己不会写怎么办呢?拿大牛的代码抄一下嘛!但是提交一模一样的作业是不是不太好?于是就改一改变量 ...
- android--系统路径获取
Environment 常用方法: * 方法:getDataDirectory()解释:返回 File ,获取 Android 数据目录.* 方法:getDownloadCacheDirectory( ...