linuxhost訪問
『壹』 linux環境下/etc/hosts文件詳解
hosts文件是linux系統中負責ip地址與域名快速解析的文件,以ASCII格式保存在/etc目錄下,文件名為hosts,不同的linux版本,文件也可能不同,比如Debian的對應文件是/etc/hostname。hosts文件包含了ip地址和主機名之間的映射,包括主機名的別名,在沒有域名伺服器的情況下,系統上的所有網路程序都通過查詢該文件來解析對應於某個主機名的ip地址,否則就需要使用DNS服務程序來解決。通常可以將常用的域名和ip地址映射加入到hosts文件中,實現快速方便的訪問
優先順序:dns緩存>hosts>dns服務
hosts:the static table lookup for host name(主機名查詢靜態表)
hosts文件可以配置主機ip與對應的主機名,在區域網或者internet上,每台主機都有自己的ip地址,它區分開每台主機,並且可以通過ip地址進行通訊。但是ip地址不方便記憶,所以出現了域名(比如 www..com )。在一個區域網中,每台機器都有一個主機名,用於區分主機,便於相互訪問
查看linux中的hosts文件
通過這個文件可以看到哪些域名對應哪些ip,哪些主機名對應哪些ip,通常情況下這個文件首先記錄了本機的ip和主機名
一般情況下hosts文件的每行為一個主機,每行由三部分組成,每個部分由空格隔開,格式如下
第一部分:網路ip地址
第二部分:主機名或域名
第三部分:主機別名
當然每行也可以是兩部分,即網路ip地址和主機名。主機名(hostname)和域名(Domain)的區別在於,主機名通常在區域網內使用,通過hosts文件,主機名就被解析到對應ip。域名通常在internet上使用,但如果本機不想使用internet上的域名解析,這時就可以更改hosts文件,加入自己的域名解析。
參考1: Linux操作系統下/etc/hosts文件配置方法
參考2: Linux修改/etc/hosts
『貳』 如何在linux上遠程訪問本地的mysql
1、查該伺服器是否能實現遠程登錄Mysql,看是否是因為沒有許可權。
2、檢查Linux上Mysql是否啟動。
3、若啟動登錄Mysql,若未啟動,執行service mysqld start。
4、賦許可權,%表示所有ip可訪問,也可以改成自己本地的IP地址,密碼改為linux上mysql的密碼。
5、本地為了方便被訪問,可先關閉自己的防火牆。
『叄』 linux中安裝mysql,如何開啟遠程訪問許可權
1、登陸mysql
mysql -u root -p
2、改表法:修改mysql庫的user表,將host項,從localhost改為%。%這里表示的是允許任意host訪問,如果只允許某一個ip訪問,則可改為相應的ip,比如可以將localhost改為192.168.1.123,這表示只允許區域網的192.168.1.123這個ip遠程訪問mysql。
mysql> USE MYSQL;mysql> UPDATE USER SET host = '%' WHERE user = 'root';
3、授權法:
mysql> USE MYSQL;mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION //賦予任何主機訪問以及修改所有數據的許可權 例如,你想root用戶使用root從任何主機連接到mysql伺服器的話。GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;如果你想允許用戶root從ip為192.168.1.123的主機連接到mysql伺服器,並使用root作為密碼GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.123'IDENTIFIED BY 'root' WITH GRANT OPTION;mysql> FLUSH PRIVILEGES //
『肆』 Linux中hosts.allow與hosts.deny
linux /etc目錄下有五個host開頭的文件 :host.conf hostname hosts hosts.allow hosts.deny。
1、host.conf 文件指定如何解析主機名,筆者的centos7的/etc/host.conf裡面是 multi on,即指定的主機可以有多個IP地址。
2、hosts.allow與hosts.deny這兩個配置文件控制外部IP對本機服務的訪問,hosts.allow控制可以訪問本機的IP地址,hosts.deny控制禁止訪問本機的IP。配置完成之後是實時生效的。
3、hostname是主機名,當你在命令行輸入hostname時返回的主機名,也是環境變數中命令行 prompt 顯示的主機名。
4、 hosts負責IP地址與域名快速解析的文件,包含了IP地址和主機名之間的映射,還包括主機名的別名。詳情參考筆者的文章-linux中/etc/hosts文件配置。
先來測試一下hosts.allow與hosts.deny這兩個配置文件設置ssh的連接。
hosts.deny中添加設置 sshd : ALL,再次使用ssh連接,會出現:ssh_exchange_identification: read: Connection reset 的錯誤,但是已經連接上的ssh是不會中斷的,說明 hosts.deny時在連接時查詢的配置文件。
然後在hosts.allow中添加設置sshd : 192.168.56.1,再次使用ssh可以成功連接。
在設置屏蔽所有ssh後,在單獨允許192.168.56.1這個ip地址,ssh是允許的,那麼就存在優先順序問題。優先順序為先檢查hosts.deny,再檢查hosts.allow。
兩個配置文件的格式如下:
服務進程名:主機列表:當規則匹配時可選的命令操作。
為了安全可以在hosts.deny文件中配置拒絕所有的訪問ALL:ALL,然後在hosts.allow文件中逐個開放訪問許可,增強安全性。
sshd可以換成其他服務進程名,比如httpd、telnetd等等。
『伍』 linux下,/etc/hosts文件有什麼用途
hosts文件的用途:將一些常用的網址域名與其對應的IP地址建立一個關聯「資料庫」,當用戶在瀏覽器中輸入一個需要登錄的網址時,系統會首先自動從Hosts文件中尋找對應的IP地址。
當建立dns伺服器的時候,或者要搭建本地網的時候就用的著了,跟windows下面的host文件是一樣的作用,而且可以用來屏蔽廣告和木馬。
一旦找到,系統會立即打開相應的網頁,如果沒有找到,則系統會將url提交到DNS伺服器進行IP地址解析,etc/host代表當前計算機主機名。
(5)linuxhost訪問擴展閱讀:
linux中的執行語句有:
1、[root@localhost~]#cat/etc/profile:檢查/etc/目錄下的profile文件內容。
2、[root@localhost~]#cat-b/etc/profile:檢查/etc/目錄下的profile內容,而且對非空白行進行編號,行號從1開端。
3、[root@localhost~]#cat-n/etc/profile:對/etc目錄中的profile的一切的行(包含空白行)進行編號輸出顯現。
4、[root@localhost~]#cat-E/etc/profile:檢查/etc/下的profile內容,而且在每行的結尾處附加$符號。
關於linux中[root@localhostroot]#第一、二個root,分別表示的意思如下:
root@localhostroot中第一個root表示當前登錄的為root賬戶,localhost是主機名稱。第二個root表示當前的目錄為root目錄,#表示當前為root許可權。
另外,root用戶的家目錄為/root,其他用戶通常為/home/用戶名,但可以改變。家目錄主要保存每個用戶的登錄信息,個人偏好及一些個人文件等。