一、安全远程登陆
1、Linux系统的主机一般作为服务器,且可能假设在与我们很远的地方,且又可能是又主机虚拟化的出来的VPS,所以我们不能直接用键盘接入到主机接可以直接控制我们的Linux系统。所幸的是,我们可以通过ssh,来连入到我们Linux的shell.
2、Linux用户打开terminal ,Windows10用户打开cmd
3、ssh *用户@主机地址
4、Windows10版本以下的用户需要安装Xshell等其他应用程序使用ssh
5、ssh的用户指的是在主机地址对应的Linux系统中所存在的用户,比如root(根,最大权限)用户。
例子:
这样我们远程连入了我们的Linux.
二、下载包管理器
sudo yum install 对应的包
三、文件/目录操作
cat file:文件过长,则会滚屏
less a.txt:可以翻页:按f表示下一页,b表示返回上一页,j表示下一行,k表示上一行。
文件权限:可读(r )、可写(w)、可执行(x)。
文件权限设置:
每个文件和目录都是存在这3类权限属性的,第一类是关于用户所属者的权限,第二类是关于用户所属组的权限,第三类是关于除以上两类之外的用户的权限。这里我们可以使用ls -l查看
第一栏的内容:
总共有十个位置,第2-4位表示的是所属用户的权利这里是rw- ;-表示没有该权限。第5-7位,表示的是所属组的用户的权限。第8-10位表示的是除以上两种意外的用户的权限。权限优先选取最大--比如-rw-rw-rwx这该文件的所属人拥有的是rwx的权限。
如果某一个文件可以让所有人都有读写的权限,那么我们可以使用root权限去执行以下代码:
chmod o+r a.txt
取消读的指令可以使用chmod o-r a.txt
使用chmod我们应该注意到使用的格式为:
chmod[u(用户),g(组),o(其它)] [+(增加权限)-(减去权限)] [r(读取),w(写入),x(执行)]
我们同样可以使用chmod做赋予多权限操作:chmod u+rw
需要注意的是:只能给一类进行多权限赋予。chmod u+rw g+rw这个会执行错误。
四、日志管理
syslog是Linux 系统上管理日志的程序。
rsyslog也是Linux系统上管理日志的程序,它是syslog的升级版本,也就是说它比syslog的功能更强大。
1、rsyslog日志包括了:
什么服务:
讯息等级:
2、rsyslog配置与管理
安装rsyslog:sudo yum install rsyslog
打开rsyslog的配置文件/etc/rsyslog.conf这个文件,查看其中的内容:
可以找到几行的数据:
kern.* /dev/console
mail.* /dev/log/maillog等。(*作为通配符,表示说有的通讯等级)
这些信息其实就是记录服务、还有输入到的位置。
第一个内容也就是说内核发出的日志不管什么通信等级都会被写入到/dev/console中。
同理mail.* /dev/log/maillog则表示的是服务为mail的不管是什么通讯等级的日志,都将会被写到/dev/log/maillog
我们可以通过/etc/rsyslog.conf这个文件下的配置路径找到相关的日志对应存储位置。同样我们也能让“所有的信息”都额外写入到某一个文件去。
在rsyslog.conf中添加:*.info /var/log/admin.log保存配置。
systemctl restart rsyslog重启rsyslog服务查看最后一行,我们使用指令的日志也被写入到了这个admin.log中
五、配置服务器:
配置客户机:
关闭防火墙:
为了防止服务端的防火墙将我们从客户机发送的数据包给丢掉,这里直接将防火墙以及安全程序SELINUX关闭了。
systemctl stop firewalld
setenforce 0
检查:
向服务器发起一条user服务info等级的日志讯息(“halo world").
六、日志
引导日志:
/var/log/boot.log这个日志包含的是每次主机引导启动是加载的内容,由下图我们可以简单的了解到系统启动中会先启动屏幕,再加载简单的系统,之后去找到磁盘,再检查磁盘,最后在加载磁盘。。我们可以通过这个日志来了解到系统启动是加载设备的过程是否成功,从而单方面去排查设备故障。
信息日志:
/var/log/messages这个日志主要记录的是整体系统信息,其中也包含系统启动期间的日志。以下记录包括几段网络服务配置的改变。
安全日志:
/var/log/secure这个日志的作用是记录登入系统存取数据的文件,列如pop3,ssh,telnet,ftp等都会被记录。如下面的例子(左为客户机,右为服务器),这里我们用ssh访问服务机,输入错误密码,服务机则会记录我们连接以及输入错误的信息到日志,以及连接成功的信息同样被记录到这个日志中。
计划日志:
/var/log/cron这个日志文件是用来记录有crontab这个命令所执行的计划命令执行的记录。可以通过这个日志文件来判断crontab命令所指定的计划是否成功执行。通过这个日志我们可以看到主机是否存在自动执行的脚本命令。
最后一次登陆日志:
/var/log/lastlog这个日志里包含的是当前系统下的每个用户每次最后一次的登陆时间,但是 这个日志文件不是文本格式,是个二进制文件,这里需要通过lastlog这个指令读取内容并显示出来。日志信息如下。
登陆失败日志:
/var/log/btmp这个日志内容保留的是登陆失败的用户记录以及登陆方式,登陆地址,以及登陆时间。读取这个目录需要使用。命令lastb。下面,我们通过ssh登陆 失败一次,并登陆后查看日志的错误信息。
登陆成功日志;
/var/log/wtmp这个日志文件存储的是用户登陆成功后,用户名,用户登陆界面,以及登陆该用户的IP地址,以及存活时间。
该日志可以通过last命令查看。
当前登陆用户日志
/var/run/utmp这个文件里存储的是当前登陆的每个用户的信息。who、w、users等就需要访问这个日志文件。
who显示的是用户以及使用的终端,登陆时间以及登陆的ip。w中的信息比who信息更加详细,WHAT表示的是该用户执行的上一条命令。
通过users可以查看当前存在的用户。