windows服務端的默認遠程管理端口是3389,管理員用戶是administrator,普通用戶是guest。Linux的管理用戶是root,普通用戶默認有很多個,遠程連接默認端口是22。
修改配置文件/etc/ssh/sshd_config,13行Port 22(默認端口22),改為Port 52113(范圍0——65535);15行ListenAddress 0.0.0.0 (監聽ip地址),改為ListenAddress 192.168.131.1;43行PermitRootLogion yes(root用戶遠程連接),改為PermitRootLogion no;122行UseDNS yes(DNS解析),改為UseDNS no;GSSAPIAuthentication yes(SSH連接慢),改為GSSAPIAuthentication no;
cat –n:查看行號
vim à:set nu à顯示行號
diff比較2個文件的不同之處。
[root@oldboy66 ssh]# diff sshd_config sshd_config.oldboy.20161204
vimdiff以高亮方式比較2個文件的不同之處。
[root@oldboy66 ssh]# vimdiff sshd_config sshd_config.oldboy.20161204
sed替換:
重啟生效:/etc/init.d/sshd restart(可能影響用戶)或/etc/init.d/sshd reload(平滑重啟)。
查看端口:
netstat -lntup|grep sshd
管理sudo命令:
visudo或vi /etc/sudoers,visudo更好。vi命令模式直接輸入行數+gg到固定的行數,顯示行號:set nu,yy(復制)+p(粘貼)復制當前行到下一行,shift+a到結尾處於編輯狀態。
98+gg: 98 root ALL=(ALL) ALL
給oldboy授予root權限:
oldboy ALL=(ALL) ALL
oldboy ALL=(ALL) NOPASSWD:ALL(不提示輸入密碼)
用oldboy添加一個用戶oldgirl:
給oldboy授予固定權限:
oldboy ALL=(ALL) /bin/touch,/usr/sbin/useradd
注意:需要命令的全路徑,查看命令全路徑which 命令,例如:
find查找:find / -type f -name "useradd"
whereis查找:whereis -b useradd
locate查找:locate useradd
環境變量:
PATH系統路徑變量,執行ls、cp等非內置命令時,系統會查找PATH裡對應的路徑是否存在,如果沒有就報告找不到該命令。當執行which cp來查看命令所在路徑的時候,也就是從PATH變量去搜索。
PATH變量的臨時修改 export PATH="/tmp:$PATH",永久生效將命令放到/etc/profile下,使用source /etc/profile 使得立刻生效。
查看當前字符編碼:
操作前先進行備份:cp /etc/sysconfig/i18n /etc/sysconfig/i18n.oldboy.20161205
注意:客戶端字符集需改為UTF-8。
顯示時間:date
修改時間:date –s "時間" àhwclock
顯示日歷:cal
同步互聯網時間:
定時任務執行同步:
下面三種方法是等價的:
/dev/null 空設備(黑洞)
錯誤和正確都輸出到/dev/null:
1、1>/dev/null 2>/dev/null
2、1>/dev/null 2&1
3、&>/dev/null
小規模時間同步架構:
大規模時間同步架構:
命令如下,注意此時的配置僅臨時生效。
把配置參數放入配置文件,使得永久生效。
TMOUT=10:連接的超時時間控制變量。
HISTSIZE=5:命令行的歷史記錄數量變量。
HISTFILESIZE=10:歷史記錄文件的命令行數量變量(~/.bash_history)。
歷史記錄清空:history -c。
刪除指定歷史記錄:history -d 10(刪除10號歷史記錄)。
文件描述符的概念
1、表示形式為整數數字(0——65535)。
2、進程使用的時候會占用文件描述符(標識打開的文件)。
查看默認文件描述符
3、調整文件描述符
方法一:
直接把ulimit -SHn 65535命令加入到/etc/rc.local,然後每次開機啟動的時候生效。
寫入rc.local:
方法二:
在/etc/sercurity/limits.conf裡面配置。
vim編輯:shift+g切換到文件結尾
優化參數:
執行生效:sysctl -p
查看網絡狀態:netstat -an
控制Linux顯示版本信息的文件
清空這個兩個文件就可以了。
命令:
解除鎖定:chattr -i
為grub菜單加密碼的目的是防止他人修改grub做內核等啟動設置。
1、先用/sbin/grub-md5-crypt產生一個MD5密碼串。
2、修改grub.conf文件添加
password --md5 $1$T2zU4/$KmlABHIkQGczWjh1DdwWU.。
注意:password要加在splashimage和title之間,否則可能不生效。
命令:
首先查看相關軟件的版本號
執行升級已知漏洞的軟件版本到最新。
查看當前yum源
配置阿裡雲的yum源
wget:下載,wget http://url;-O:下載到指定路徑並改名;--spider:爬蟲,檢查網站是不是好的,不會下載只是檢查;-T(--timeout):指定超時時間(--timeout=seconds);--tries:指定重試的次數(--tries=2);-q(--quiet):後台下載,關閉輸出;
總結:
1、不用root管理,以普通用戶的名義通過sudo授權管理。
2、更改默認的遠程連接SSH服務端口,禁止root用戶遠程連接,甚至要更改為只監聽內網IP。
3、定時自動更新服務器時間,使其和互聯網時間同步。
4、配置yum更新域,從國內更新源下載安裝軟件包。
5、關閉SELinux及iptables(在生產場景中,如果有外部IP一般要打開)
6、調整文件描述符的數量,進程及文件的打開都會消耗文件描述符。
7、定時自動清理郵件目錄垃圾文件,防止inodes節點被占滿。
8、精簡並保留必要的開機自啟動服務(如crond、sshd、network、rsyslog、stsstat)。
9、Linux內核參數優化/etc/sysctl.conf,執行sysctl -p 生效。
10、更改字符集,使其支持中文。
11、鎖定關鍵系統文件如/etc/passwd、/etc/shadow、/etc/group、/etc/gshadow、/etc/inittab,處理後把chattr、lasttr改名。
12、清空/etc/issue、/etc/issue.net,去除系統及內核版本登錄前的屏幕顯示。
13、清楚多余的系統虛擬賬號。
14、為grub菜單加密碼。
15、禁止被ping。
16、升級漏洞軟件。
less:按屏(空格、page up/page down)或按行(回車)查看文件。
more:按屏(空格)或按行(回車)查看文件,不能向上翻。
linux只有一個頂點/(根),其他所有目錄都在根下。根下面的所有目錄是一個有層次的樹狀結構,像一顆倒掛著的大樹。
tree:顯示目錄結構,-L:指定顯示多少層;-d:只顯示目錄。
linux的目錄結構和磁盤分區是分離的,可以自由組合。
/
├── bin àEssential command binaries
├── boot àStatic files of the boot loader
├── dev àDevice files
├── etc àHost-specific system configuration
├── home àUser home directories(optional)
├── lib àEssential shared libraries and kernel modules
├── lib64
├── lost+found
├── media
├── mnt àMount point for mounting a filesystem temporarily
├── oldboy
├── opt àAdd-on application software packages
├── proc à進程信息及內核信息(cpu、硬盤分區、內存信息等)
├── root àHome directory for the root user(optional)
├── sbin àEssential system binaries
├── selinux
├── srv
├── sys
├── tmp àTemporary files
├── usr àSecondary hierarchy
└── var àVariable data
cat /proc/meminfo à內存信息
cat /proc/cpuinfo àcpu信息
cat /proc/mounts à掛載信息
cat /proc/loadavg à負載(系統繁忙程度)
小結:
1、linux系統的所有目錄時一個有層次的倒著的樹狀目錄結構,/根是所有目錄的起點。
2、不同的目錄數據可以跨越不同的磁盤分區或不同的磁盤設備。
/dev/ 設備目錄
/etc/ 系統配置即服務配置文件、啟動命令的目錄
/proc 顯示內核及進程信息的虛擬文件系統
/tmp 臨時文件目錄
/home 普通用戶家目錄
/root 超級管理員的家目錄
/var 變化的目錄,一般是日志文件,cache的目錄
/usr 用戶程序及數據、幫助文件、二進制命令等的目錄
/bin、/sbin、/usr/sbin 用戶命令的目錄
IPADDR=10.0.0.7 #addr是IP地址
NETMASK=255.255.255.0 #子網掩碼,劃分網絡位和主機位10.0.0.0/24
GATEWAY=10.0.0.254 #網關地址,路由器的地址
修改配置生效命令:
ifup:啟動
ifdown:關閉
小結:
1、客戶端DNS可以在網卡配置文件裡設置(ifcfg-eth0)。
2、客戶端DNS也可以在/etc/resolv.conf裡設置。
3、網卡裡的設置DNS優先於/etc/resolv.conf。
對應windows的文件C:\Windows\System32\drivers\etc\hosts。
hosts在企業裡的作用:
1、開發、產品、測試等人員,用於通過正式的域名測試產品。
2、服務器之間的調用可以用域名(內部的DNS),方便遷移。
更改主機名:
1、vi /etc/sysconfig/network
2、hostname 主機名
同時修改。
fsck:磁盤檢查(不要檢查好磁盤),卸載的狀態
掛載方式:
1、命令掛載
mount -t ext4 -o noexec /dev/sda1 /mnt
2、/etc/fstab
測試手動掛載:
1、創建一個虛擬的塊設備。
dd if=/dev/zero of=/dev/sdb1 bs=4906 count=100
2、格式化
mkfs.ext4 /dev/sdb1
3、掛載
mount -t ext4 -o loop,noatime,noexec /dev/sda1 /mnt
4、查看
df -h
第一列掛載的設備可以是設備名或UUID、磁盤標簽。
fstab出問題,修復方式:
1、開機提示輸入密碼修復。
2、救援模式rescue修改/etc/fatab只讀狀態,mount -o rw,remount /。
讓一個程序開機啟動:
1、chkconfig(/etc/init.d/sshd)。
2、放入/etc/rc.local。
選擇建議:/etc/rc.local,工作中把/etc/rc.local作為服務器檔案文件,所有程序開機啟動放入/etc/rc.local並加注釋。
rc.local與fstab區別:rc.local在系統啟動完成最後加載。
NFS網絡文件系統掛載是,網卡還沒啟動,就已經加載fstab。(mount -t nfs 10.0.0.7:/data /mnt)
Linux啟動過程:
1、開機BIOS自檢
2、MBR引導
硬盤0柱面0磁盤1扇區的前446byte。
3、grub引導菜單
cat /etc/grub.conf
4、加載內核kernel
5、啟動init進程
ps -ef|grep init
visudo -c:檢查語法
yum remove tree -y:yum刪除(會刪除依賴,慎用)
http://xxxxxx/Linuxjc/1178628.html TechArticle